diff options
Diffstat (limited to 'priv/static/packs/features')
42 files changed, 42 insertions, 42 deletions
diff --git a/priv/static/packs/features/account_gallery.js b/priv/static/packs/features/account_gallery.js index 31e6be9b3..bc11efcb5 100644 --- a/priv/static/packs/features/account_gallery.js +++ b/priv/static/packs/features/account_gallery.js @@ -1,2 +1,2 @@ -webpackJsonp([14],{149:function(e,t,o){"use strict";o.d(t,"a",function(){return m});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=o.n(f),h=o(6),m=(a=n=function(e){function t(){return r()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,o=e.visible;return s()("button",{className:"load-more",disabled:t||!o,style:{visibility:o?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(h.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(g.a.PureComponent),n.defaultProps={visible:!0},a)},150:function(e,t,o){"use strict";o.d(t,"a",function(){return h});var n=o(2),a=o.n(n),i=o(1),s=o.n(i),c=o(3),r=o.n(c),l=o(4),u=o.n(l),d=o(0),p=o.n(d),f=o(10),g=o.n(f),h=function(e){function t(){var o,n,a;s()(this,t);for(var i=arguments.length,c=Array(i),l=0;l<i;l++)c[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(c))),n.handleClick=function(){n.props.onClick()},a=o,r()(n,a)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,o=e.type,n=e.active,i=e.columnHeaderId,s="";return t&&(s=a()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),a()("h1",{className:g()("column-header",{active:n}),id:i||null},void 0,a()("button",{onClick:this.handleClick},void 0,s,o))},t}(p.a.PureComponent)},283:function(e,t,o){"use strict";function n(e){return function(t){t({type:i,account:e}),t(Object(a.d)("MUTE"))}}t.a=n;var a=(o(14),o(22),o(15),o(26)),i="MUTES_INIT_MODAL"},284:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n=o(2),a=o.n(n),i=o(1),s=o.n(i),c=o(3),r=o.n(c),l=o(4),u=o.n(l),d=o(34),p=o.n(d),f=o(0),g=o.n(f),h=o(150),m=o(90),v=o(35),b=function(e){function t(){var o,n,a;s()(this,t);for(var i=arguments.length,c=Array(i),l=0;l<i;l++)c[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(c))),n.handleHeaderClick=function(){var e=n.node.querySelector(".scrollable");e&&(n._interruptScrollAnimation=Object(m.b)(e))},n.handleScroll=p()(function(){void 0!==n._interruptScrollAnimation&&n._interruptScrollAnimation()},200),n.setRef=function(e){n.node=e},a=o,r()(n,a)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(m.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,o=e.icon,n=e.children,i=e.active,s=e.hideHeadingOnMobile,c=t&&(!s||s&&!Object(v.b)(window.innerWidth)),r=c&&t.replace(/ /g,"-"),l=c&&a()(h.a,{icon:o,active:i,type:t,onClick:this.handleHeaderClick,columnHeaderId:r});return g.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":r,className:"column",onScroll:this.handleScroll},l,n)},t}(g.a.PureComponent)},286:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=o.n(f),h=o(6),m=o(5),v=o.n(m),b=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=u()(this,e.call.apply(e,[this].concat(s))),n.handleClick=function(){window.history&&1===window.history.length?n.context.router.history.push("/"):n.context.router.history.goBack()},a=o,u()(n,a)}return p()(t,e),t.prototype.render=function(){return s()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,s()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),s()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(g.a.PureComponent),n.contextTypes={router:v.a.object},a)},815:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o.d(t,"default",function(){return F});var n,a,i,s,c,r,l=o(2),u=o.n(l),d=o(1),p=o.n(d),f=o(3),g=o.n(f),h=o(4),m=o.n(h),v=o(0),b=(o.n(v),o(9)),_=o(13),M=o.n(_),y=o(5),k=o.n(y),w=o(22),I=o(19),N=o(296),O=o(284),R=o(286),j=o(12),C=o.n(j),T=o(66),q=o(969),S=o(846),x=o(152),B=o(149),A=function(e,t){return{medias:Object(T.a)(e,t.params.accountId),isLoading:e.getIn(["timelines","account:"+t.params.accountId+":media","isLoading"]),hasMore:e.getIn(["timelines","account:"+t.params.accountId+":media","hasMore"])}},L=(a=n=function(e){function t(){var o,n,a;p()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=g()(this,e.call.apply(e,[this].concat(s))),n.handleLoadMore=function(){n.props.onLoadMore(n.props.maxId)},a=o,g()(n,a)}return m()(t,e),t.prototype.render=function(){return u()(B.a,{disabled:this.props.disabled,onLoadMore:this.handleLoadMore})},t}(C.a),n.propTypes={maxId:k.a.string,onLoadMore:k.a.func.isRequired},a),F=(i=Object(b.connect)(A))((r=c=function(e){function t(){var o,n,a;p()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=g()(this,e.call.apply(e,[this].concat(s))),n.handleScrollToBottom=function(){n.props.hasMore&&n.handleLoadMore(n.props.medias.last().getIn(["status","id"]))},n.handleScroll=function(e){var t=e.target,o=t.scrollTop;150>t.scrollHeight-o-t.clientHeight&&!n.props.isLoading&&n.handleScrollToBottom()},n.handleLoadMore=function(e){n.props.dispatch(Object(I.k)(n.props.params.accountId,{maxId:e}))},n.handleLoadOlder=function(e){e.preventDefault(),n.handleScrollToBottom()},a=o,g()(n,a)}return m()(t,e),t.prototype.componentDidMount=function(){this.props.dispatch(Object(w.u)(this.props.params.accountId)),this.props.dispatch(Object(I.k)(this.props.params.accountId))},t.prototype.componentWillReceiveProps=function(e){e.params.accountId!==this.props.params.accountId&&e.params.accountId&&(this.props.dispatch(Object(w.u)(e.params.accountId)),this.props.dispatch(Object(I.k)(this.props.params.accountId)))},t.prototype.render=function(){var e=this.props,t=e.medias,o=e.isLoading,n=e.hasMore,a=null;return!t&&o?u()(O.a,{},void 0,u()(N.a,{})):(!o&&t.size>0&&n&&(a=u()(B.a,{onClick:this.handleLoadOlder})),u()(O.a,{},void 0,u()(R.a,{}),u()(x.a,{scrollKey:"account_gallery"},void 0,u()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,u()(S.a,{accountId:this.props.params.accountId}),u()("div",{className:"account-gallery__container"},void 0,t.map(function(e,o){return null===e?u()(L,{maxId:o>0?t.getIn(o-1,"id"):null},"more:"+t.getIn(o+1,"id")):u()(q.a,{media:e},e.get("id"))}),a)))))},t}(C.a),c.propTypes={params:k.a.object.isRequired,dispatch:k.a.func.isRequired,medias:M.a.list.isRequired,isLoading:k.a.bool,hasMore:k.a.bool},s=r))||s},845:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),s=(o.n(i),o(6)),c=function(){return a()("div",{className:"regeneration-indicator missing-indicator"},void 0,a()("div",{},void 0,a()("div",{className:"regeneration-indicator__label"},void 0,a()(s.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),a()(s.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=c},846:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),s=(o.n(i),o(9)),c=o(66),r=o(847),l=o(22),u=o(18),d=o(283),p=o(151),f=o(26),g=o(6),h=o(11),m=Object(g.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),v=function(){var e=Object(c.c)();return function(t,o){var n=o.accountId;return{account:e(t,n)}}},b=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?h.j?Object(f.d)("CONFIRM",{message:a()(g.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(m.unfollowConfirm),onConfirm:function(){return e(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(f.d)("CONFIRM",{message:a()(g.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(l.q)(t.get("id")))}}))},onMention:function(t,o){e(Object(u.R)(t,o))},onDirect:function(t,o){e(Object(u.N)(t,o))},onReblogToggle:function(t){e(t.getIn(["relationship","showing_reblogs"])?Object(l.z)(t.get("id"),!1):Object(l.z)(t.get("id"),!0))},onReport:function(t){e(Object(p.k)(t))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(d.a)(t))}}};t.a=Object(g.g)(Object(s.connect)(v,b)(r.a))},847:function(e,t,o){"use strict";o.d(t,"a",function(){return O});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=(o.n(f),o(13)),h=o.n(g),m=o(5),v=o.n(m),b=o(848),_=o(849),M=o(845),y=o(12),k=o.n(y),w=o(850),I=o(6),N=o(44),O=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=u()(this,e.call.apply(e,[this].concat(s))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMention=function(){n.props.onMention(n.props.account,n.context.router.history)},n.handleDirect=function(){n.props.onDirect(n.props.account,n.context.router.history)},n.handleReport=function(){n.props.onReport(n.props.account)},n.handleReblogToggle=function(){n.props.onReblogToggle(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},a=o,u()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.hideTabs;return null===t?s()(M.a,{}):s()("div",{className:"account-timeline__header"},void 0,t.get("moved")&&s()(w.a,{from:t,to:t.get("moved")}),s()(b.a,{account:t,onFollow:this.handleFollow,onBlock:this.handleBlock}),s()(_.a,{account:t,onBlock:this.handleBlock,onMention:this.handleMention,onDirect:this.handleDirect,onReblogToggle:this.handleReblogToggle,onReport:this.handleReport,onMute:this.handleMute}),!o&&s()("div",{className:"account__section-headline"},void 0,s()(N.c,{exact:!0,to:"/accounts/"+t.get("id")},void 0,s()(I.b,{id:"account.posts",defaultMessage:"Toots"})),s()(N.c,{exact:!0,to:"/accounts/"+t.get("id")+"/with_replies"},void 0,s()(I.b,{id:"account.posts_with_replies",defaultMessage:"Toots and replies"})),s()(N.c,{exact:!0,to:"/accounts/"+t.get("id")+"/media"},void 0,s()(I.b,{id:"account.media",defaultMessage:"Media"}))))},t}(k.a),n.propTypes={account:h.a.map,onFollow:v.a.func.isRequired,onBlock:v.a.func.isRequired,onMention:v.a.func.isRequired,onDirect:v.a.func.isRequired,onReblogToggle:v.a.func.isRequired,onReport:v.a.func.isRequired,onMute:v.a.func.isRequired,hideTabs:v.a.bool},n.contextTypes={router:v.a.object},a)},848:function(e,t,o){"use strict";o.d(t,"a",function(){return q});var n,a,i,s,c,r=o(2),l=o.n(r),u=o(1),d=o.n(u),p=o(3),f=o.n(p),g=o(4),h=o.n(g),m=o(0),v=(o.n(m),o(13)),b=o.n(v),_=o(5),M=o.n(_),y=o(6),k=o(23),w=o(27),I=(o.n(w),o(12)),N=o.n(I),O=o(11),R=o(10),j=o.n(R),C=Object(y.f)({unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},follow:{id:"account.follow",defaultMessage:"Follow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval. Click to cancel follow request"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"}}),T=(a=n=function(e){function t(){var o,n,a;d()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=f()(this,e.call.apply(e,[this].concat(s))),n.state={isHovered:!1},n.handleMouseOver=function(){n.state.isHovered||n.setState({isHovered:!0})},n.handleMouseOut=function(){n.state.isHovered&&n.setState({isHovered:!1})},a=o,f()(n,a)}return h()(t,e),t.prototype.render=function(){var e=this.props.account,t=this.state.isHovered;return l()("a",{href:e.get("url"),className:"account__header__avatar",role:"presentation",target:"_blank",rel:"noopener",style:{backgroundImage:"url("+(O.a||t?e.get("avatar"):e.get("avatar_static"))+")"},onMouseOver:this.handleMouseOver,onMouseOut:this.handleMouseOut,onFocus:this.handleMouseOver,onBlur:this.handleMouseOut},void 0,l()("span",{style:{display:"none"}},void 0,e.get("acct")))},t}(N.a),n.propTypes={account:b.a.map.isRequired},a),q=Object(y.g)((c=s=function(e){function t(){return d()(this,t),f()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl;if(!t)return null;var n="",a="",i="",s="";O.g!==t.get("id")&&t.getIn(["relationship","followed_by"])?n=l()("span",{className:"account--follows-info"},void 0,l()(y.b,{id:"account.follows_you",defaultMessage:"Follows you"})):O.g!==t.get("id")&&t.getIn(["relationship","blocking"])&&(n=l()("span",{className:"account--follows-info"},void 0,l()(y.b,{id:"account.blocked",defaultMessage:"Blocked"}))),O.g!==t.get("id")&&t.getIn(["relationship","muting"])?a=l()("span",{className:"account--muting-info"},void 0,l()(y.b,{id:"account.muted",defaultMessage:"Muted"})):O.g!==t.get("id")&&t.getIn(["relationship","domain_blocking"])&&(a=l()("span",{className:"account--muting-info"},void 0,l()(y.b,{id:"account.domain_blocked",defaultMessage:"Domain hidden"}))),O.g!==t.get("id")&&(t.getIn(["relationship","requested"])?i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,active:!0,icon:"hourglass",title:o.formatMessage(C.requested),onClick:this.props.onFollow})):t.getIn(["relationship","blocking"])?t.getIn(["relationship","blocking"])&&(i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:"unlock-alt",title:o.formatMessage(C.unblock,{name:t.get("username")}),onClick:this.props.onBlock}))):i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:t.getIn(["relationship","following"])?"user-times":"user-plus",active:t.getIn(["relationship","following"]),title:o.formatMessage(t.getIn(["relationship","following"])?C.unfollow:C.follow),onClick:this.props.onFollow}))),t.get("moved")&&!t.getIn(["relationship","following"])&&(i=""),t.get("locked")&&(s=l()("i",{className:"fa fa-lock"}));var c={__html:t.get("note_emojified")},r={__html:t.get("display_name_html")};return l()("div",{className:j()("account__header",{inactive:!!t.get("moved")}),style:{backgroundImage:"url("+t.get("header")+")"}},void 0,l()("div",{},void 0,l()(T,{account:t}),l()("span",{className:"account__header__display-name",dangerouslySetInnerHTML:r}),l()("span",{className:"account__header__username"},void 0,"@",t.get("acct")," ",s),l()("div",{className:"account__header__content",dangerouslySetInnerHTML:c}),n,a,i))},t}(N.a),s.propTypes={account:b.a.map,onFollow:M.a.func.isRequired,onBlock:M.a.func.isRequired,intl:M.a.object.isRequired},i=c))||i},849:function(e,t,o){"use strict";o.d(t,"a",function(){return _});var n,a=o(2),i=o.n(a),s=o(1),c=o.n(s),r=o(3),l=o.n(r),u=o(4),d=o.n(u),p=o(0),f=o.n(p),g=o(299),h=o(44),m=o(6),v=o(11),b=Object(m.f)({mention:{id:"account.mention",defaultMessage:"Mention @{name}"},direct:{id:"account.direct",defaultMessage:"Direct message @{name}"},edit_profile:{id:"account.edit_profile",defaultMessage:"Edit profile"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},block:{id:"account.block",defaultMessage:"Block @{name}"},follow:{id:"account.follow",defaultMessage:"Follow"},report:{id:"account.report",defaultMessage:"Report @{name}"},share:{id:"account.share",defaultMessage:"Share @{name}'s profile"},media:{id:"account.media",defaultMessage:"Media"},hideReblogs:{id:"account.hide_reblogs",defaultMessage:"Hide boosts from @{name}"},showReblogs:{id:"account.show_reblogs",defaultMessage:"Show boosts from @{name}"}}),_=Object(m.g)(n=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return o=n=l()(this,e.call.apply(e,[this].concat(s))),n.handleShare=function(){navigator.share({url:n.props.account.get("url")})},a=o,l()(n,a)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=[],a="";return n.push({text:o.formatMessage(b.mention,{name:t.get("username")}),action:this.props.onMention}),n.push({text:o.formatMessage(b.direct,{name:t.get("username")}),action:this.props.onDirect}),"share"in navigator&&n.push({text:o.formatMessage(b.share,{name:t.get("username")}),action:this.handleShare}),n.push(null),t.get("id")===v.g?n.push({text:o.formatMessage(b.edit_profile),href:"/settings/profile"}):(t.getIn(["relationship","following"])&&(t.getIn(["relationship","showing_reblogs"])?n.push({text:o.formatMessage(b.hideReblogs,{name:t.get("username")}),action:this.props.onReblogToggle}):n.push({text:o.formatMessage(b.showReblogs,{name:t.get("username")}),action:this.props.onReblogToggle})),t.getIn(["relationship","blocking"])?n.push({text:o.formatMessage(b.unblock,{name:t.get("username")}),action:this.props.onBlock}):n.push({text:o.formatMessage(b.block,{name:t.get("username")}),action:this.props.onBlock}),n.push({text:o.formatMessage(b.report,{name:t.get("username")}),action:this.props.onReport})),t.get("acct")!==t.get("username")&&(a=i()("div",{className:"account__disclaimer"},void 0,i()(m.b,{id:"account.disclaimer_full",defaultMessage:"Information below may reflect the user's profile incompletely."})," ",i()("a",{target:"_blank",rel:"noopener",href:t.get("url")},void 0,i()(m.b,{id:"account.view_full_profile",defaultMessage:"View full profile"}))),n.push(null)),i()("div",{},void 0,a,i()("div",{className:"account__action-bar"},void 0,i()("div",{className:"account__action-bar-dropdown"},void 0,i()(g.a,{items:n,icon:"bars",size:24,direction:"right"})),i()("div",{className:"account__action-bar-links"},void 0,i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")},void 0,i()("span",{},void 0,i()(m.b,{id:"account.posts",defaultMessage:"Toots"})),i()("strong",{},void 0,i()(m.c,{value:t.get("statuses_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/following"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.follows",defaultMessage:"Follows"})),i()("strong",{},void 0,i()(m.c,{value:t.get("following_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/followers"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.followers",defaultMessage:"Followers"})),i()("strong",{},void 0,i()(m.c,{value:t.get("followers_count")}))))))},t}(f.a.PureComponent))||n},850:function(e,t,o){"use strict";o.d(t,"a",function(){return w});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=(o.n(f),o(5)),h=o.n(g),m=o(13),v=o.n(m),b=o(6),_=o(12),M=o.n(_),y=o(301),k=o(55),w=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=u()(this,e.call.apply(e,[this].concat(s))),n.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),n.context.router.history.push("/accounts/"+n.props.to.get("id"))),e.stopPropagation()},a=o,u()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.from,o=e.to,n={__html:t.get("display_name_html")};return s()("div",{className:"account__moved-note"},void 0,s()("div",{className:"account__moved-note__message"},void 0,s()("div",{className:"account__moved-note__icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-suitcase account__moved-note__icon"})),s()(b.b,{id:"account.moved_to",defaultMessage:"{name} has moved to:",values:{name:s()("bdi",{},void 0,s()("strong",{dangerouslySetInnerHTML:n}))}})),s()("a",{href:o.get("url"),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,s()("div",{className:"detailed-status__display-avatar"},void 0,s()(y.a,{account:o,friend:t})),s()(k.a,{account:o})))},t}(M.a),n.contextTypes={router:h.a.object},n.propTypes={from:v.a.map.isRequired,to:v.a.map.isRequired},a)},969:function(e,t,o){"use strict";o.d(t,"a",function(){return M});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=(o.n(f),o(13)),h=o.n(g),m=o(12),v=o.n(m),b=o(295),_=o(11),M=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=u()(this,e.call.apply(e,[this].concat(s))),n.state={visible:!n.props.media.getIn(["status","sensitive"])||_.f},n.handleClick=function(){return!n.state.visible&&(n.setState({visible:!0}),!0)},a=o,u()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props.media,t=this.state.visible,o=e.get("status"),n=e.getIn(["meta","focus","x"]),a=e.getIn(["meta","focus","y"]),i=100*(n/2+.5),c=100*(a/-2+.5),r={},l=void 0,u=void 0;return"gifv"===e.get("type")&&(l=s()("span",{className:"media-gallery__gifv__label"},void 0,"GIF")),t?(r.backgroundImage="url("+e.get("preview_url")+")",r.backgroundPosition=i+"% "+c+"%"):u=s()("span",{className:"account-gallery__item__icons"},void 0,s()("i",{className:"fa fa-eye-slash"})),s()("div",{className:"account-gallery__item"},void 0,s()(b.a,{to:"/statuses/"+o.get("id"),href:o.get("url"),style:r,onInterceptClick:this.handleClick},void 0,u,l))},t}(v.a),n.propTypes={media:h.a.map.isRequired},a)}}); +webpackJsonp([16],{149:function(e,t,o){"use strict";o.d(t,"a",function(){return m});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=o.n(f),h=o(6),m=(a=n=function(e){function t(){return r()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,o=e.visible;return s()("button",{className:"load-more",disabled:t||!o,style:{visibility:o?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(h.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(g.a.PureComponent),n.defaultProps={visible:!0},a)},150:function(e,t,o){"use strict";o.d(t,"a",function(){return h});var n=o(2),a=o.n(n),i=o(1),s=o.n(i),c=o(3),r=o.n(c),l=o(4),u=o.n(l),d=o(0),p=o.n(d),f=o(10),g=o.n(f),h=function(e){function t(){var o,n,a;s()(this,t);for(var i=arguments.length,c=Array(i),l=0;l<i;l++)c[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(c))),n.handleClick=function(){n.props.onClick()},a=o,r()(n,a)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,o=e.type,n=e.active,i=e.columnHeaderId,s="";return t&&(s=a()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),a()("h1",{className:g()("column-header",{active:n}),id:i||null},void 0,a()("button",{onClick:this.handleClick},void 0,s,o))},t}(p.a.PureComponent)},282:function(e,t,o){"use strict";function n(e){return function(t){t({type:i,account:e}),t(Object(a.d)("MUTE"))}}t.a=n;var a=(o(14),o(22),o(15),o(26)),i="MUTES_INIT_MODAL"},283:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n=o(2),a=o.n(n),i=o(1),s=o.n(i),c=o(3),r=o.n(c),l=o(4),u=o.n(l),d=o(34),p=o.n(d),f=o(0),g=o.n(f),h=o(150),m=o(90),v=o(35),b=function(e){function t(){var o,n,a;s()(this,t);for(var i=arguments.length,c=Array(i),l=0;l<i;l++)c[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(c))),n.handleHeaderClick=function(){var e=n.node.querySelector(".scrollable");e&&(n._interruptScrollAnimation=Object(m.b)(e))},n.handleScroll=p()(function(){void 0!==n._interruptScrollAnimation&&n._interruptScrollAnimation()},200),n.setRef=function(e){n.node=e},a=o,r()(n,a)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(m.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,o=e.icon,n=e.children,i=e.active,s=e.hideHeadingOnMobile,c=t&&(!s||s&&!Object(v.b)(window.innerWidth)),r=c&&t.replace(/ /g,"-"),l=c&&a()(h.a,{icon:o,active:i,type:t,onClick:this.handleHeaderClick,columnHeaderId:r});return g.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":r,className:"column",onScroll:this.handleScroll},l,n)},t}(g.a.PureComponent)},286:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=o.n(f),h=o(6),m=o(5),v=o.n(m),b=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=u()(this,e.call.apply(e,[this].concat(s))),n.handleClick=function(){window.history&&1===window.history.length?n.context.router.history.push("/"):n.context.router.history.goBack()},a=o,u()(n,a)}return p()(t,e),t.prototype.render=function(){return s()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,s()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),s()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(g.a.PureComponent),n.contextTypes={router:v.a.object},a)},814:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o.d(t,"default",function(){return F});var n,a,i,s,c,r,l=o(2),u=o.n(l),d=o(1),p=o.n(d),f=o(3),g=o.n(f),h=o(4),m=o.n(h),v=o(0),b=(o.n(v),o(9)),_=o(13),M=o.n(_),y=o(5),k=o.n(y),w=o(22),I=o(19),N=o(296),O=o(283),j=o(286),C=o(12),R=o.n(C),T=o(66),q=o(967),S=o(844),x=o(151),B=o(149),A=function(e,t){return{medias:Object(T.a)(e,t.params.accountId),isLoading:e.getIn(["timelines","account:"+t.params.accountId+":media","isLoading"]),hasMore:e.getIn(["timelines","account:"+t.params.accountId+":media","hasMore"])}},L=(a=n=function(e){function t(){var o,n,a;p()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=g()(this,e.call.apply(e,[this].concat(s))),n.handleLoadMore=function(){n.props.onLoadMore(n.props.maxId)},a=o,g()(n,a)}return m()(t,e),t.prototype.render=function(){return u()(B.a,{disabled:this.props.disabled,onLoadMore:this.handleLoadMore})},t}(R.a),n.propTypes={maxId:k.a.string,onLoadMore:k.a.func.isRequired},a),F=(i=Object(b.connect)(A))((r=c=function(e){function t(){var o,n,a;p()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=g()(this,e.call.apply(e,[this].concat(s))),n.handleScrollToBottom=function(){n.props.hasMore&&n.handleLoadMore(n.props.medias.last().getIn(["status","id"]))},n.handleScroll=function(e){var t=e.target,o=t.scrollTop;150>t.scrollHeight-o-t.clientHeight&&!n.props.isLoading&&n.handleScrollToBottom()},n.handleLoadMore=function(e){n.props.dispatch(Object(I.k)(n.props.params.accountId,{maxId:e}))},n.handleLoadOlder=function(e){e.preventDefault(),n.handleScrollToBottom()},a=o,g()(n,a)}return m()(t,e),t.prototype.componentDidMount=function(){this.props.dispatch(Object(w.u)(this.props.params.accountId)),this.props.dispatch(Object(I.k)(this.props.params.accountId))},t.prototype.componentWillReceiveProps=function(e){e.params.accountId!==this.props.params.accountId&&e.params.accountId&&(this.props.dispatch(Object(w.u)(e.params.accountId)),this.props.dispatch(Object(I.k)(this.props.params.accountId)))},t.prototype.render=function(){var e=this.props,t=e.medias,o=e.isLoading,n=e.hasMore,a=null;return!t&&o?u()(O.a,{},void 0,u()(N.a,{})):(!o&&t.size>0&&n&&(a=u()(B.a,{onClick:this.handleLoadOlder})),u()(O.a,{},void 0,u()(j.a,{}),u()(x.a,{scrollKey:"account_gallery"},void 0,u()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,u()(S.a,{accountId:this.props.params.accountId}),u()("div",{className:"account-gallery__container"},void 0,t.map(function(e,o){return null===e?u()(L,{maxId:o>0?t.getIn(o-1,"id"):null},"more:"+t.getIn(o+1,"id")):u()(q.a,{media:e},e.get("id"))}),a)))))},t}(R.a),c.propTypes={params:k.a.object.isRequired,dispatch:k.a.func.isRequired,medias:M.a.list.isRequired,isLoading:k.a.bool,hasMore:k.a.bool},s=r))||s},843:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),s=(o.n(i),o(6)),c=function(){return a()("div",{className:"regeneration-indicator missing-indicator"},void 0,a()("div",{},void 0,a()("div",{className:"regeneration-indicator__label"},void 0,a()(s.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),a()(s.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=c},844:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),s=(o.n(i),o(9)),c=o(66),r=o(845),l=o(22),u=o(18),d=o(282),p=o(26),f=o(6),g=o(11),h=Object(f.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),m=function(){var e=Object(c.c)();return function(t,o){var n=o.accountId;return{account:e(t,n)}}},v=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?g.j?Object(p.d)("CONFIRM",{message:a()(f.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(h.unfollowConfirm),onConfirm:function(){return e(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(p.d)("CONFIRM",{message:a()(f.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(h.blockConfirm),onConfirm:function(){return e(Object(l.q)(t.get("id")))}}))},onMention:function(t,o){e(Object(u.R)(t,o))},onDirect:function(t,o){e(Object(u.N)(t,o))},onReblogToggle:function(t){e(t.getIn(["relationship","showing_reblogs"])?Object(l.z)(t.get("id"),!1):Object(l.z)(t.get("id"),!0))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(d.a)(t))}}};t.a=Object(f.g)(Object(s.connect)(m,v)(r.a))},845:function(e,t,o){"use strict";o.d(t,"a",function(){return O});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=(o.n(f),o(13)),h=o.n(g),m=o(5),v=o.n(m),b=o(846),_=o(847),M=o(843),y=o(12),k=o.n(y),w=o(848),I=o(6),N=o(44),O=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=u()(this,e.call.apply(e,[this].concat(s))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMention=function(){n.props.onMention(n.props.account,n.context.router.history)},n.handleDirect=function(){n.props.onDirect(n.props.account,n.context.router.history)},n.handleReblogToggle=function(){n.props.onReblogToggle(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},a=o,u()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.hideTabs;return null===t?s()(M.a,{}):s()("div",{className:"account-timeline__header"},void 0,t.get("moved")&&s()(w.a,{from:t,to:t.get("moved")}),s()(b.a,{account:t,onFollow:this.handleFollow,onBlock:this.handleBlock}),s()(_.a,{account:t,onBlock:this.handleBlock,onMention:this.handleMention,onDirect:this.handleDirect,onReblogToggle:this.handleReblogToggle,onMute:this.handleMute}),!o&&s()("div",{className:"account__section-headline"},void 0,s()(N.c,{exact:!0,to:"/accounts/"+t.get("id")},void 0,s()(I.b,{id:"account.posts",defaultMessage:"Toots"})),s()(N.c,{exact:!0,to:"/accounts/"+t.get("id")+"/with_replies"},void 0,s()(I.b,{id:"account.posts_with_replies",defaultMessage:"Toots and replies"})),s()(N.c,{exact:!0,to:"/accounts/"+t.get("id")+"/media"},void 0,s()(I.b,{id:"account.media",defaultMessage:"Media"}))))},t}(k.a),n.propTypes={account:h.a.map,onFollow:v.a.func.isRequired,onBlock:v.a.func.isRequired,onMention:v.a.func.isRequired,onDirect:v.a.func.isRequired,onReblogToggle:v.a.func.isRequired,onMute:v.a.func.isRequired,hideTabs:v.a.bool},n.contextTypes={router:v.a.object},a)},846:function(e,t,o){"use strict";o.d(t,"a",function(){return q});var n,a,i,s,c,r=o(2),l=o.n(r),u=o(1),d=o.n(u),p=o(3),f=o.n(p),g=o(4),h=o.n(g),m=o(0),v=(o.n(m),o(13)),b=o.n(v),_=o(5),M=o.n(_),y=o(6),k=o(23),w=o(27),I=(o.n(w),o(12)),N=o.n(I),O=o(11),j=o(10),C=o.n(j),R=Object(y.f)({unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},follow:{id:"account.follow",defaultMessage:"Follow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval. Click to cancel follow request"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"}}),T=(a=n=function(e){function t(){var o,n,a;d()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=f()(this,e.call.apply(e,[this].concat(s))),n.state={isHovered:!1},n.handleMouseOver=function(){n.state.isHovered||n.setState({isHovered:!0})},n.handleMouseOut=function(){n.state.isHovered&&n.setState({isHovered:!1})},a=o,f()(n,a)}return h()(t,e),t.prototype.render=function(){var e=this.props.account,t=this.state.isHovered;return l()("a",{href:e.get("url"),className:"account__header__avatar",role:"presentation",target:"_blank",rel:"noopener",style:{backgroundImage:"url("+(O.a||t?e.get("avatar"):e.get("avatar_static"))+")"},onMouseOver:this.handleMouseOver,onMouseOut:this.handleMouseOut,onFocus:this.handleMouseOver,onBlur:this.handleMouseOut},void 0,l()("span",{style:{display:"none"}},void 0,e.get("acct")))},t}(N.a),n.propTypes={account:b.a.map.isRequired},a),q=Object(y.g)((c=s=function(e){function t(){return d()(this,t),f()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl;if(!t)return null;var n="",a="",i="",s="";O.g!==t.get("id")&&t.getIn(["relationship","followed_by"])?n=l()("span",{className:"account--follows-info"},void 0,l()(y.b,{id:"account.follows_you",defaultMessage:"Follows you"})):O.g!==t.get("id")&&t.getIn(["relationship","blocking"])&&(n=l()("span",{className:"account--follows-info"},void 0,l()(y.b,{id:"account.blocked",defaultMessage:"Blocked"}))),O.g!==t.get("id")&&t.getIn(["relationship","muting"])?a=l()("span",{className:"account--muting-info"},void 0,l()(y.b,{id:"account.muted",defaultMessage:"Muted"})):O.g!==t.get("id")&&t.getIn(["relationship","domain_blocking"])&&(a=l()("span",{className:"account--muting-info"},void 0,l()(y.b,{id:"account.domain_blocked",defaultMessage:"Domain hidden"}))),O.g!==t.get("id")&&(t.getIn(["relationship","requested"])?i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,active:!0,icon:"hourglass",title:o.formatMessage(R.requested),onClick:this.props.onFollow})):t.getIn(["relationship","blocking"])?t.getIn(["relationship","blocking"])&&(i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:"unlock-alt",title:o.formatMessage(R.unblock,{name:t.get("username")}),onClick:this.props.onBlock}))):i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:t.getIn(["relationship","following"])?"user-times":"user-plus",active:t.getIn(["relationship","following"]),title:o.formatMessage(t.getIn(["relationship","following"])?R.unfollow:R.follow),onClick:this.props.onFollow}))),t.get("moved")&&!t.getIn(["relationship","following"])&&(i=""),t.get("locked")&&(s=l()("i",{className:"fa fa-lock"}));var c={__html:t.get("note_emojified")},r={__html:t.get("display_name_html")};return l()("div",{className:C()("account__header",{inactive:!!t.get("moved")}),style:{backgroundImage:"url("+t.get("header")+")"}},void 0,l()("div",{},void 0,l()(T,{account:t}),l()("span",{className:"account__header__display-name",dangerouslySetInnerHTML:r}),l()("span",{className:"account__header__username"},void 0,"@",t.get("acct")," ",s),l()("div",{className:"account__header__content",dangerouslySetInnerHTML:c}),n,a,i))},t}(N.a),s.propTypes={account:b.a.map,onFollow:M.a.func.isRequired,onBlock:M.a.func.isRequired,intl:M.a.object.isRequired},i=c))||i},847:function(e,t,o){"use strict";o.d(t,"a",function(){return _});var n,a=o(2),i=o.n(a),s=o(1),c=o.n(s),r=o(3),l=o.n(r),u=o(4),d=o.n(u),p=o(0),f=o.n(p),g=o(299),h=o(44),m=o(6),v=o(11),b=Object(m.f)({mention:{id:"account.mention",defaultMessage:"Mention @{name}"},direct:{id:"account.direct",defaultMessage:"Direct message @{name}"},edit_profile:{id:"account.edit_profile",defaultMessage:"Edit profile"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},block:{id:"account.block",defaultMessage:"Block @{name}"},follow:{id:"account.follow",defaultMessage:"Follow"},report:{id:"account.report",defaultMessage:"Report @{name}"},share:{id:"account.share",defaultMessage:"Share @{name}'s profile"},media:{id:"account.media",defaultMessage:"Media"},hideReblogs:{id:"account.hide_reblogs",defaultMessage:"Hide boosts from @{name}"},showReblogs:{id:"account.show_reblogs",defaultMessage:"Show boosts from @{name}"}}),_=Object(m.g)(n=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return o=n=l()(this,e.call.apply(e,[this].concat(s))),n.handleShare=function(){navigator.share({url:n.props.account.get("url")})},a=o,l()(n,a)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=[],a="";return n.push({text:o.formatMessage(b.mention,{name:t.get("username")}),action:this.props.onMention}),n.push({text:o.formatMessage(b.direct,{name:t.get("username")}),action:this.props.onDirect}),"share"in navigator&&n.push({text:o.formatMessage(b.share,{name:t.get("username")}),action:this.handleShare}),n.push(null),t.get("id")===v.g?n.push({text:o.formatMessage(b.edit_profile),href:"/settings/profile"}):(t.getIn(["relationship","following"])&&(t.getIn(["relationship","showing_reblogs"])?n.push({text:o.formatMessage(b.hideReblogs,{name:t.get("username")}),action:this.props.onReblogToggle}):n.push({text:o.formatMessage(b.showReblogs,{name:t.get("username")}),action:this.props.onReblogToggle})),t.getIn(["relationship","blocking"])?n.push({text:o.formatMessage(b.unblock,{name:t.get("username")}),action:this.props.onBlock}):n.push({text:o.formatMessage(b.block,{name:t.get("username")}),action:this.props.onBlock}),n.push({text:o.formatMessage(b.report,{name:t.get("username")}),action:this.props.onReport})),t.get("acct")!==t.get("username")&&(a=i()("div",{className:"account__disclaimer"},void 0,i()(m.b,{id:"account.disclaimer_full",defaultMessage:"Information below may reflect the user's profile incompletely."})," ",i()("a",{target:"_blank",rel:"noopener",href:t.get("url")},void 0,i()(m.b,{id:"account.view_full_profile",defaultMessage:"View full profile"}))),n.push(null)),i()("div",{},void 0,a,i()("div",{className:"account__action-bar"},void 0,i()("div",{className:"account__action-bar-dropdown"},void 0,i()(g.a,{items:n,icon:"bars",size:24,direction:"right"})),i()("div",{className:"account__action-bar-links"},void 0,i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")},void 0,i()("span",{},void 0,i()(m.b,{id:"account.posts",defaultMessage:"Toots"})),i()("strong",{},void 0,i()(m.c,{value:t.get("statuses_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/following"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.follows",defaultMessage:"Follows"})),i()("strong",{},void 0,i()(m.c,{value:t.get("following_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/followers"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.followers",defaultMessage:"Followers"})),i()("strong",{},void 0,i()(m.c,{value:t.get("followers_count")}))))))},t}(f.a.PureComponent))||n},848:function(e,t,o){"use strict";o.d(t,"a",function(){return w});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=(o.n(f),o(5)),h=o.n(g),m=o(13),v=o.n(m),b=o(6),_=o(12),M=o.n(_),y=o(301),k=o(55),w=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=u()(this,e.call.apply(e,[this].concat(s))),n.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),n.context.router.history.push("/accounts/"+n.props.to.get("id"))),e.stopPropagation()},a=o,u()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.from,o=e.to,n={__html:t.get("display_name_html")};return s()("div",{className:"account__moved-note"},void 0,s()("div",{className:"account__moved-note__message"},void 0,s()("div",{className:"account__moved-note__icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-suitcase account__moved-note__icon"})),s()(b.b,{id:"account.moved_to",defaultMessage:"{name} has moved to:",values:{name:s()("bdi",{},void 0,s()("strong",{dangerouslySetInnerHTML:n}))}})),s()("a",{href:o.get("url"),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,s()("div",{className:"detailed-status__display-avatar"},void 0,s()(y.a,{account:o,friend:t})),s()(k.a,{account:o})))},t}(M.a),n.contextTypes={router:h.a.object},n.propTypes={from:v.a.map.isRequired,to:v.a.map.isRequired},a)},967:function(e,t,o){"use strict";o.d(t,"a",function(){return M});var n,a,i=o(2),s=o.n(i),c=o(1),r=o.n(c),l=o(3),u=o.n(l),d=o(4),p=o.n(d),f=o(0),g=(o.n(f),o(13)),h=o.n(g),m=o(12),v=o.n(m),b=o(295),_=o(11),M=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return o=n=u()(this,e.call.apply(e,[this].concat(s))),n.state={visible:!n.props.media.getIn(["status","sensitive"])||_.f},n.handleClick=function(){return!n.state.visible&&(n.setState({visible:!0}),!0)},a=o,u()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props.media,t=this.state.visible,o=e.get("status"),n=e.getIn(["meta","focus","x"]),a=e.getIn(["meta","focus","y"]),i=100*(n/2+.5),c=100*(a/-2+.5),r={},l=void 0,u=void 0;return"gifv"===e.get("type")&&(l=s()("span",{className:"media-gallery__gifv__label"},void 0,"GIF")),t?(r.backgroundImage="url("+e.get("preview_url")+")",r.backgroundPosition=i+"% "+c+"%"):u=s()("span",{className:"account-gallery__item__icons"},void 0,s()("i",{className:"fa fa-eye-slash"})),s()("div",{className:"account-gallery__item"},void 0,s()(b.a,{to:"/statuses/"+o.get("id"),href:o.get("url"),style:r,onInterceptClick:this.handleClick},void 0,u,l))},t}(v.a),n.propTypes={media:h.a.map.isRequired},a)}}); //# sourceMappingURL=account_gallery.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/account_gallery.js.map b/priv/static/packs/features/account_gallery.js.map index 9b7efed49..d8b391355 100644 --- a/priv/static/packs/features/account_gallery.js.map +++ b/priv/static/packs/features/account_gallery.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/account_gallery.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/account_gallery/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/account_timeline/containers/header_container.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/action_bar.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/moved_note.js","webpack:///./app/javascript/mastodon/features/account_gallery/components/media_item.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_temp2","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","contextTypes","object","815","defineProperty","value","AccountGallery","_dec","_class2","_class3","_temp4","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__actions_accounts__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_11__ui_components_column__","__WEBPACK_IMPORTED_MODULE_12__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_14__selectors__","__WEBPACK_IMPORTED_MODULE_15__components_media_item__","__WEBPACK_IMPORTED_MODULE_16__account_timeline_containers_header_container__","__WEBPACK_IMPORTED_MODULE_17_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_18__components_load_more__","mapStateToProps","state","medias","params","accountId","isLoading","getIn","hasMore","LoadMoreMedia","_ImmutablePureCompone","handleLoadMore","onLoadMore","maxId","propTypes","string","func","isRequired","_ImmutablePureCompone2","_temp3","_this2","_ret2","_len2","_key2","handleScrollToBottom","last","e","_e$target","target","scrollHeight","clientHeight","handleLoadOlder","preventDefault","componentDidMount","componentWillReceiveProps","nextProps","loadOlder","size","scrollKey","map","media","index","get","list","bool","845","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","846","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__selectors__","__WEBPACK_IMPORTED_MODULE_4__components_header__","__WEBPACK_IMPORTED_MODULE_5__actions_accounts__","__WEBPACK_IMPORTED_MODULE_6__actions_compose__","__WEBPACK_IMPORTED_MODULE_7__actions_mutes__","__WEBPACK_IMPORTED_MODULE_8__actions_reports__","__WEBPACK_IMPORTED_MODULE_9__actions_modal__","__WEBPACK_IMPORTED_MODULE_10_react_intl__","__WEBPACK_IMPORTED_MODULE_11__initial_state__","messages","unfollowConfirm","blockConfirm","makeMapStateToProps","getAccount","_ref","mapDispatchToProps","_ref2","intl","onFollow","message","values","name","confirm","formatMessage","onConfirm","onBlock","onMention","onDirect","onReblogToggle","onReport","onMute","847","Header","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__account_components_header__","__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__","__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_11__moved_note__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","handleFollow","handleBlock","handleMention","handleDirect","handleReport","handleReblogToggle","handleMute","hideTabs","from","to","exact","848","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","unfollow","follow","requested","unblock","Avatar","isHovered","handleMouseOver","setState","handleMouseOut","href","rel","backgroundImage","onMouseOver","onMouseOut","onFocus","onBlur","display","info","mutingInfo","actionBtn","lockedIcon","title","content","__html","displayNameHtml","inactive","dangerouslySetInnerHTML","849","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_router_dom__","__WEBPACK_IMPORTED_MODULE_8__initial_state__","mention","direct","edit_profile","block","report","share","hideReblogs","showReblogs","handleShare","navigator","url","menu","extraInfo","text","action","items","direction","850","MovedNote","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__","__WEBPACK_IMPORTED_MODULE_10__components_display_name__","handleAccountClick","button","stopPropagation","friend","969","MediaItem","__WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_7__components_permalink__","status","focusX","focusY","x","y","label","backgroundPosition","onInterceptClick"],"mappings":"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","file":"features/account_gallery.js","sourcesContent":["webpackJsonp([14],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 815:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return AccountGallery; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_media_item__ = __webpack_require__(969);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__account_timeline_containers_header_container__ = __webpack_require__(846);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__components_load_more__ = __webpack_require__(149);\n\n\n\n\n\nvar _class, _temp2, _dec, _class2, _class3, _temp4;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n medias: Object(__WEBPACK_IMPORTED_MODULE_14__selectors__[\"a\" /* getAccountGallery */])(state, props.params.accountId),\n isLoading: state.getIn(['timelines', 'account:' + props.params.accountId + ':media', 'isLoading']),\n hasMore: state.getIn(['timelines', 'account:' + props.params.accountId + ':media', 'hasMore'])\n };\n};\n\nvar LoadMoreMedia = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMoreMedia, _ImmutablePureCompone);\n\n function LoadMoreMedia() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMoreMedia);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleLoadMore = function () {\n _this.props.onLoadMore(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadMoreMedia.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_18__components_load_more__[\"a\" /* default */], {\n disabled: this.props.disabled,\n onLoadMore: this.handleLoadMore\n });\n };\n\n return LoadMoreMedia;\n}(__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component___default.a), _class.propTypes = {\n maxId: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired\n}, _temp2);\nvar AccountGallery = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class2 = (_temp4 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AccountGallery, _ImmutablePureCompone2);\n\n function AccountGallery() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AccountGallery);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleScrollToBottom = function () {\n if (_this2.props.hasMore) {\n _this2.handleLoadMore(_this2.props.medias.last().getIn(['status', 'id']));\n }\n }, _this2.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n\n if (150 > offset && !_this2.props.isLoading) {\n _this2.handleScrollToBottom();\n }\n }, _this2.handleLoadMore = function (maxId) {\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"k\" /* expandAccountMediaTimeline */])(_this2.props.params.accountId, { maxId: maxId }));\n }, _this2.handleLoadOlder = function (e) {\n e.preventDefault();\n _this2.handleScrollToBottom();\n }, _temp3), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n AccountGallery.prototype.componentDidMount = function componentDidMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_accounts__[\"u\" /* fetchAccount */])(this.props.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"k\" /* expandAccountMediaTimeline */])(this.props.params.accountId));\n };\n\n AccountGallery.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_accounts__[\"u\" /* fetchAccount */])(nextProps.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"k\" /* expandAccountMediaTimeline */])(this.props.params.accountId));\n }\n };\n\n AccountGallery.prototype.render = function render() {\n var _props = this.props,\n medias = _props.medias,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore;\n\n\n var loadOlder = null;\n\n if (!medias && isLoading) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n if (!isLoading && medias.size > 0 && hasMore) {\n loadOlder = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_18__components_load_more__[\"a\" /* default */], {\n onClick: this.handleLoadOlder\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'account_gallery'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__account_timeline_containers_header_container__[\"a\" /* default */], {\n accountId: this.props.params.accountId\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-gallery__container'\n }, void 0, medias.map(function (media, index) {\n return media === null ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(LoadMoreMedia, {\n maxId: index > 0 ? medias.getIn(index - 1, 'id') : null\n }, 'more:' + medias.getIn(index + 1, 'id')) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__components_media_item__[\"a\" /* default */], {\n media: media\n }, media.get('id'));\n }), loadOlder))));\n };\n\n return AccountGallery;\n}(__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component___default.a), _class3.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired,\n medias: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list.isRequired,\n isLoading: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool\n}, _temp4)) || _class2);\n\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 846:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_header__ = __webpack_require__(847);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_3__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId;\n return {\n account: getAccount(state, accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var intl = _ref2.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onDirect: function onDirect(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"N\" /* directCompose */])(account, router));\n },\n onReblogToggle: function onReblogToggle(account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), false));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), true));\n }\n },\n onReport: function onReport(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_reports__[\"k\" /* initReport */])(account));\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_4__components_header__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 847:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__account_components_header__ = __webpack_require__(848);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__ = __webpack_require__(849);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__moved_note__ = __webpack_require__(850);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar Header = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone);\n\n function Header() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMention = function () {\n _this.props.onMention(_this.props.account, _this.context.router.history);\n }, _this.handleDirect = function () {\n _this.props.onDirect(_this.props.account, _this.context.router.history);\n }, _this.handleReport = function () {\n _this.props.onReport(_this.props.account);\n }, _this.handleReblogToggle = function () {\n _this.props.onReblogToggle(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n hideTabs = _props.hideTabs;\n\n\n if (account === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__[\"a\" /* default */], {});\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-timeline__header'\n }, void 0, account.get('moved') && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__moved_note__[\"a\" /* default */], {\n from: account,\n to: account.get('moved')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__account_components_header__[\"a\" /* default */], {\n account: account,\n onFollow: this.handleFollow,\n onBlock: this.handleBlock\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__[\"a\" /* default */], {\n account: account,\n onBlock: this.handleBlock,\n onMention: this.handleMention,\n onDirect: this.handleDirect,\n onReblogToggle: this.handleReblogToggle,\n onReport: this.handleReport,\n onMute: this.handleMute\n }), !hideTabs && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__section-headline'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/with_replies'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts_with_replies',\n defaultMessage: 'Toots and replies'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/media'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.media',\n defaultMessage: 'Media'\n }))));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDirect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReblogToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReport: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n hideTabs: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 848:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval. Click to cancel follow request'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n }\n});\n\nvar Avatar = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Avatar, _ImmutablePureCompone);\n\n function Avatar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Avatar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n isHovered: false\n }, _this.handleMouseOver = function () {\n if (_this.state.isHovered) return;\n _this.setState({ isHovered: true });\n }, _this.handleMouseOut = function () {\n if (!_this.state.isHovered) return;\n _this.setState({ isHovered: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Avatar.prototype.render = function render() {\n var account = this.props.account;\n var isHovered = this.state.isHovered;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: account.get('url'),\n className: 'account__header__avatar',\n role: 'presentation',\n target: '_blank',\n rel: 'noopener',\n style: { backgroundImage: 'url(' + (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"a\" /* autoPlayGif */] || isHovered ? account.get('avatar') : account.get('avatar_static')) + ')' },\n onMouseOver: this.handleMouseOver,\n onMouseOut: this.handleMouseOut,\n onFocus: this.handleMouseOver,\n onBlur: this.handleMouseOut\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, account.get('acct')));\n };\n\n return Avatar;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\nvar Header = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone2);\n\n function Header() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.apply(this, arguments));\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n if (!account) {\n return null;\n }\n\n var info = '';\n var mutingInfo = '';\n var actionBtn = '';\n var lockedIcon = '';\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows_you',\n defaultMessage: 'Follows you'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.blocked',\n defaultMessage: 'Blocked'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.muted',\n defaultMessage: 'Muted'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.domain_blocked',\n defaultMessage: 'Domain hidden'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n active: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested),\n onClick: this.props.onFollow\n }));\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus',\n active: account.getIn(['relationship', 'following']),\n title: intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow),\n onClick: this.props.onFollow\n }));\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.props.onBlock\n }));\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n });\n }\n\n var content = { __html: account.get('note_emojified') };\n var displayNameHtml = { __html: account.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('account__header', { inactive: !!account.get('moved') }),\n style: { backgroundImage: 'url(' + account.get('header') + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Avatar, {\n account: account\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__display-name',\n dangerouslySetInnerHTML: displayNameHtml\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__username'\n }, void 0, '@', account.get('acct'), ' ', lockedIcon), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n }), info, mutingInfo, actionBtn));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class3.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp3)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 849:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n mention: {\n 'id': 'account.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n direct: {\n 'id': 'account.direct',\n 'defaultMessage': 'Direct message @{name}'\n },\n edit_profile: {\n 'id': 'account.edit_profile',\n 'defaultMessage': 'Edit profile'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n block: {\n 'id': 'account.block',\n 'defaultMessage': 'Block @{name}'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n report: {\n 'id': 'account.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'account.share',\n 'defaultMessage': 'Share @{name}\\'s profile'\n },\n media: {\n 'id': 'account.media',\n 'defaultMessage': 'Media'\n },\n hideReblogs: {\n 'id': 'account.hide_reblogs',\n 'defaultMessage': 'Hide boosts from @{name}'\n },\n showReblogs: {\n 'id': 'account.show_reblogs',\n 'defaultMessage': 'Show boosts from @{name}'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleShare = function () {\n navigator.share({\n url: _this.props.account.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n var menu = [];\n var extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"g\" /* me */]) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__disclaimer'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.disclaimer_full',\n defaultMessage: 'Information below may reflect the user\\'s profile incompletely.'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n target: '_blank',\n rel: 'noopener',\n href: account.get('url')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.view_full_profile',\n defaultMessage: 'View full profile'\n })));\n\n menu.push(null);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, extraInfo, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n items: menu,\n icon: 'bars',\n size: 24,\n direction: 'right'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('statuses_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows',\n defaultMessage: 'Follows'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('following_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.followers',\n defaultMessage: 'Followers'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('followers_count')\n }))))));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 850:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MovedNote; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_display_name__ = __webpack_require__(55);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\nvar MovedNote = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MovedNote, _ImmutablePureCompone);\n\n function MovedNote() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MovedNote);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.to.get('id'));\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MovedNote.prototype.render = function render() {\n var _props = this.props,\n from = _props.from,\n to = _props.to;\n\n var displayNameHtml = { __html: from.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-suitcase account__moved-note__icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.moved_to',\n defaultMessage: '{name} has moved to:',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n dangerouslySetInnerHTML: displayNameHtml\n })) }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: to.get('url'),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__[\"a\" /* default */], {\n account: to,\n friend: from\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_display_name__[\"a\" /* default */], {\n account: to\n })));\n };\n\n return MovedNote;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n from: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n to: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 969:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MediaItem; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\nvar MediaItem = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MediaItem, _ImmutablePureCompone);\n\n function MediaItem() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MediaItem);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n visible: !_this.props.media.getIn(['status', 'sensitive']) || __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"f\" /* displaySensitiveMedia */]\n }, _this.handleClick = function () {\n if (!_this.state.visible) {\n _this.setState({ visible: true });\n return true;\n }\n\n return false;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MediaItem.prototype.render = function render() {\n var media = this.props.media;\n var visible = this.state.visible;\n\n var status = media.get('status');\n var focusX = media.getIn(['meta', 'focus', 'x']);\n var focusY = media.getIn(['meta', 'focus', 'y']);\n var x = (focusX / 2 + .5) * 100;\n var y = (focusY / -2 + .5) * 100;\n var style = {};\n\n var label = void 0,\n icon = void 0;\n\n if (media.get('type') === 'gifv') {\n label = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'media-gallery__gifv__label'\n }, void 0, 'GIF');\n }\n\n if (visible) {\n style.backgroundImage = 'url(' + media.get('preview_url') + ')';\n style.backgroundPosition = x + '% ' + y + '%';\n } else {\n icon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account-gallery__item__icons'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-eye-slash'\n }));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-gallery__item'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_permalink__[\"a\" /* default */], {\n to: '/statuses/' + status.get('id'),\n href: status.get('url'),\n style: style,\n onInterceptClick: this.handleClick\n }, void 0, icon, label));\n };\n\n return MediaItem;\n}(__WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component___default.a), _class.propTypes = {\n media: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/account_gallery.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { fetchAccount } from '../../actions/accounts';\nimport { expandAccountMediaTimeline } from '../../actions/timelines';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport Column from '../ui/components/column';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { getAccountGallery } from '../../selectors';\nimport MediaItem from './components/media_item';\nimport HeaderContainer from '../account_timeline/containers/header_container';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport LoadMore from '../../components/load_more';\n\nconst mapStateToProps = (state, props) => ({\n medias: getAccountGallery(state, props.params.accountId),\n isLoading: state.getIn(['timelines', `account:${props.params.accountId}:media`, 'isLoading']),\n hasMore: state.getIn(['timelines', `account:${props.params.accountId}:media`, 'hasMore']),\n});\n\nclass LoadMoreMedia extends ImmutablePureComponent {\n\n static propTypes = {\n maxId: PropTypes.string,\n onLoadMore: PropTypes.func.isRequired,\n };\n\n handleLoadMore = () => {\n this.props.onLoadMore(this.props.maxId);\n }\n\n render () {\n return (\n <LoadMore\n disabled={this.props.disabled}\n onLoadMore={this.handleLoadMore}\n />\n );\n }\n\n}\n\n@connect(mapStateToProps)\nexport default class AccountGallery extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n medias: ImmutablePropTypes.list.isRequired,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n };\n\n componentDidMount () {\n this.props.dispatch(fetchAccount(this.props.params.accountId));\n this.props.dispatch(expandAccountMediaTimeline(this.props.params.accountId));\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(expandAccountMediaTimeline(this.props.params.accountId));\n }\n }\n\n handleScrollToBottom = () => {\n if (this.props.hasMore) {\n this.handleLoadMore(this.props.medias.last().getIn(['status', 'id']));\n }\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n const offset = scrollHeight - scrollTop - clientHeight;\n\n if (150 > offset && !this.props.isLoading) {\n this.handleScrollToBottom();\n }\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandAccountMediaTimeline(this.props.params.accountId, { maxId }));\n };\n\n handleLoadOlder = (e) => {\n e.preventDefault();\n this.handleScrollToBottom();\n }\n\n render () {\n const { medias, isLoading, hasMore } = this.props;\n\n let loadOlder = null;\n\n if (!medias && isLoading) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n if (!isLoading && medias.size > 0 && hasMore) {\n loadOlder = <LoadMore onClick={this.handleLoadOlder} />;\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='account_gallery'>\n <div className='scrollable' onScroll={this.handleScroll}>\n <HeaderContainer accountId={this.props.params.accountId} />\n\n <div className='account-gallery__container'>\n {medias.map((media, index) => media === null ? (\n <LoadMoreMedia\n key={'more:' + medias.getIn(index + 1, 'id')}\n maxId={index > 0 ? medias.getIn(index - 1, 'id') : null}\n />\n ) : (\n <MediaItem\n key={media.get('id')}\n media={media}\n />\n ))}\n {loadOlder}\n </div>\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_gallery/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport Header from '../components/header';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n unmuteAccount,\n} from '../../../actions/accounts';\nimport {\n mentionCompose,\n directCompose,\n} from '../../../actions/compose';\nimport { initMuteModal } from '../../../actions/mutes';\nimport { initReport } from '../../../actions/reports';\nimport { openModal } from '../../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { unfollowModal } from '../../../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId }) => ({\n account: getAccount(state, accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onDirect (account, router) {\n dispatch(directCompose(account, router));\n },\n\n onReblogToggle (account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(followAccount(account.get('id'), false));\n } else {\n dispatch(followAccount(account.get('id'), true));\n }\n },\n\n onReport (account) {\n dispatch(initReport(account));\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n }\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Header));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/containers/header_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport InnerHeader from '../../account/components/header';\nimport ActionBar from '../../account/components/action_bar';\nimport MissingIndicator from '../../../components/missing_indicator';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport MovedNote from './moved_note';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n hideTabs: PropTypes.bool,\n };\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMention = () => {\n this.props.onMention(this.props.account, this.context.router.history);\n }\n\n handleDirect = () => {\n this.props.onDirect(this.props.account, this.context.router.history);\n }\n\n handleReport = () => {\n this.props.onReport(this.props.account);\n }\n\n handleReblogToggle = () => {\n this.props.onReblogToggle(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n render () {\n const { account, hideTabs } = this.props;\n\n if (account === null) {\n return <MissingIndicator />;\n }\n\n return (\n <div className='account-timeline__header'>\n {account.get('moved') && <MovedNote from={account} to={account.get('moved')} />}\n\n <InnerHeader\n account={account}\n onFollow={this.handleFollow}\n onBlock={this.handleBlock}\n />\n\n <ActionBar\n account={account}\n onBlock={this.handleBlock}\n onMention={this.handleMention}\n onDirect={this.handleDirect}\n onReblogToggle={this.handleReblogToggle}\n onReport={this.handleReport}\n onMute={this.handleMute}\n />\n\n {!hideTabs && (\n <div className='account__section-headline'>\n <NavLink exact to={`/accounts/${account.get('id')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>\n </div>\n )}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { autoPlayGif, me } from '../../../initial_state';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval. Click to cancel follow request' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n});\n\nclass Avatar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n isHovered: false,\n };\n\n handleMouseOver = () => {\n if (this.state.isHovered) return;\n this.setState({ isHovered: true });\n }\n\n handleMouseOut = () => {\n if (!this.state.isHovered) return;\n this.setState({ isHovered: false });\n }\n\n render () {\n const { account } = this.props;\n const { isHovered } = this.state;\n\n return (\n <a\n href={account.get('url')}\n className='account__header__avatar'\n role='presentation'\n target='_blank'\n rel='noopener'\n style={{ backgroundImage: `url(${autoPlayGif || isHovered ? account.get('avatar') : account.get('avatar_static')})` }}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onFocus={this.handleMouseOver}\n onBlur={this.handleMouseOut}\n >\n <span style={{ display: 'none' }}>{account.get('acct')}</span>\n </a>\n );\n }\n\n}\n\n@injectIntl\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { account, intl } = this.props;\n\n if (!account) {\n return null;\n }\n\n let info = '';\n let mutingInfo = '';\n let actionBtn = '';\n let lockedIcon = '';\n\n if (me !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.follows_you' defaultMessage='Follows you' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.blocked' defaultMessage='Blocked' /></span>;\n }\n\n if (me !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.muted' defaultMessage='Muted' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.domain_blocked' defaultMessage='Domain hidden' /></span>;\n }\n\n if (me !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} active icon='hourglass' title={intl.formatMessage(messages.requested)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon={account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus'} active={account.getIn(['relationship', 'following'])} title={intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.props.onBlock} />\n </div>\n );\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = <i className='fa fa-lock' />;\n }\n\n const content = { __html: account.get('note_emojified') };\n const displayNameHtml = { __html: account.get('display_name_html') };\n\n return (\n <div className={classNames('account__header', { inactive: !!account.get('moved') })} style={{ backgroundImage: `url(${account.get('header')})` }}>\n <div>\n <Avatar account={account} />\n\n <span className='account__header__display-name' dangerouslySetInnerHTML={displayNameHtml} />\n <span className='account__header__username'>@{account.get('acct')} {lockedIcon}</span>\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n\n {info}\n {mutingInfo}\n {actionBtn}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { Link } from 'react-router-dom';\nimport { defineMessages, injectIntl, FormattedMessage, FormattedNumber } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n mention: { id: 'account.mention', defaultMessage: 'Mention @{name}' },\n direct: { id: 'account.direct', defaultMessage: 'Direct message @{name}' },\n edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n block: { id: 'account.block', defaultMessage: 'Block @{name}' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n report: { id: 'account.report', defaultMessage: 'Report @{name}' },\n share: { id: 'account.share', defaultMessage: 'Share @{name}\\'s profile' },\n media: { id: 'account.media', defaultMessage: 'Media' },\n hideReblogs: { id: 'account.hide_reblogs', defaultMessage: 'Hide boosts from @{name}' },\n showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleShare = () => {\n navigator.share({\n url: this.props.account.get('url'),\n });\n }\n\n render () {\n const { account, intl } = this.props;\n\n let menu = [];\n let extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === me) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = (\n <div className='account__disclaimer'>\n <FormattedMessage\n id='account.disclaimer_full'\n defaultMessage=\"Information below may reflect the user's profile incompletely.\"\n />\n {' '}\n <a target='_blank' rel='noopener' href={account.get('url')}>\n <FormattedMessage id='account.view_full_profile' defaultMessage='View full profile' />\n </a>\n </div>\n );\n\n menu.push(null);\n }\n\n return (\n <div>\n {extraInfo}\n\n <div className='account__action-bar'>\n <div className='account__action-bar-dropdown'>\n <DropdownMenuContainer items={menu} icon='bars' size={24} direction='right' />\n </div>\n\n <div className='account__action-bar-links'>\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}`}>\n <span><FormattedMessage id='account.posts' defaultMessage='Toots' /></span>\n <strong><FormattedNumber value={account.get('statuses_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/following`}>\n <span><FormattedMessage id='account.follows' defaultMessage='Follows' /></span>\n <strong><FormattedNumber value={account.get('following_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/followers`}>\n <span><FormattedMessage id='account.followers' defaultMessage='Followers' /></span>\n <strong><FormattedNumber value={account.get('followers_count')} /></strong>\n </Link>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/action_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport AvatarOverlay from '../../../components/avatar_overlay';\nimport DisplayName from '../../../components/display_name';\n\nexport default class MovedNote extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n from: ImmutablePropTypes.map.isRequired,\n to: ImmutablePropTypes.map.isRequired,\n };\n\n handleAccountClick = e => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.to.get('id')}`);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { from, to } = this.props;\n const displayNameHtml = { __html: from.get('display_name_html') };\n\n return (\n <div className='account__moved-note'>\n <div className='account__moved-note__message'>\n <div className='account__moved-note__icon-wrapper'><i className='fa fa-fw fa-suitcase account__moved-note__icon' /></div>\n <FormattedMessage id='account.moved_to' defaultMessage='{name} has moved to:' values={{ name: <bdi><strong dangerouslySetInnerHTML={displayNameHtml} /></bdi> }} />\n </div>\n\n <a href={to.get('url')} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><AvatarOverlay account={to} friend={from} /></div>\n <DisplayName account={to} />\n </a>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/moved_note.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Permalink from '../../../components/permalink';\nimport { displaySensitiveMedia } from '../../../initial_state';\n\nexport default class MediaItem extends ImmutablePureComponent {\n\n static propTypes = {\n media: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n visible: !this.props.media.getIn(['status', 'sensitive']) || displaySensitiveMedia,\n };\n\n handleClick = () => {\n if (!this.state.visible) {\n this.setState({ visible: true });\n return true;\n }\n\n return false;\n }\n\n render () {\n const { media } = this.props;\n const { visible } = this.state;\n const status = media.get('status');\n const focusX = media.getIn(['meta', 'focus', 'x']);\n const focusY = media.getIn(['meta', 'focus', 'y']);\n const x = ((focusX / 2) + .5) * 100;\n const y = ((focusY / -2) + .5) * 100;\n const style = {};\n\n let label, icon;\n\n if (media.get('type') === 'gifv') {\n label = <span className='media-gallery__gifv__label'>GIF</span>;\n }\n\n if (visible) {\n style.backgroundImage = `url(${media.get('preview_url')})`;\n style.backgroundPosition = `${x}% ${y}%`;\n } else {\n icon = (\n <span className='account-gallery__item__icons'>\n <i className='fa fa-eye-slash' />\n </span>\n );\n }\n\n return (\n <div className='account-gallery__item'>\n <Permalink to={`/statuses/${status.get('id')}`} href={status.get('url')} style={style} onInterceptClick={this.handleClick}>\n {icon}\n {label}\n </Permalink>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_gallery/components/media_item.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/account_gallery.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/account_gallery/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/account_timeline/containers/header_container.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/action_bar.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/moved_note.js","webpack:///./app/javascript/mastodon/features/account_gallery/components/media_item.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_temp2","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","contextTypes","object","814","defineProperty","value","AccountGallery","_dec","_class2","_class3","_temp4","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__actions_accounts__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_11__ui_components_column__","__WEBPACK_IMPORTED_MODULE_12__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_14__selectors__","__WEBPACK_IMPORTED_MODULE_15__components_media_item__","__WEBPACK_IMPORTED_MODULE_16__account_timeline_containers_header_container__","__WEBPACK_IMPORTED_MODULE_17_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_18__components_load_more__","mapStateToProps","state","medias","params","accountId","isLoading","getIn","hasMore","LoadMoreMedia","_ImmutablePureCompone","handleLoadMore","onLoadMore","maxId","propTypes","string","func","isRequired","_ImmutablePureCompone2","_temp3","_this2","_ret2","_len2","_key2","handleScrollToBottom","last","e","_e$target","target","scrollHeight","clientHeight","handleLoadOlder","preventDefault","componentDidMount","componentWillReceiveProps","nextProps","loadOlder","size","scrollKey","map","media","index","get","list","bool","843","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","844","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__selectors__","__WEBPACK_IMPORTED_MODULE_4__components_header__","__WEBPACK_IMPORTED_MODULE_5__actions_accounts__","__WEBPACK_IMPORTED_MODULE_6__actions_compose__","__WEBPACK_IMPORTED_MODULE_7__actions_mutes__","__WEBPACK_IMPORTED_MODULE_8__actions_modal__","__WEBPACK_IMPORTED_MODULE_9_react_intl__","__WEBPACK_IMPORTED_MODULE_10__initial_state__","messages","unfollowConfirm","blockConfirm","makeMapStateToProps","getAccount","_ref","mapDispatchToProps","_ref2","intl","onFollow","message","values","name","confirm","formatMessage","onConfirm","onBlock","onMention","onDirect","onReblogToggle","onMute","845","Header","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__account_components_header__","__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__","__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_11__moved_note__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","handleFollow","handleBlock","handleMention","handleDirect","handleReblogToggle","handleMute","hideTabs","from","to","exact","846","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_11__initial_state__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","unfollow","follow","requested","unblock","Avatar","isHovered","handleMouseOver","setState","handleMouseOut","href","rel","backgroundImage","onMouseOver","onMouseOut","onFocus","onBlur","display","info","mutingInfo","actionBtn","lockedIcon","title","content","__html","displayNameHtml","inactive","dangerouslySetInnerHTML","847","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_router_dom__","__WEBPACK_IMPORTED_MODULE_8__initial_state__","mention","direct","edit_profile","block","report","share","hideReblogs","showReblogs","handleShare","navigator","url","menu","extraInfo","text","action","onReport","items","direction","848","MovedNote","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__","__WEBPACK_IMPORTED_MODULE_10__components_display_name__","handleAccountClick","button","stopPropagation","friend","967","MediaItem","__WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_7__components_permalink__","status","focusX","focusY","x","y","label","backgroundPosition","onInterceptClick"],"mappings":"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","file":"features/account_gallery.js","sourcesContent":["webpackJsonp([16],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 814:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return AccountGallery; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_media_item__ = __webpack_require__(967);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__account_timeline_containers_header_container__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__components_load_more__ = __webpack_require__(149);\n\n\n\n\n\nvar _class, _temp2, _dec, _class2, _class3, _temp4;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n medias: Object(__WEBPACK_IMPORTED_MODULE_14__selectors__[\"a\" /* getAccountGallery */])(state, props.params.accountId),\n isLoading: state.getIn(['timelines', 'account:' + props.params.accountId + ':media', 'isLoading']),\n hasMore: state.getIn(['timelines', 'account:' + props.params.accountId + ':media', 'hasMore'])\n };\n};\n\nvar LoadMoreMedia = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMoreMedia, _ImmutablePureCompone);\n\n function LoadMoreMedia() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMoreMedia);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleLoadMore = function () {\n _this.props.onLoadMore(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadMoreMedia.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_18__components_load_more__[\"a\" /* default */], {\n disabled: this.props.disabled,\n onLoadMore: this.handleLoadMore\n });\n };\n\n return LoadMoreMedia;\n}(__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component___default.a), _class.propTypes = {\n maxId: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired\n}, _temp2);\nvar AccountGallery = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class2 = (_temp4 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AccountGallery, _ImmutablePureCompone2);\n\n function AccountGallery() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AccountGallery);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleScrollToBottom = function () {\n if (_this2.props.hasMore) {\n _this2.handleLoadMore(_this2.props.medias.last().getIn(['status', 'id']));\n }\n }, _this2.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n\n if (150 > offset && !_this2.props.isLoading) {\n _this2.handleScrollToBottom();\n }\n }, _this2.handleLoadMore = function (maxId) {\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"k\" /* expandAccountMediaTimeline */])(_this2.props.params.accountId, { maxId: maxId }));\n }, _this2.handleLoadOlder = function (e) {\n e.preventDefault();\n _this2.handleScrollToBottom();\n }, _temp3), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n AccountGallery.prototype.componentDidMount = function componentDidMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_accounts__[\"u\" /* fetchAccount */])(this.props.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"k\" /* expandAccountMediaTimeline */])(this.props.params.accountId));\n };\n\n AccountGallery.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_accounts__[\"u\" /* fetchAccount */])(nextProps.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"k\" /* expandAccountMediaTimeline */])(this.props.params.accountId));\n }\n };\n\n AccountGallery.prototype.render = function render() {\n var _props = this.props,\n medias = _props.medias,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore;\n\n\n var loadOlder = null;\n\n if (!medias && isLoading) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n if (!isLoading && medias.size > 0 && hasMore) {\n loadOlder = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_18__components_load_more__[\"a\" /* default */], {\n onClick: this.handleLoadOlder\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'account_gallery'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__account_timeline_containers_header_container__[\"a\" /* default */], {\n accountId: this.props.params.accountId\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-gallery__container'\n }, void 0, medias.map(function (media, index) {\n return media === null ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(LoadMoreMedia, {\n maxId: index > 0 ? medias.getIn(index - 1, 'id') : null\n }, 'more:' + medias.getIn(index + 1, 'id')) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__components_media_item__[\"a\" /* default */], {\n media: media\n }, media.get('id'));\n }), loadOlder))));\n };\n\n return AccountGallery;\n}(__WEBPACK_IMPORTED_MODULE_13_react_immutable_pure_component___default.a), _class3.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired,\n medias: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list.isRequired,\n isLoading: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool\n}, _temp4)) || _class2);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_header__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_3__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId;\n return {\n account: getAccount(state, accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var intl = _ref2.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_10__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onDirect: function onDirect(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"N\" /* directCompose */])(account, router));\n },\n onReblogToggle: function onReblogToggle(account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), false));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), true));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_4__components_header__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__account_components_header__ = __webpack_require__(846);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__ = __webpack_require__(847);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__moved_note__ = __webpack_require__(848);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar Header = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone);\n\n function Header() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMention = function () {\n _this.props.onMention(_this.props.account, _this.context.router.history);\n }, _this.handleDirect = function () {\n _this.props.onDirect(_this.props.account, _this.context.router.history);\n }, _this.handleReblogToggle = function () {\n _this.props.onReblogToggle(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n hideTabs = _props.hideTabs;\n\n\n if (account === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__[\"a\" /* default */], {});\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-timeline__header'\n }, void 0, account.get('moved') && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__moved_note__[\"a\" /* default */], {\n from: account,\n to: account.get('moved')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__account_components_header__[\"a\" /* default */], {\n account: account,\n onFollow: this.handleFollow,\n onBlock: this.handleBlock\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__[\"a\" /* default */], {\n account: account,\n onBlock: this.handleBlock,\n onMention: this.handleMention,\n onDirect: this.handleDirect,\n onReblogToggle: this.handleReblogToggle,\n onMute: this.handleMute\n }), !hideTabs && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__section-headline'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/with_replies'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts_with_replies',\n defaultMessage: 'Toots and replies'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/media'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.media',\n defaultMessage: 'Media'\n }))));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDirect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReblogToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n hideTabs: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 846:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval. Click to cancel follow request'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n }\n});\n\nvar Avatar = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Avatar, _ImmutablePureCompone);\n\n function Avatar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Avatar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n isHovered: false\n }, _this.handleMouseOver = function () {\n if (_this.state.isHovered) return;\n _this.setState({ isHovered: true });\n }, _this.handleMouseOut = function () {\n if (!_this.state.isHovered) return;\n _this.setState({ isHovered: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Avatar.prototype.render = function render() {\n var account = this.props.account;\n var isHovered = this.state.isHovered;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: account.get('url'),\n className: 'account__header__avatar',\n role: 'presentation',\n target: '_blank',\n rel: 'noopener',\n style: { backgroundImage: 'url(' + (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"a\" /* autoPlayGif */] || isHovered ? account.get('avatar') : account.get('avatar_static')) + ')' },\n onMouseOver: this.handleMouseOver,\n onMouseOut: this.handleMouseOut,\n onFocus: this.handleMouseOver,\n onBlur: this.handleMouseOut\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, account.get('acct')));\n };\n\n return Avatar;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\nvar Header = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone2);\n\n function Header() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.apply(this, arguments));\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n if (!account) {\n return null;\n }\n\n var info = '';\n var mutingInfo = '';\n var actionBtn = '';\n var lockedIcon = '';\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows_you',\n defaultMessage: 'Follows you'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.blocked',\n defaultMessage: 'Blocked'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.muted',\n defaultMessage: 'Muted'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.domain_blocked',\n defaultMessage: 'Domain hidden'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n active: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested),\n onClick: this.props.onFollow\n }));\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus',\n active: account.getIn(['relationship', 'following']),\n title: intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow),\n onClick: this.props.onFollow\n }));\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.props.onBlock\n }));\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n });\n }\n\n var content = { __html: account.get('note_emojified') };\n var displayNameHtml = { __html: account.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('account__header', { inactive: !!account.get('moved') }),\n style: { backgroundImage: 'url(' + account.get('header') + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Avatar, {\n account: account\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__display-name',\n dangerouslySetInnerHTML: displayNameHtml\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__username'\n }, void 0, '@', account.get('acct'), ' ', lockedIcon), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n }), info, mutingInfo, actionBtn));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class3.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp3)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 847:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n mention: {\n 'id': 'account.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n direct: {\n 'id': 'account.direct',\n 'defaultMessage': 'Direct message @{name}'\n },\n edit_profile: {\n 'id': 'account.edit_profile',\n 'defaultMessage': 'Edit profile'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n block: {\n 'id': 'account.block',\n 'defaultMessage': 'Block @{name}'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n report: {\n 'id': 'account.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'account.share',\n 'defaultMessage': 'Share @{name}\\'s profile'\n },\n media: {\n 'id': 'account.media',\n 'defaultMessage': 'Media'\n },\n hideReblogs: {\n 'id': 'account.hide_reblogs',\n 'defaultMessage': 'Hide boosts from @{name}'\n },\n showReblogs: {\n 'id': 'account.show_reblogs',\n 'defaultMessage': 'Show boosts from @{name}'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleShare = function () {\n navigator.share({\n url: _this.props.account.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n var menu = [];\n var extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"g\" /* me */]) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__disclaimer'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.disclaimer_full',\n defaultMessage: 'Information below may reflect the user\\'s profile incompletely.'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n target: '_blank',\n rel: 'noopener',\n href: account.get('url')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.view_full_profile',\n defaultMessage: 'View full profile'\n })));\n\n menu.push(null);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, extraInfo, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n items: menu,\n icon: 'bars',\n size: 24,\n direction: 'right'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('statuses_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows',\n defaultMessage: 'Follows'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('following_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.followers',\n defaultMessage: 'Followers'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('followers_count')\n }))))));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 848:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MovedNote; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_display_name__ = __webpack_require__(55);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\nvar MovedNote = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MovedNote, _ImmutablePureCompone);\n\n function MovedNote() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MovedNote);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.to.get('id'));\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MovedNote.prototype.render = function render() {\n var _props = this.props,\n from = _props.from,\n to = _props.to;\n\n var displayNameHtml = { __html: from.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-suitcase account__moved-note__icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.moved_to',\n defaultMessage: '{name} has moved to:',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n dangerouslySetInnerHTML: displayNameHtml\n })) }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: to.get('url'),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__[\"a\" /* default */], {\n account: to,\n friend: from\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_display_name__[\"a\" /* default */], {\n account: to\n })));\n };\n\n return MovedNote;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n from: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n to: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 967:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MediaItem; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\nvar MediaItem = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MediaItem, _ImmutablePureCompone);\n\n function MediaItem() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MediaItem);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n visible: !_this.props.media.getIn(['status', 'sensitive']) || __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"f\" /* displaySensitiveMedia */]\n }, _this.handleClick = function () {\n if (!_this.state.visible) {\n _this.setState({ visible: true });\n return true;\n }\n\n return false;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MediaItem.prototype.render = function render() {\n var media = this.props.media;\n var visible = this.state.visible;\n\n var status = media.get('status');\n var focusX = media.getIn(['meta', 'focus', 'x']);\n var focusY = media.getIn(['meta', 'focus', 'y']);\n var x = (focusX / 2 + .5) * 100;\n var y = (focusY / -2 + .5) * 100;\n var style = {};\n\n var label = void 0,\n icon = void 0;\n\n if (media.get('type') === 'gifv') {\n label = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'media-gallery__gifv__label'\n }, void 0, 'GIF');\n }\n\n if (visible) {\n style.backgroundImage = 'url(' + media.get('preview_url') + ')';\n style.backgroundPosition = x + '% ' + y + '%';\n } else {\n icon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account-gallery__item__icons'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-eye-slash'\n }));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-gallery__item'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_permalink__[\"a\" /* default */], {\n to: '/statuses/' + status.get('id'),\n href: status.get('url'),\n style: style,\n onInterceptClick: this.handleClick\n }, void 0, icon, label));\n };\n\n return MediaItem;\n}(__WEBPACK_IMPORTED_MODULE_6_react_immutable_pure_component___default.a), _class.propTypes = {\n media: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/account_gallery.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { fetchAccount } from '../../actions/accounts';\nimport { expandAccountMediaTimeline } from '../../actions/timelines';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport Column from '../ui/components/column';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { getAccountGallery } from '../../selectors';\nimport MediaItem from './components/media_item';\nimport HeaderContainer from '../account_timeline/containers/header_container';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport LoadMore from '../../components/load_more';\n\nconst mapStateToProps = (state, props) => ({\n medias: getAccountGallery(state, props.params.accountId),\n isLoading: state.getIn(['timelines', `account:${props.params.accountId}:media`, 'isLoading']),\n hasMore: state.getIn(['timelines', `account:${props.params.accountId}:media`, 'hasMore']),\n});\n\nclass LoadMoreMedia extends ImmutablePureComponent {\n\n static propTypes = {\n maxId: PropTypes.string,\n onLoadMore: PropTypes.func.isRequired,\n };\n\n handleLoadMore = () => {\n this.props.onLoadMore(this.props.maxId);\n }\n\n render () {\n return (\n <LoadMore\n disabled={this.props.disabled}\n onLoadMore={this.handleLoadMore}\n />\n );\n }\n\n}\n\n@connect(mapStateToProps)\nexport default class AccountGallery extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n medias: ImmutablePropTypes.list.isRequired,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n };\n\n componentDidMount () {\n this.props.dispatch(fetchAccount(this.props.params.accountId));\n this.props.dispatch(expandAccountMediaTimeline(this.props.params.accountId));\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(expandAccountMediaTimeline(this.props.params.accountId));\n }\n }\n\n handleScrollToBottom = () => {\n if (this.props.hasMore) {\n this.handleLoadMore(this.props.medias.last().getIn(['status', 'id']));\n }\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n const offset = scrollHeight - scrollTop - clientHeight;\n\n if (150 > offset && !this.props.isLoading) {\n this.handleScrollToBottom();\n }\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandAccountMediaTimeline(this.props.params.accountId, { maxId }));\n };\n\n handleLoadOlder = (e) => {\n e.preventDefault();\n this.handleScrollToBottom();\n }\n\n render () {\n const { medias, isLoading, hasMore } = this.props;\n\n let loadOlder = null;\n\n if (!medias && isLoading) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n if (!isLoading && medias.size > 0 && hasMore) {\n loadOlder = <LoadMore onClick={this.handleLoadOlder} />;\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='account_gallery'>\n <div className='scrollable' onScroll={this.handleScroll}>\n <HeaderContainer accountId={this.props.params.accountId} />\n\n <div className='account-gallery__container'>\n {medias.map((media, index) => media === null ? (\n <LoadMoreMedia\n key={'more:' + medias.getIn(index + 1, 'id')}\n maxId={index > 0 ? medias.getIn(index - 1, 'id') : null}\n />\n ) : (\n <MediaItem\n key={media.get('id')}\n media={media}\n />\n ))}\n {loadOlder}\n </div>\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_gallery/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport Header from '../components/header';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n unmuteAccount,\n} from '../../../actions/accounts';\nimport {\n mentionCompose,\n directCompose,\n} from '../../../actions/compose';\nimport { initMuteModal } from '../../../actions/mutes';\nimport { openModal } from '../../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { unfollowModal } from '../../../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId }) => ({\n account: getAccount(state, accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onDirect (account, router) {\n dispatch(directCompose(account, router));\n },\n\n onReblogToggle (account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(followAccount(account.get('id'), false));\n } else {\n dispatch(followAccount(account.get('id'), true));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n }\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Header));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/containers/header_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport InnerHeader from '../../account/components/header';\nimport ActionBar from '../../account/components/action_bar';\nimport MissingIndicator from '../../../components/missing_indicator';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport MovedNote from './moved_note';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n hideTabs: PropTypes.bool,\n };\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMention = () => {\n this.props.onMention(this.props.account, this.context.router.history);\n }\n\n handleDirect = () => {\n this.props.onDirect(this.props.account, this.context.router.history);\n }\n\n handleReblogToggle = () => {\n this.props.onReblogToggle(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n render () {\n const { account, hideTabs } = this.props;\n\n if (account === null) {\n return <MissingIndicator />;\n }\n\n return (\n <div className='account-timeline__header'>\n {account.get('moved') && <MovedNote from={account} to={account.get('moved')} />}\n\n <InnerHeader\n account={account}\n onFollow={this.handleFollow}\n onBlock={this.handleBlock}\n />\n\n <ActionBar\n account={account}\n onBlock={this.handleBlock}\n onMention={this.handleMention}\n onDirect={this.handleDirect}\n onReblogToggle={this.handleReblogToggle}\n onMute={this.handleMute}\n />\n\n {!hideTabs && (\n <div className='account__section-headline'>\n <NavLink exact to={`/accounts/${account.get('id')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>\n </div>\n )}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { autoPlayGif, me } from '../../../initial_state';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval. Click to cancel follow request' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n});\n\nclass Avatar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n isHovered: false,\n };\n\n handleMouseOver = () => {\n if (this.state.isHovered) return;\n this.setState({ isHovered: true });\n }\n\n handleMouseOut = () => {\n if (!this.state.isHovered) return;\n this.setState({ isHovered: false });\n }\n\n render () {\n const { account } = this.props;\n const { isHovered } = this.state;\n\n return (\n <a\n href={account.get('url')}\n className='account__header__avatar'\n role='presentation'\n target='_blank'\n rel='noopener'\n style={{ backgroundImage: `url(${autoPlayGif || isHovered ? account.get('avatar') : account.get('avatar_static')})` }}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onFocus={this.handleMouseOver}\n onBlur={this.handleMouseOut}\n >\n <span style={{ display: 'none' }}>{account.get('acct')}</span>\n </a>\n );\n }\n\n}\n\n@injectIntl\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { account, intl } = this.props;\n\n if (!account) {\n return null;\n }\n\n let info = '';\n let mutingInfo = '';\n let actionBtn = '';\n let lockedIcon = '';\n\n if (me !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.follows_you' defaultMessage='Follows you' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.blocked' defaultMessage='Blocked' /></span>;\n }\n\n if (me !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.muted' defaultMessage='Muted' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.domain_blocked' defaultMessage='Domain hidden' /></span>;\n }\n\n if (me !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} active icon='hourglass' title={intl.formatMessage(messages.requested)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon={account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus'} active={account.getIn(['relationship', 'following'])} title={intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.props.onBlock} />\n </div>\n );\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = <i className='fa fa-lock' />;\n }\n\n const content = { __html: account.get('note_emojified') };\n const displayNameHtml = { __html: account.get('display_name_html') };\n\n return (\n <div className={classNames('account__header', { inactive: !!account.get('moved') })} style={{ backgroundImage: `url(${account.get('header')})` }}>\n <div>\n <Avatar account={account} />\n\n <span className='account__header__display-name' dangerouslySetInnerHTML={displayNameHtml} />\n <span className='account__header__username'>@{account.get('acct')} {lockedIcon}</span>\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n\n {info}\n {mutingInfo}\n {actionBtn}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { Link } from 'react-router-dom';\nimport { defineMessages, injectIntl, FormattedMessage, FormattedNumber } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n mention: { id: 'account.mention', defaultMessage: 'Mention @{name}' },\n direct: { id: 'account.direct', defaultMessage: 'Direct message @{name}' },\n edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n block: { id: 'account.block', defaultMessage: 'Block @{name}' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n report: { id: 'account.report', defaultMessage: 'Report @{name}' },\n share: { id: 'account.share', defaultMessage: 'Share @{name}\\'s profile' },\n media: { id: 'account.media', defaultMessage: 'Media' },\n hideReblogs: { id: 'account.hide_reblogs', defaultMessage: 'Hide boosts from @{name}' },\n showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleShare = () => {\n navigator.share({\n url: this.props.account.get('url'),\n });\n }\n\n render () {\n const { account, intl } = this.props;\n\n let menu = [];\n let extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === me) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = (\n <div className='account__disclaimer'>\n <FormattedMessage\n id='account.disclaimer_full'\n defaultMessage=\"Information below may reflect the user's profile incompletely.\"\n />\n {' '}\n <a target='_blank' rel='noopener' href={account.get('url')}>\n <FormattedMessage id='account.view_full_profile' defaultMessage='View full profile' />\n </a>\n </div>\n );\n\n menu.push(null);\n }\n\n return (\n <div>\n {extraInfo}\n\n <div className='account__action-bar'>\n <div className='account__action-bar-dropdown'>\n <DropdownMenuContainer items={menu} icon='bars' size={24} direction='right' />\n </div>\n\n <div className='account__action-bar-links'>\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}`}>\n <span><FormattedMessage id='account.posts' defaultMessage='Toots' /></span>\n <strong><FormattedNumber value={account.get('statuses_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/following`}>\n <span><FormattedMessage id='account.follows' defaultMessage='Follows' /></span>\n <strong><FormattedNumber value={account.get('following_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/followers`}>\n <span><FormattedMessage id='account.followers' defaultMessage='Followers' /></span>\n <strong><FormattedNumber value={account.get('followers_count')} /></strong>\n </Link>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/action_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport AvatarOverlay from '../../../components/avatar_overlay';\nimport DisplayName from '../../../components/display_name';\n\nexport default class MovedNote extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n from: ImmutablePropTypes.map.isRequired,\n to: ImmutablePropTypes.map.isRequired,\n };\n\n handleAccountClick = e => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.to.get('id')}`);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { from, to } = this.props;\n const displayNameHtml = { __html: from.get('display_name_html') };\n\n return (\n <div className='account__moved-note'>\n <div className='account__moved-note__message'>\n <div className='account__moved-note__icon-wrapper'><i className='fa fa-fw fa-suitcase account__moved-note__icon' /></div>\n <FormattedMessage id='account.moved_to' defaultMessage='{name} has moved to:' values={{ name: <bdi><strong dangerouslySetInnerHTML={displayNameHtml} /></bdi> }} />\n </div>\n\n <a href={to.get('url')} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><AvatarOverlay account={to} friend={from} /></div>\n <DisplayName account={to} />\n </a>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/moved_note.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Permalink from '../../../components/permalink';\nimport { displaySensitiveMedia } from '../../../initial_state';\n\nexport default class MediaItem extends ImmutablePureComponent {\n\n static propTypes = {\n media: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n visible: !this.props.media.getIn(['status', 'sensitive']) || displaySensitiveMedia,\n };\n\n handleClick = () => {\n if (!this.state.visible) {\n this.setState({ visible: true });\n return true;\n }\n\n return false;\n }\n\n render () {\n const { media } = this.props;\n const { visible } = this.state;\n const status = media.get('status');\n const focusX = media.getIn(['meta', 'focus', 'x']);\n const focusY = media.getIn(['meta', 'focus', 'y']);\n const x = ((focusX / 2) + .5) * 100;\n const y = ((focusY / -2) + .5) * 100;\n const style = {};\n\n let label, icon;\n\n if (media.get('type') === 'gifv') {\n label = <span className='media-gallery__gifv__label'>GIF</span>;\n }\n\n if (visible) {\n style.backgroundImage = `url(${media.get('preview_url')})`;\n style.backgroundPosition = `${x}% ${y}%`;\n } else {\n icon = (\n <span className='account-gallery__item__icons'>\n <i className='fa fa-eye-slash' />\n </span>\n );\n }\n\n return (\n <div className='account-gallery__item'>\n <Permalink to={`/statuses/${status.get('id')}`} href={status.get('url')} style={style} onInterceptClick={this.handleClick}>\n {icon}\n {label}\n </Permalink>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_gallery/components/media_item.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/account_timeline.js b/priv/static/packs/features/account_timeline.js index bb276fbac..474234831 100644 --- a/priv/static/packs/features/account_timeline.js +++ b/priv/static/packs/features/account_timeline.js @@ -1,2 +1,2 @@ -webpackJsonp([6],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(0),f=n.n(h),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},150:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),h=n(10),f=n.n(h),g=function(e){function t(){var n,o,i;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.handleClick=function(){o.props.onClick()},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,n=e.type,o=e.active,a=e.columnHeaderId,s="";return t&&(s=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:f()("column-header",{active:o}),id:a||null},void 0,i()("button",{onClick:this.handleClick},void 0,s,n))},t}(p.a.PureComponent)},283:function(e,t,n){"use strict";function o(e){return function(t){t({type:a,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),a="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(34),p=n.n(d),h=n(0),f=n.n(h),g=n(150),v=n(90),m=n(35),b=function(e){function t(){var n,o,i;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.handleHeaderClick=function(){var e=o.node.querySelector(".scrollable");e&&(o._interruptScrollAnimation=Object(v.b)(e))},o.handleScroll=p()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(e){o.node=e},i=n,c()(o,i)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(v.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,n=e.icon,o=e.children,a=e.active,s=e.hideHeadingOnMobile,r=t&&(!s||s&&!Object(m.b)(window.innerWidth)),c=r&&t.replace(/ /g,"-"),l=r&&i()(g.a,{icon:n,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:c});return f.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":c,className:"column",onScroll:this.handleScroll},l,o)},t}(f.a.PureComponent)},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(9)),r=n(153),c=n(66),l=n(18),u=n(67),d=n(22),p=n(91),h=n(283),f=n(151),g=n(26),v=n(6),m=n(11),b=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),M=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},y=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!m.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(m.e?Object(g.d)("CONFIRM",{message:n.formatMessage(b.deleteMessage),confirm:n.formatMessage(b.deleteConfirm),onConfirm:function(){return e(Object(p.f)(t.get("id")))}}):Object(p.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(b.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.k)(t.get("account"),t))},onMute:function(t){e(Object(h.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(p.k)(t.get("id")):Object(p.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(p.j)(t.get("id")):Object(p.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(M,y)(r.a))},286:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(0),f=n.n(h),g=n(6),v=n(5),m=n.n(v),b=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},i=n,u()(o,i)}return p()(t,e),t.prototype.render=function(){return s()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,s()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),s()(g.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(f.a.PureComponent),o.contextTypes={router:m.a.object},i)},287:function(e,t,n){"use strict";n.d(t,"a",function(){return j});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(93),f=n.n(h),g=n(0),v=n.n(g),m=n(152),b=n(5),M=n.n(b),y=n(288),_=n(149),k=n(293),O=n(8),w=(n.n(O),n(10)),I=n.n(w),R=n(154),j=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new k.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,a=n-t-i;o._oldScrollPosition=n-t,400>a&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(R.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return p()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(R.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(R.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof O.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,a=t.shouldUpdateScroll,r=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,p=this.state.fullscreen,h=v.a.Children.count(n),f=c&&h>0&&d?s()(_.a,{visible:!r,onClick:this.handleLoadMore}):null,g=null;return g=r||h>0||!u?v.a.createElement("div",{className:I()("scrollable",{fullscreen:p}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(y.a,{id:t.key,index:n,listLength:h,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(m.a,{scrollKey:o,shouldUpdateScroll:a},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:M.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),a=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},r=function(e){return{onHeightChange:function(t,n,o){e(Object(a.d)(t,n,o))}}};t.a=Object(o.connect)(s,r)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),a=n(3),s=n.n(a),r=n(4),c=n.n(r),l=n(0),u=n.n(l),d=n(290),p=n(292),h=n(8),f=(n.n(h),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,a;i()(this,t);for(var r=arguments.length,c=Array(r),l=0;l<r;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(p.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},a=n,s()(o,a)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(h.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,a=e.cachedHeight,s=this.state,r=s.isIntersecting,c=s.isHidden;return r||!c&&!a?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||a)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;r.length&&e.timeRemaining()>0;)r.shift()();r.length?requestIdleCallback(o):c=!1}function i(e){r.push(e),c||(c=!0,requestIdleCallback(o))}var a=n(291),s=n.n(a),r=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),a=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=a},294:function(e,t,n){"use strict";n.d(t,"a",function(){return H});var o,i,a,s,r=n(29),c=n.n(r),l=n(31),u=n.n(l),d=n(2),p=n.n(d),h=n(1),f=n.n(h),g=n(3),v=n.n(g),m=n(4),b=n.n(m),M=n(34),y=n.n(M),_=n(0),k=n.n(_),O=n(13),w=n.n(O),I=n(5),R=n.n(I),j=n(285),C=n(12),S=n.n(C),N=n(149),L=n(287),T=n(6),x=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,v()(o,i)}return b()(t,e),t.prototype.render=function(){return p()(N.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(S.a),o.propTypes={disabled:R.a.bool,maxId:R.a.string,onClick:R.a.func.isRequired},i),H=(s=a=function(e){function t(){var n,o,i;f()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=y()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,v()(o,i)}return b()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),a=i.isLoading;if(i.isPartial)return p()("div",{className:"regeneration-indicator"},void 0,p()("div",{},void 0,p()("div",{className:"regeneration-indicator__label"},void 0,p()(T.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),p()(T.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=a||n.size>0?n.map(function(t,i){return null===t?p()(x,{disabled:a,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):p()(j.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return k.a.createElement(L.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(S.a),a.propTypes={scrollKey:R.a.string.isRequired,statusIds:w.a.list.isRequired,onLoadMore:R.a.func,onScrollToTop:R.a.func,onScroll:R.a.func,trackScroll:R.a.bool,shouldUpdateScroll:R.a.func,isLoading:R.a.bool,isPartial:R.a.bool,hasMore:R.a.bool,prepend:R.a.node,emptyMessage:R.a.node},a.defaultProps={trackScroll:!0},s)},814:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return T});var o,i,a,s,r=n(2),c=n.n(r),l=n(1),u=n.n(l),d=n(3),p=n.n(d),h=n(4),f=n.n(h),g=n(0),v=(n.n(g),n(9)),m=n(13),b=n.n(m),M=n(5),y=n.n(M),_=n(22),k=n(19),O=n(294),w=n(296),I=n(284),R=n(846),j=n(286),C=n(8),S=(n.n(C),n(12)),N=n.n(S),L=function(e,t){var n=t.params.accountId,o=t.withReplies,i=void 0!==o&&o,a=i?n+":with_replies":n;return{statusIds:e.getIn(["timelines","account:"+a,"items"],Object(C.List)()),isLoading:e.getIn(["timelines","account:"+a,"isLoading"]),hasMore:e.getIn(["timelines","account:"+a,"hasMore"])}},T=(o=Object(v.connect)(L))((s=a=function(e){function t(){var n,o,i;u()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.handleLoadMore=function(e){o.props.dispatch(Object(k.l)(o.props.params.accountId,{maxId:e,withReplies:o.props.withReplies}))},i=n,p()(o,i)}return f()(t,e),t.prototype.componentWillMount=function(){var e=this.props,t=e.params.accountId,n=e.withReplies;this.props.dispatch(Object(_.u)(t)),this.props.dispatch(Object(k.l)(t,{withReplies:n}))},t.prototype.componentWillReceiveProps=function(e){(e.params.accountId!==this.props.params.accountId&&e.params.accountId||e.withReplies!==this.props.withReplies)&&(this.props.dispatch(Object(_.u)(e.params.accountId)),this.props.dispatch(Object(k.l)(e.params.accountId,{withReplies:e.params.withReplies})))},t.prototype.render=function(){var e=this.props,t=e.statusIds,n=e.isLoading,o=e.hasMore;return!t&&n?c()(I.a,{},void 0,c()(w.a,{})):c()(I.a,{},void 0,c()(j.a,{}),c()(O.a,{prepend:c()(R.a,{accountId:this.props.params.accountId}),scrollKey:"account_timeline",statusIds:t,isLoading:n,hasMore:o,onLoadMore:this.handleLoadMore}))},t}(N.a),a.propTypes={params:y.a.object.isRequired,dispatch:y.a.func.isRequired,statusIds:b.a.list,isLoading:y.a.bool,hasMore:y.a.bool,withReplies:y.a.bool},i=s))||i},845:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(6)),r=function(){return i()("div",{className:"regeneration-indicator missing-indicator"},void 0,i()("div",{},void 0,i()("div",{className:"regeneration-indicator__label"},void 0,i()(s.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),i()(s.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=r},846:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(9)),r=n(66),c=n(847),l=n(22),u=n(18),d=n(283),p=n(151),h=n(26),f=n(6),g=n(11),v=Object(f.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),m=function(){var e=Object(r.c)();return function(t,n){var o=n.accountId;return{account:e(t,o)}}},b=function(e,t){var n=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?g.j?Object(h.d)("CONFIRM",{message:i()(f.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(v.unfollowConfirm),onConfirm:function(){return e(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(h.d)("CONFIRM",{message:i()(f.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(v.blockConfirm),onConfirm:function(){return e(Object(l.q)(t.get("id")))}}))},onMention:function(t,n){e(Object(u.R)(t,n))},onDirect:function(t,n){e(Object(u.N)(t,n))},onReblogToggle:function(t){e(t.getIn(["relationship","showing_reblogs"])?Object(l.z)(t.get("id"),!1):Object(l.z)(t.get("id"),!0))},onReport:function(t){e(Object(p.k)(t))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(d.a)(t))}}};t.a=Object(f.g)(Object(s.connect)(m,b)(c.a))},847:function(e,t,n){"use strict";n.d(t,"a",function(){return R});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(0),f=(n.n(h),n(13)),g=n.n(f),v=n(5),m=n.n(v),b=n(848),M=n(849),y=n(845),_=n(12),k=n.n(_),O=n(850),w=n(6),I=n(44),R=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMention=function(){o.props.onMention(o.props.account,o.context.router.history)},o.handleDirect=function(){o.props.onDirect(o.props.account,o.context.router.history)},o.handleReport=function(){o.props.onReport(o.props.account)},o.handleReblogToggle=function(){o.props.onReblogToggle(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},i=n,u()(o,i)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.hideTabs;return null===t?s()(y.a,{}):s()("div",{className:"account-timeline__header"},void 0,t.get("moved")&&s()(O.a,{from:t,to:t.get("moved")}),s()(b.a,{account:t,onFollow:this.handleFollow,onBlock:this.handleBlock}),s()(M.a,{account:t,onBlock:this.handleBlock,onMention:this.handleMention,onDirect:this.handleDirect,onReblogToggle:this.handleReblogToggle,onReport:this.handleReport,onMute:this.handleMute}),!n&&s()("div",{className:"account__section-headline"},void 0,s()(I.c,{exact:!0,to:"/accounts/"+t.get("id")},void 0,s()(w.b,{id:"account.posts",defaultMessage:"Toots"})),s()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/with_replies"},void 0,s()(w.b,{id:"account.posts_with_replies",defaultMessage:"Toots and replies"})),s()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/media"},void 0,s()(w.b,{id:"account.media",defaultMessage:"Media"}))))},t}(k.a),o.propTypes={account:g.a.map,onFollow:m.a.func.isRequired,onBlock:m.a.func.isRequired,onMention:m.a.func.isRequired,onDirect:m.a.func.isRequired,onReblogToggle:m.a.func.isRequired,onReport:m.a.func.isRequired,onMute:m.a.func.isRequired,hideTabs:m.a.bool},o.contextTypes={router:m.a.object},i)},848:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,a,s,r,c=n(2),l=n.n(c),u=n(1),d=n.n(u),p=n(3),h=n.n(p),f=n(4),g=n.n(f),v=n(0),m=(n.n(v),n(13)),b=n.n(m),M=n(5),y=n.n(M),_=n(6),k=n(23),O=n(27),w=(n.n(O),n(12)),I=n.n(w),R=n(11),j=n(10),C=n.n(j),S=Object(_.f)({unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},follow:{id:"account.follow",defaultMessage:"Follow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval. Click to cancel follow request"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"}}),N=(i=o=function(e){function t(){var n,o,i;d()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.state={isHovered:!1},o.handleMouseOver=function(){o.state.isHovered||o.setState({isHovered:!0})},o.handleMouseOut=function(){o.state.isHovered&&o.setState({isHovered:!1})},i=n,h()(o,i)}return g()(t,e),t.prototype.render=function(){var e=this.props.account,t=this.state.isHovered;return l()("a",{href:e.get("url"),className:"account__header__avatar",role:"presentation",target:"_blank",rel:"noopener",style:{backgroundImage:"url("+(R.a||t?e.get("avatar"):e.get("avatar_static"))+")"},onMouseOver:this.handleMouseOver,onMouseOut:this.handleMouseOut,onFocus:this.handleMouseOver,onBlur:this.handleMouseOut},void 0,l()("span",{style:{display:"none"}},void 0,e.get("acct")))},t}(I.a),o.propTypes={account:b.a.map.isRequired},i),L=Object(_.g)((r=s=function(e){function t(){return d()(this,t),h()(this,e.apply(this,arguments))}return g()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.intl;if(!t)return null;var o="",i="",a="",s="";R.g!==t.get("id")&&t.getIn(["relationship","followed_by"])?o=l()("span",{className:"account--follows-info"},void 0,l()(_.b,{id:"account.follows_you",defaultMessage:"Follows you"})):R.g!==t.get("id")&&t.getIn(["relationship","blocking"])&&(o=l()("span",{className:"account--follows-info"},void 0,l()(_.b,{id:"account.blocked",defaultMessage:"Blocked"}))),R.g!==t.get("id")&&t.getIn(["relationship","muting"])?i=l()("span",{className:"account--muting-info"},void 0,l()(_.b,{id:"account.muted",defaultMessage:"Muted"})):R.g!==t.get("id")&&t.getIn(["relationship","domain_blocking"])&&(i=l()("span",{className:"account--muting-info"},void 0,l()(_.b,{id:"account.domain_blocked",defaultMessage:"Domain hidden"}))),R.g!==t.get("id")&&(t.getIn(["relationship","requested"])?a=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,active:!0,icon:"hourglass",title:n.formatMessage(S.requested),onClick:this.props.onFollow})):t.getIn(["relationship","blocking"])?t.getIn(["relationship","blocking"])&&(a=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:"unlock-alt",title:n.formatMessage(S.unblock,{name:t.get("username")}),onClick:this.props.onBlock}))):a=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:t.getIn(["relationship","following"])?"user-times":"user-plus",active:t.getIn(["relationship","following"]),title:n.formatMessage(t.getIn(["relationship","following"])?S.unfollow:S.follow),onClick:this.props.onFollow}))),t.get("moved")&&!t.getIn(["relationship","following"])&&(a=""),t.get("locked")&&(s=l()("i",{className:"fa fa-lock"}));var r={__html:t.get("note_emojified")},c={__html:t.get("display_name_html")};return l()("div",{className:C()("account__header",{inactive:!!t.get("moved")}),style:{backgroundImage:"url("+t.get("header")+")"}},void 0,l()("div",{},void 0,l()(N,{account:t}),l()("span",{className:"account__header__display-name",dangerouslySetInnerHTML:c}),l()("span",{className:"account__header__username"},void 0,"@",t.get("acct")," ",s),l()("div",{className:"account__header__content",dangerouslySetInnerHTML:r}),o,i,a))},t}(I.a),s.propTypes={account:b.a.map,onFollow:y.a.func.isRequired,onBlock:y.a.func.isRequired,intl:y.a.object.isRequired},a=r))||a},849:function(e,t,n){"use strict";n.d(t,"a",function(){return M});var o,i=n(2),a=n.n(i),s=n(1),r=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),p=n(0),h=n.n(p),f=n(299),g=n(44),v=n(6),m=n(11),b=Object(v.f)({mention:{id:"account.mention",defaultMessage:"Mention @{name}"},direct:{id:"account.direct",defaultMessage:"Direct message @{name}"},edit_profile:{id:"account.edit_profile",defaultMessage:"Edit profile"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},block:{id:"account.block",defaultMessage:"Block @{name}"},follow:{id:"account.follow",defaultMessage:"Follow"},report:{id:"account.report",defaultMessage:"Report @{name}"},share:{id:"account.share",defaultMessage:"Share @{name}'s profile"},media:{id:"account.media",defaultMessage:"Media"},hideReblogs:{id:"account.hide_reblogs",defaultMessage:"Hide boosts from @{name}"},showReblogs:{id:"account.show_reblogs",defaultMessage:"Show boosts from @{name}"}}),M=Object(v.g)(o=function(e){function t(){var n,o,i;r()(this,t);for(var a=arguments.length,s=Array(a),c=0;c<a;c++)s[c]=arguments[c];return n=o=l()(this,e.call.apply(e,[this].concat(s))),o.handleShare=function(){navigator.share({url:o.props.account.get("url")})},i=n,l()(o,i)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.intl,o=[],i="";return o.push({text:n.formatMessage(b.mention,{name:t.get("username")}),action:this.props.onMention}),o.push({text:n.formatMessage(b.direct,{name:t.get("username")}),action:this.props.onDirect}),"share"in navigator&&o.push({text:n.formatMessage(b.share,{name:t.get("username")}),action:this.handleShare}),o.push(null),t.get("id")===m.g?o.push({text:n.formatMessage(b.edit_profile),href:"/settings/profile"}):(t.getIn(["relationship","following"])&&(t.getIn(["relationship","showing_reblogs"])?o.push({text:n.formatMessage(b.hideReblogs,{name:t.get("username")}),action:this.props.onReblogToggle}):o.push({text:n.formatMessage(b.showReblogs,{name:t.get("username")}),action:this.props.onReblogToggle})),t.getIn(["relationship","blocking"])?o.push({text:n.formatMessage(b.unblock,{name:t.get("username")}),action:this.props.onBlock}):o.push({text:n.formatMessage(b.block,{name:t.get("username")}),action:this.props.onBlock}),o.push({text:n.formatMessage(b.report,{name:t.get("username")}),action:this.props.onReport})),t.get("acct")!==t.get("username")&&(i=a()("div",{className:"account__disclaimer"},void 0,a()(v.b,{id:"account.disclaimer_full",defaultMessage:"Information below may reflect the user's profile incompletely."})," ",a()("a",{target:"_blank",rel:"noopener",href:t.get("url")},void 0,a()(v.b,{id:"account.view_full_profile",defaultMessage:"View full profile"}))),o.push(null)),a()("div",{},void 0,i,a()("div",{className:"account__action-bar"},void 0,a()("div",{className:"account__action-bar-dropdown"},void 0,a()(f.a,{items:o,icon:"bars",size:24,direction:"right"})),a()("div",{className:"account__action-bar-links"},void 0,a()(g.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")},void 0,a()("span",{},void 0,a()(v.b,{id:"account.posts",defaultMessage:"Toots"})),a()("strong",{},void 0,a()(v.c,{value:t.get("statuses_count")}))),a()(g.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/following"},void 0,a()("span",{},void 0,a()(v.b,{id:"account.follows",defaultMessage:"Follows"})),a()("strong",{},void 0,a()(v.c,{value:t.get("following_count")}))),a()(g.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/followers"},void 0,a()("span",{},void 0,a()(v.b,{id:"account.followers",defaultMessage:"Followers"})),a()("strong",{},void 0,a()(v.c,{value:t.get("followers_count")}))))))},t}(h.a.PureComponent))||o},850:function(e,t,n){"use strict";n.d(t,"a",function(){return O});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(0),f=(n.n(h),n(5)),g=n.n(f),v=n(13),m=n.n(v),b=n(6),M=n(12),y=n.n(M),_=n(301),k=n(55),O=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),o.context.router.history.push("/accounts/"+o.props.to.get("id"))),e.stopPropagation()},i=n,u()(o,i)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.from,n=e.to,o={__html:t.get("display_name_html")};return s()("div",{className:"account__moved-note"},void 0,s()("div",{className:"account__moved-note__message"},void 0,s()("div",{className:"account__moved-note__icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-suitcase account__moved-note__icon"})),s()(b.b,{id:"account.moved_to",defaultMessage:"{name} has moved to:",values:{name:s()("bdi",{},void 0,s()("strong",{dangerouslySetInnerHTML:o}))}})),s()("a",{href:n.get("url"),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,s()("div",{className:"detailed-status__display-avatar"},void 0,s()(_.a,{account:n,friend:t})),s()(k.a,{account:n})))},t}(y.a),o.contextTypes={router:g.a.object},o.propTypes={from:m.a.map.isRequired,to:m.a.map.isRequired},i)}}); +webpackJsonp([6],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(0),f=n.n(h),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},150:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),h=n(10),f=n.n(h),g=function(e){function t(){var n,o,i;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.handleClick=function(){o.props.onClick()},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,n=e.type,o=e.active,a=e.columnHeaderId,s="";return t&&(s=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:f()("column-header",{active:o}),id:a||null},void 0,i()("button",{onClick:this.handleClick},void 0,s,n))},t}(p.a.PureComponent)},282:function(e,t,n){"use strict";function o(e){return function(t){t({type:a,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),a="MUTES_INIT_MODAL"},283:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(34),p=n.n(d),h=n(0),f=n.n(h),g=n(150),v=n(90),m=n(35),b=function(e){function t(){var n,o,i;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.handleHeaderClick=function(){var e=o.node.querySelector(".scrollable");e&&(o._interruptScrollAnimation=Object(v.b)(e))},o.handleScroll=p()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(e){o.node=e},i=n,c()(o,i)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(v.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,n=e.icon,o=e.children,a=e.active,s=e.hideHeadingOnMobile,r=t&&(!s||s&&!Object(m.b)(window.innerWidth)),c=r&&t.replace(/ /g,"-"),l=r&&i()(g.a,{icon:n,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:c});return f.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":c,className:"column",onScroll:this.handleScroll},l,o)},t}(f.a.PureComponent)},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:a,account:e,status:t}),n(Object(i.d)("REPORT"))}}t.a=o;var i=(n(14),n(26)),a="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(9)),r=n(152),c=n(66),l=n(18),u=n(67),d=n(22),p=n(91),h=n(282),f=n(284),g=n(26),v=n(6),m=n(11),b=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),M=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},y=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!m.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(m.e?Object(g.d)("CONFIRM",{message:n.formatMessage(b.deleteMessage),confirm:n.formatMessage(b.deleteConfirm),onConfirm:function(){return e(Object(p.f)(t.get("id")))}}):Object(p.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(b.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.a)(t.get("account"),t))},onMute:function(t){e(Object(h.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(p.k)(t.get("id")):Object(p.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(p.j)(t.get("id")):Object(p.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(M,y)(r.a))},286:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(0),f=n.n(h),g=n(6),v=n(5),m=n.n(v),b=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},i=n,u()(o,i)}return p()(t,e),t.prototype.render=function(){return s()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,s()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),s()(g.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(f.a.PureComponent),o.contextTypes={router:m.a.object},i)},287:function(e,t,n){"use strict";n.d(t,"a",function(){return C});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(93),f=n.n(h),g=n(0),v=n.n(g),m=n(151),b=n(5),M=n.n(b),y=n(288),_=n(149),k=n(293),O=n(8),w=(n.n(O),n(10)),I=n.n(w),j=n(153),C=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new k.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,a=n-t-i;o._oldScrollPosition=n-t,400>a&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(j.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return p()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(j.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(j.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof O.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,a=t.shouldUpdateScroll,r=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,p=this.state.fullscreen,h=v.a.Children.count(n),f=c&&h>0&&d?s()(_.a,{visible:!r,onClick:this.handleLoadMore}):null,g=null;return g=r||h>0||!u?v.a.createElement("div",{className:I()("scrollable",{fullscreen:p}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(y.a,{id:t.key,index:n,listLength:h,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(m.a,{scrollKey:o,shouldUpdateScroll:a},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:M.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),a=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},r=function(e){return{onHeightChange:function(t,n,o){e(Object(a.d)(t,n,o))}}};t.a=Object(o.connect)(s,r)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),a=n(3),s=n.n(a),r=n(4),c=n.n(r),l=n(0),u=n.n(l),d=n(290),p=n(292),h=n(8),f=(n.n(h),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,a;i()(this,t);for(var r=arguments.length,c=Array(r),l=0;l<r;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(p.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},a=n,s()(o,a)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(h.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,a=e.cachedHeight,s=this.state,r=s.isIntersecting,c=s.isHidden;return r||!c&&!a?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||a)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;r.length&&e.timeRemaining()>0;)r.shift()();r.length?requestIdleCallback(o):c=!1}function i(e){r.push(e),c||(c=!0,requestIdleCallback(o))}var a=n(291),s=n.n(a),r=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),a=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=a},294:function(e,t,n){"use strict";n.d(t,"a",function(){return H});var o,i,a,s,r=n(29),c=n.n(r),l=n(31),u=n.n(l),d=n(2),p=n.n(d),h=n(1),f=n.n(h),g=n(3),v=n.n(g),m=n(4),b=n.n(m),M=n(34),y=n.n(M),_=n(0),k=n.n(_),O=n(13),w=n.n(O),I=n(5),j=n.n(I),C=n(285),R=n(12),S=n.n(R),N=n(149),T=n(287),L=n(6),x=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,v()(o,i)}return b()(t,e),t.prototype.render=function(){return p()(N.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(S.a),o.propTypes={disabled:j.a.bool,maxId:j.a.string,onClick:j.a.func.isRequired},i),H=(s=a=function(e){function t(){var n,o,i;f()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=y()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,v()(o,i)}return b()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),a=i.isLoading;if(i.isPartial)return p()("div",{className:"regeneration-indicator"},void 0,p()("div",{},void 0,p()("div",{className:"regeneration-indicator__label"},void 0,p()(L.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),p()(L.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=a||n.size>0?n.map(function(t,i){return null===t?p()(x,{disabled:a,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):p()(C.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return k.a.createElement(T.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(S.a),a.propTypes={scrollKey:j.a.string.isRequired,statusIds:w.a.list.isRequired,onLoadMore:j.a.func,onScrollToTop:j.a.func,onScroll:j.a.func,trackScroll:j.a.bool,shouldUpdateScroll:j.a.func,isLoading:j.a.bool,isPartial:j.a.bool,hasMore:j.a.bool,prepend:j.a.node,emptyMessage:j.a.node},a.defaultProps={trackScroll:!0},s)},813:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return L});var o,i,a,s,r=n(2),c=n.n(r),l=n(1),u=n.n(l),d=n(3),p=n.n(d),h=n(4),f=n.n(h),g=n(0),v=(n.n(g),n(9)),m=n(13),b=n.n(m),M=n(5),y=n.n(M),_=n(22),k=n(19),O=n(294),w=n(296),I=n(283),j=n(844),C=n(286),R=n(8),S=(n.n(R),n(12)),N=n.n(S),T=function(e,t){var n=t.params.accountId,o=t.withReplies,i=void 0!==o&&o,a=i?n+":with_replies":n;return{statusIds:e.getIn(["timelines","account:"+a,"items"],Object(R.List)()),isLoading:e.getIn(["timelines","account:"+a,"isLoading"]),hasMore:e.getIn(["timelines","account:"+a,"hasMore"])}},L=(o=Object(v.connect)(T))((s=a=function(e){function t(){var n,o,i;u()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.handleLoadMore=function(e){o.props.dispatch(Object(k.l)(o.props.params.accountId,{maxId:e,withReplies:o.props.withReplies}))},i=n,p()(o,i)}return f()(t,e),t.prototype.componentWillMount=function(){var e=this.props,t=e.params.accountId,n=e.withReplies;this.props.dispatch(Object(_.u)(t)),this.props.dispatch(Object(k.l)(t,{withReplies:n}))},t.prototype.componentWillReceiveProps=function(e){(e.params.accountId!==this.props.params.accountId&&e.params.accountId||e.withReplies!==this.props.withReplies)&&(this.props.dispatch(Object(_.u)(e.params.accountId)),this.props.dispatch(Object(k.l)(e.params.accountId,{withReplies:e.params.withReplies})))},t.prototype.render=function(){var e=this.props,t=e.statusIds,n=e.isLoading,o=e.hasMore;return!t&&n?c()(I.a,{},void 0,c()(w.a,{})):c()(I.a,{},void 0,c()(C.a,{}),c()(O.a,{prepend:c()(j.a,{accountId:this.props.params.accountId}),scrollKey:"account_timeline",statusIds:t,isLoading:n,hasMore:o,onLoadMore:this.handleLoadMore}))},t}(N.a),a.propTypes={params:y.a.object.isRequired,dispatch:y.a.func.isRequired,statusIds:b.a.list,isLoading:y.a.bool,hasMore:y.a.bool,withReplies:y.a.bool},i=s))||i},843:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(6)),r=function(){return i()("div",{className:"regeneration-indicator missing-indicator"},void 0,i()("div",{},void 0,i()("div",{className:"regeneration-indicator__label"},void 0,i()(s.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),i()(s.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=r},844:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(9)),r=n(66),c=n(845),l=n(22),u=n(18),d=n(282),p=n(26),h=n(6),f=n(11),g=Object(h.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),v=function(){var e=Object(r.c)();return function(t,n){var o=n.accountId;return{account:e(t,o)}}},m=function(e,t){var n=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?f.j?Object(p.d)("CONFIRM",{message:i()(h.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(g.unfollowConfirm),onConfirm:function(){return e(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(p.d)("CONFIRM",{message:i()(h.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(g.blockConfirm),onConfirm:function(){return e(Object(l.q)(t.get("id")))}}))},onMention:function(t,n){e(Object(u.R)(t,n))},onDirect:function(t,n){e(Object(u.N)(t,n))},onReblogToggle:function(t){e(t.getIn(["relationship","showing_reblogs"])?Object(l.z)(t.get("id"),!1):Object(l.z)(t.get("id"),!0))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(d.a)(t))}}};t.a=Object(h.g)(Object(s.connect)(v,m)(c.a))},845:function(e,t,n){"use strict";n.d(t,"a",function(){return j});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(0),f=(n.n(h),n(13)),g=n.n(f),v=n(5),m=n.n(v),b=n(846),M=n(847),y=n(843),_=n(12),k=n.n(_),O=n(848),w=n(6),I=n(44),j=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMention=function(){o.props.onMention(o.props.account,o.context.router.history)},o.handleDirect=function(){o.props.onDirect(o.props.account,o.context.router.history)},o.handleReblogToggle=function(){o.props.onReblogToggle(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},i=n,u()(o,i)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.hideTabs;return null===t?s()(y.a,{}):s()("div",{className:"account-timeline__header"},void 0,t.get("moved")&&s()(O.a,{from:t,to:t.get("moved")}),s()(b.a,{account:t,onFollow:this.handleFollow,onBlock:this.handleBlock}),s()(M.a,{account:t,onBlock:this.handleBlock,onMention:this.handleMention,onDirect:this.handleDirect,onReblogToggle:this.handleReblogToggle,onMute:this.handleMute}),!n&&s()("div",{className:"account__section-headline"},void 0,s()(I.c,{exact:!0,to:"/accounts/"+t.get("id")},void 0,s()(w.b,{id:"account.posts",defaultMessage:"Toots"})),s()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/with_replies"},void 0,s()(w.b,{id:"account.posts_with_replies",defaultMessage:"Toots and replies"})),s()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/media"},void 0,s()(w.b,{id:"account.media",defaultMessage:"Media"}))))},t}(k.a),o.propTypes={account:g.a.map,onFollow:m.a.func.isRequired,onBlock:m.a.func.isRequired,onMention:m.a.func.isRequired,onDirect:m.a.func.isRequired,onReblogToggle:m.a.func.isRequired,onMute:m.a.func.isRequired,hideTabs:m.a.bool},o.contextTypes={router:m.a.object},i)},846:function(e,t,n){"use strict";n.d(t,"a",function(){return T});var o,i,a,s,r,c=n(2),l=n.n(c),u=n(1),d=n.n(u),p=n(3),h=n.n(p),f=n(4),g=n.n(f),v=n(0),m=(n.n(v),n(13)),b=n.n(m),M=n(5),y=n.n(M),_=n(6),k=n(23),O=n(27),w=(n.n(O),n(12)),I=n.n(w),j=n(11),C=n(10),R=n.n(C),S=Object(_.f)({unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},follow:{id:"account.follow",defaultMessage:"Follow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval. Click to cancel follow request"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"}}),N=(i=o=function(e){function t(){var n,o,i;d()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.state={isHovered:!1},o.handleMouseOver=function(){o.state.isHovered||o.setState({isHovered:!0})},o.handleMouseOut=function(){o.state.isHovered&&o.setState({isHovered:!1})},i=n,h()(o,i)}return g()(t,e),t.prototype.render=function(){var e=this.props.account,t=this.state.isHovered;return l()("a",{href:e.get("url"),className:"account__header__avatar",role:"presentation",target:"_blank",rel:"noopener",style:{backgroundImage:"url("+(j.a||t?e.get("avatar"):e.get("avatar_static"))+")"},onMouseOver:this.handleMouseOver,onMouseOut:this.handleMouseOut,onFocus:this.handleMouseOver,onBlur:this.handleMouseOut},void 0,l()("span",{style:{display:"none"}},void 0,e.get("acct")))},t}(I.a),o.propTypes={account:b.a.map.isRequired},i),T=Object(_.g)((r=s=function(e){function t(){return d()(this,t),h()(this,e.apply(this,arguments))}return g()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.intl;if(!t)return null;var o="",i="",a="",s="";j.g!==t.get("id")&&t.getIn(["relationship","followed_by"])?o=l()("span",{className:"account--follows-info"},void 0,l()(_.b,{id:"account.follows_you",defaultMessage:"Follows you"})):j.g!==t.get("id")&&t.getIn(["relationship","blocking"])&&(o=l()("span",{className:"account--follows-info"},void 0,l()(_.b,{id:"account.blocked",defaultMessage:"Blocked"}))),j.g!==t.get("id")&&t.getIn(["relationship","muting"])?i=l()("span",{className:"account--muting-info"},void 0,l()(_.b,{id:"account.muted",defaultMessage:"Muted"})):j.g!==t.get("id")&&t.getIn(["relationship","domain_blocking"])&&(i=l()("span",{className:"account--muting-info"},void 0,l()(_.b,{id:"account.domain_blocked",defaultMessage:"Domain hidden"}))),j.g!==t.get("id")&&(t.getIn(["relationship","requested"])?a=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,active:!0,icon:"hourglass",title:n.formatMessage(S.requested),onClick:this.props.onFollow})):t.getIn(["relationship","blocking"])?t.getIn(["relationship","blocking"])&&(a=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:"unlock-alt",title:n.formatMessage(S.unblock,{name:t.get("username")}),onClick:this.props.onBlock}))):a=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:t.getIn(["relationship","following"])?"user-times":"user-plus",active:t.getIn(["relationship","following"]),title:n.formatMessage(t.getIn(["relationship","following"])?S.unfollow:S.follow),onClick:this.props.onFollow}))),t.get("moved")&&!t.getIn(["relationship","following"])&&(a=""),t.get("locked")&&(s=l()("i",{className:"fa fa-lock"}));var r={__html:t.get("note_emojified")},c={__html:t.get("display_name_html")};return l()("div",{className:R()("account__header",{inactive:!!t.get("moved")}),style:{backgroundImage:"url("+t.get("header")+")"}},void 0,l()("div",{},void 0,l()(N,{account:t}),l()("span",{className:"account__header__display-name",dangerouslySetInnerHTML:c}),l()("span",{className:"account__header__username"},void 0,"@",t.get("acct")," ",s),l()("div",{className:"account__header__content",dangerouslySetInnerHTML:r}),o,i,a))},t}(I.a),s.propTypes={account:b.a.map,onFollow:y.a.func.isRequired,onBlock:y.a.func.isRequired,intl:y.a.object.isRequired},a=r))||a},847:function(e,t,n){"use strict";n.d(t,"a",function(){return M});var o,i=n(2),a=n.n(i),s=n(1),r=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),p=n(0),h=n.n(p),f=n(299),g=n(44),v=n(6),m=n(11),b=Object(v.f)({mention:{id:"account.mention",defaultMessage:"Mention @{name}"},direct:{id:"account.direct",defaultMessage:"Direct message @{name}"},edit_profile:{id:"account.edit_profile",defaultMessage:"Edit profile"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},block:{id:"account.block",defaultMessage:"Block @{name}"},follow:{id:"account.follow",defaultMessage:"Follow"},report:{id:"account.report",defaultMessage:"Report @{name}"},share:{id:"account.share",defaultMessage:"Share @{name}'s profile"},media:{id:"account.media",defaultMessage:"Media"},hideReblogs:{id:"account.hide_reblogs",defaultMessage:"Hide boosts from @{name}"},showReblogs:{id:"account.show_reblogs",defaultMessage:"Show boosts from @{name}"}}),M=Object(v.g)(o=function(e){function t(){var n,o,i;r()(this,t);for(var a=arguments.length,s=Array(a),c=0;c<a;c++)s[c]=arguments[c];return n=o=l()(this,e.call.apply(e,[this].concat(s))),o.handleShare=function(){navigator.share({url:o.props.account.get("url")})},i=n,l()(o,i)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.intl,o=[],i="";return o.push({text:n.formatMessage(b.mention,{name:t.get("username")}),action:this.props.onMention}),o.push({text:n.formatMessage(b.direct,{name:t.get("username")}),action:this.props.onDirect}),"share"in navigator&&o.push({text:n.formatMessage(b.share,{name:t.get("username")}),action:this.handleShare}),o.push(null),t.get("id")===m.g?o.push({text:n.formatMessage(b.edit_profile),href:"/settings/profile"}):(t.getIn(["relationship","following"])&&(t.getIn(["relationship","showing_reblogs"])?o.push({text:n.formatMessage(b.hideReblogs,{name:t.get("username")}),action:this.props.onReblogToggle}):o.push({text:n.formatMessage(b.showReblogs,{name:t.get("username")}),action:this.props.onReblogToggle})),t.getIn(["relationship","blocking"])?o.push({text:n.formatMessage(b.unblock,{name:t.get("username")}),action:this.props.onBlock}):o.push({text:n.formatMessage(b.block,{name:t.get("username")}),action:this.props.onBlock}),o.push({text:n.formatMessage(b.report,{name:t.get("username")}),action:this.props.onReport})),t.get("acct")!==t.get("username")&&(i=a()("div",{className:"account__disclaimer"},void 0,a()(v.b,{id:"account.disclaimer_full",defaultMessage:"Information below may reflect the user's profile incompletely."})," ",a()("a",{target:"_blank",rel:"noopener",href:t.get("url")},void 0,a()(v.b,{id:"account.view_full_profile",defaultMessage:"View full profile"}))),o.push(null)),a()("div",{},void 0,i,a()("div",{className:"account__action-bar"},void 0,a()("div",{className:"account__action-bar-dropdown"},void 0,a()(f.a,{items:o,icon:"bars",size:24,direction:"right"})),a()("div",{className:"account__action-bar-links"},void 0,a()(g.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")},void 0,a()("span",{},void 0,a()(v.b,{id:"account.posts",defaultMessage:"Toots"})),a()("strong",{},void 0,a()(v.c,{value:t.get("statuses_count")}))),a()(g.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/following"},void 0,a()("span",{},void 0,a()(v.b,{id:"account.follows",defaultMessage:"Follows"})),a()("strong",{},void 0,a()(v.c,{value:t.get("following_count")}))),a()(g.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/followers"},void 0,a()("span",{},void 0,a()(v.b,{id:"account.followers",defaultMessage:"Followers"})),a()("strong",{},void 0,a()(v.c,{value:t.get("followers_count")}))))))},t}(h.a.PureComponent))||o},848:function(e,t,n){"use strict";n.d(t,"a",function(){return O});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),h=n(0),f=(n.n(h),n(5)),g=n.n(f),v=n(13),m=n.n(v),b=n(6),M=n(12),y=n.n(M),_=n(301),k=n(55),O=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),o.context.router.history.push("/accounts/"+o.props.to.get("id"))),e.stopPropagation()},i=n,u()(o,i)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.from,n=e.to,o={__html:t.get("display_name_html")};return s()("div",{className:"account__moved-note"},void 0,s()("div",{className:"account__moved-note__message"},void 0,s()("div",{className:"account__moved-note__icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-suitcase account__moved-note__icon"})),s()(b.b,{id:"account.moved_to",defaultMessage:"{name} has moved to:",values:{name:s()("bdi",{},void 0,s()("strong",{dangerouslySetInnerHTML:o}))}})),s()("a",{href:n.get("url"),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,s()("div",{className:"detailed-status__display-avatar"},void 0,s()(_.a,{account:n,friend:t})),s()(k.a,{account:n})))},t}(y.a),o.contextTypes={router:g.a.object},o.propTypes={from:m.a.map.isRequired,to:m.a.map.isRequired},i)}}); //# sourceMappingURL=account_timeline.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/account_timeline.js.map b/priv/static/packs/features/account_timeline.js.map index b776f35a1..5cfd0da0f 100644 --- a/priv/static/packs/features/account_timeline.js.map +++ b/priv/static/packs/features/account_timeline.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/account_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/account_timeline/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/account_timeline/containers/header_container.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/action_bar.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","286","ColumnBackButton","_temp2","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","push","goBack","contextTypes","object","287","ScrollableList","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","lastMouseMove","intersectionObserverWrapper","_this$node","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","onMouseMove","onMouseLeave","map","child","listLength","saveHeightKey","route","location","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","814","defineProperty","value","AccountTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__actions_accounts__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__components_status_list__","__WEBPACK_IMPORTED_MODULE_11__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__containers_header_container__","__WEBPACK_IMPORTED_MODULE_14__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_15_immutable__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default","mapStateToProps","accountId","params","_ref$withReplies","withReplies","path","componentWillMount","componentWillReceiveProps","845","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","846","__WEBPACK_IMPORTED_MODULE_3__selectors__","__WEBPACK_IMPORTED_MODULE_4__components_header__","__WEBPACK_IMPORTED_MODULE_5__actions_accounts__","__WEBPACK_IMPORTED_MODULE_6__actions_compose__","__WEBPACK_IMPORTED_MODULE_7__actions_mutes__","__WEBPACK_IMPORTED_MODULE_8__actions_reports__","__WEBPACK_IMPORTED_MODULE_9__actions_modal__","__WEBPACK_IMPORTED_MODULE_10_react_intl__","__WEBPACK_IMPORTED_MODULE_11__initial_state__","unfollowConfirm","getAccount","_ref2","onFollow","onDirect","onReblogToggle","847","Header","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__account_components_header__","__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__","__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_11__moved_note__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","handleFollow","handleBlock","handleMention","handleDirect","handleReport","handleReblogToggle","handleMute","hideTabs","from","to","exact","848","_class3","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","unfollow","follow","requested","unblock","Avatar","isHovered","handleMouseOver","handleMouseOut","href","rel","backgroundImage","onMouseOver","onMouseOut","onFocus","onBlur","display","info","mutingInfo","actionBtn","lockedIcon","title","content","__html","displayNameHtml","inactive","dangerouslySetInnerHTML","849","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_router_dom__","__WEBPACK_IMPORTED_MODULE_8__initial_state__","mention","direct","edit_profile","block","report","share","hideReblogs","showReblogs","handleShare","navigator","url","menu","extraInfo","text","action","items","direction","850","MovedNote","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__","__WEBPACK_IMPORTED_MODULE_10__components_display_name__","handleAccountClick","button","stopPropagation","friend"],"mappings":"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","file":"features/account_timeline.js","sourcesContent":["webpackJsonp([6],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 814:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return AccountTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__containers_header_container__ = __webpack_require__(846);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.params.accountId,\n _ref$withReplies = _ref.withReplies,\n withReplies = _ref$withReplies === undefined ? false : _ref$withReplies;\n\n var path = withReplies ? accountId + ':with_replies' : accountId;\n\n return {\n statusIds: state.getIn(['timelines', 'account:' + path, 'items'], Object(__WEBPACK_IMPORTED_MODULE_15_immutable__[\"List\"])()),\n isLoading: state.getIn(['timelines', 'account:' + path, 'isLoading']),\n hasMore: state.getIn(['timelines', 'account:' + path, 'hasMore'])\n };\n};\n\nvar AccountTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AccountTimeline, _ImmutablePureCompone);\n\n function AccountTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AccountTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"l\" /* expandAccountTimeline */])(_this.props.params.accountId, { maxId: maxId, withReplies: _this.props.withReplies }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n AccountTimeline.prototype.componentWillMount = function componentWillMount() {\n var _props = this.props,\n accountId = _props.params.accountId,\n withReplies = _props.withReplies;\n\n\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_accounts__[\"u\" /* fetchAccount */])(accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"l\" /* expandAccountTimeline */])(accountId, { withReplies: withReplies }));\n };\n\n AccountTimeline.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId || nextProps.withReplies !== this.props.withReplies) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_accounts__[\"u\" /* fetchAccount */])(nextProps.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"l\" /* expandAccountTimeline */])(nextProps.params.accountId, { withReplies: nextProps.params.withReplies }));\n }\n };\n\n AccountTimeline.prototype.render = function render() {\n var _props2 = this.props,\n statusIds = _props2.statusIds,\n isLoading = _props2.isLoading,\n hasMore = _props2.hasMore;\n\n\n if (!statusIds && isLoading) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_status_list__[\"a\" /* default */], {\n prepend: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__containers_header_container__[\"a\" /* default */], {\n accountId: this.props.params.accountId\n }),\n scrollKey: 'account_timeline',\n statusIds: statusIds,\n isLoading: isLoading,\n hasMore: hasMore,\n onLoadMore: this.handleLoadMore\n }));\n };\n\n return AccountTimeline;\n}(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list,\n isLoading: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n withReplies: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool\n}, _temp2)) || _class);\n\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 846:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_header__ = __webpack_require__(847);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_3__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId;\n return {\n account: getAccount(state, accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var intl = _ref2.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onDirect: function onDirect(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"N\" /* directCompose */])(account, router));\n },\n onReblogToggle: function onReblogToggle(account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), false));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), true));\n }\n },\n onReport: function onReport(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_reports__[\"k\" /* initReport */])(account));\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_4__components_header__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 847:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__account_components_header__ = __webpack_require__(848);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__ = __webpack_require__(849);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__moved_note__ = __webpack_require__(850);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar Header = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone);\n\n function Header() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMention = function () {\n _this.props.onMention(_this.props.account, _this.context.router.history);\n }, _this.handleDirect = function () {\n _this.props.onDirect(_this.props.account, _this.context.router.history);\n }, _this.handleReport = function () {\n _this.props.onReport(_this.props.account);\n }, _this.handleReblogToggle = function () {\n _this.props.onReblogToggle(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n hideTabs = _props.hideTabs;\n\n\n if (account === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__[\"a\" /* default */], {});\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-timeline__header'\n }, void 0, account.get('moved') && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__moved_note__[\"a\" /* default */], {\n from: account,\n to: account.get('moved')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__account_components_header__[\"a\" /* default */], {\n account: account,\n onFollow: this.handleFollow,\n onBlock: this.handleBlock\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__[\"a\" /* default */], {\n account: account,\n onBlock: this.handleBlock,\n onMention: this.handleMention,\n onDirect: this.handleDirect,\n onReblogToggle: this.handleReblogToggle,\n onReport: this.handleReport,\n onMute: this.handleMute\n }), !hideTabs && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__section-headline'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/with_replies'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts_with_replies',\n defaultMessage: 'Toots and replies'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/media'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.media',\n defaultMessage: 'Media'\n }))));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDirect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReblogToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReport: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n hideTabs: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 848:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval. Click to cancel follow request'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n }\n});\n\nvar Avatar = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Avatar, _ImmutablePureCompone);\n\n function Avatar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Avatar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n isHovered: false\n }, _this.handleMouseOver = function () {\n if (_this.state.isHovered) return;\n _this.setState({ isHovered: true });\n }, _this.handleMouseOut = function () {\n if (!_this.state.isHovered) return;\n _this.setState({ isHovered: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Avatar.prototype.render = function render() {\n var account = this.props.account;\n var isHovered = this.state.isHovered;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: account.get('url'),\n className: 'account__header__avatar',\n role: 'presentation',\n target: '_blank',\n rel: 'noopener',\n style: { backgroundImage: 'url(' + (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"a\" /* autoPlayGif */] || isHovered ? account.get('avatar') : account.get('avatar_static')) + ')' },\n onMouseOver: this.handleMouseOver,\n onMouseOut: this.handleMouseOut,\n onFocus: this.handleMouseOver,\n onBlur: this.handleMouseOut\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, account.get('acct')));\n };\n\n return Avatar;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\nvar Header = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone2);\n\n function Header() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.apply(this, arguments));\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n if (!account) {\n return null;\n }\n\n var info = '';\n var mutingInfo = '';\n var actionBtn = '';\n var lockedIcon = '';\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows_you',\n defaultMessage: 'Follows you'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.blocked',\n defaultMessage: 'Blocked'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.muted',\n defaultMessage: 'Muted'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.domain_blocked',\n defaultMessage: 'Domain hidden'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n active: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested),\n onClick: this.props.onFollow\n }));\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus',\n active: account.getIn(['relationship', 'following']),\n title: intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow),\n onClick: this.props.onFollow\n }));\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.props.onBlock\n }));\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n });\n }\n\n var content = { __html: account.get('note_emojified') };\n var displayNameHtml = { __html: account.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('account__header', { inactive: !!account.get('moved') }),\n style: { backgroundImage: 'url(' + account.get('header') + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Avatar, {\n account: account\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__display-name',\n dangerouslySetInnerHTML: displayNameHtml\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__username'\n }, void 0, '@', account.get('acct'), ' ', lockedIcon), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n }), info, mutingInfo, actionBtn));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class3.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp3)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 849:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n mention: {\n 'id': 'account.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n direct: {\n 'id': 'account.direct',\n 'defaultMessage': 'Direct message @{name}'\n },\n edit_profile: {\n 'id': 'account.edit_profile',\n 'defaultMessage': 'Edit profile'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n block: {\n 'id': 'account.block',\n 'defaultMessage': 'Block @{name}'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n report: {\n 'id': 'account.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'account.share',\n 'defaultMessage': 'Share @{name}\\'s profile'\n },\n media: {\n 'id': 'account.media',\n 'defaultMessage': 'Media'\n },\n hideReblogs: {\n 'id': 'account.hide_reblogs',\n 'defaultMessage': 'Hide boosts from @{name}'\n },\n showReblogs: {\n 'id': 'account.show_reblogs',\n 'defaultMessage': 'Show boosts from @{name}'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleShare = function () {\n navigator.share({\n url: _this.props.account.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n var menu = [];\n var extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"g\" /* me */]) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__disclaimer'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.disclaimer_full',\n defaultMessage: 'Information below may reflect the user\\'s profile incompletely.'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n target: '_blank',\n rel: 'noopener',\n href: account.get('url')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.view_full_profile',\n defaultMessage: 'View full profile'\n })));\n\n menu.push(null);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, extraInfo, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n items: menu,\n icon: 'bars',\n size: 24,\n direction: 'right'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('statuses_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows',\n defaultMessage: 'Follows'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('following_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.followers',\n defaultMessage: 'Followers'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('followers_count')\n }))))));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 850:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MovedNote; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_display_name__ = __webpack_require__(55);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\nvar MovedNote = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MovedNote, _ImmutablePureCompone);\n\n function MovedNote() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MovedNote);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.to.get('id'));\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MovedNote.prototype.render = function render() {\n var _props = this.props,\n from = _props.from,\n to = _props.to;\n\n var displayNameHtml = { __html: from.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-suitcase account__moved-note__icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.moved_to',\n defaultMessage: '{name} has moved to:',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n dangerouslySetInnerHTML: displayNameHtml\n })) }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: to.get('url'),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__[\"a\" /* default */], {\n account: to,\n friend: from\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_display_name__[\"a\" /* default */], {\n account: to\n })));\n };\n\n return MovedNote;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n from: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n to: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/account_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { fetchAccount } from '../../actions/accounts';\nimport { expandAccountTimeline } from '../../actions/timelines';\nimport StatusList from '../../components/status_list';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport Column from '../ui/components/column';\nimport HeaderContainer from './containers/header_container';\nimport ColumnBackButton from '../../components/column_back_button';\nimport { List as ImmutableList } from 'immutable';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, { params: { accountId }, withReplies = false }) => {\n const path = withReplies ? `${accountId}:with_replies` : accountId;\n\n return {\n statusIds: state.getIn(['timelines', `account:${path}`, 'items'], ImmutableList()),\n isLoading: state.getIn(['timelines', `account:${path}`, 'isLoading']),\n hasMore: state.getIn(['timelines', `account:${path}`, 'hasMore']),\n };\n};\n\n@connect(mapStateToProps)\nexport default class AccountTimeline extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n statusIds: ImmutablePropTypes.list,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n withReplies: PropTypes.bool,\n };\n\n componentWillMount () {\n const { params: { accountId }, withReplies } = this.props;\n\n this.props.dispatch(fetchAccount(accountId));\n this.props.dispatch(expandAccountTimeline(accountId, { withReplies }));\n }\n\n componentWillReceiveProps (nextProps) {\n if ((nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) || nextProps.withReplies !== this.props.withReplies) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(expandAccountTimeline(nextProps.params.accountId, { withReplies: nextProps.params.withReplies }));\n }\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandAccountTimeline(this.props.params.accountId, { maxId, withReplies: this.props.withReplies }));\n }\n\n render () {\n const { statusIds, isLoading, hasMore } = this.props;\n\n if (!statusIds && isLoading) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <StatusList\n prepend={<HeaderContainer accountId={this.props.params.accountId} />}\n scrollKey='account_timeline'\n statusIds={statusIds}\n isLoading={isLoading}\n hasMore={hasMore}\n onLoadMore={this.handleLoadMore}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport Header from '../components/header';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n unmuteAccount,\n} from '../../../actions/accounts';\nimport {\n mentionCompose,\n directCompose,\n} from '../../../actions/compose';\nimport { initMuteModal } from '../../../actions/mutes';\nimport { initReport } from '../../../actions/reports';\nimport { openModal } from '../../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { unfollowModal } from '../../../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId }) => ({\n account: getAccount(state, accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onDirect (account, router) {\n dispatch(directCompose(account, router));\n },\n\n onReblogToggle (account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(followAccount(account.get('id'), false));\n } else {\n dispatch(followAccount(account.get('id'), true));\n }\n },\n\n onReport (account) {\n dispatch(initReport(account));\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n }\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Header));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/containers/header_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport InnerHeader from '../../account/components/header';\nimport ActionBar from '../../account/components/action_bar';\nimport MissingIndicator from '../../../components/missing_indicator';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport MovedNote from './moved_note';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n hideTabs: PropTypes.bool,\n };\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMention = () => {\n this.props.onMention(this.props.account, this.context.router.history);\n }\n\n handleDirect = () => {\n this.props.onDirect(this.props.account, this.context.router.history);\n }\n\n handleReport = () => {\n this.props.onReport(this.props.account);\n }\n\n handleReblogToggle = () => {\n this.props.onReblogToggle(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n render () {\n const { account, hideTabs } = this.props;\n\n if (account === null) {\n return <MissingIndicator />;\n }\n\n return (\n <div className='account-timeline__header'>\n {account.get('moved') && <MovedNote from={account} to={account.get('moved')} />}\n\n <InnerHeader\n account={account}\n onFollow={this.handleFollow}\n onBlock={this.handleBlock}\n />\n\n <ActionBar\n account={account}\n onBlock={this.handleBlock}\n onMention={this.handleMention}\n onDirect={this.handleDirect}\n onReblogToggle={this.handleReblogToggle}\n onReport={this.handleReport}\n onMute={this.handleMute}\n />\n\n {!hideTabs && (\n <div className='account__section-headline'>\n <NavLink exact to={`/accounts/${account.get('id')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>\n </div>\n )}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { autoPlayGif, me } from '../../../initial_state';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval. Click to cancel follow request' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n});\n\nclass Avatar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n isHovered: false,\n };\n\n handleMouseOver = () => {\n if (this.state.isHovered) return;\n this.setState({ isHovered: true });\n }\n\n handleMouseOut = () => {\n if (!this.state.isHovered) return;\n this.setState({ isHovered: false });\n }\n\n render () {\n const { account } = this.props;\n const { isHovered } = this.state;\n\n return (\n <a\n href={account.get('url')}\n className='account__header__avatar'\n role='presentation'\n target='_blank'\n rel='noopener'\n style={{ backgroundImage: `url(${autoPlayGif || isHovered ? account.get('avatar') : account.get('avatar_static')})` }}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onFocus={this.handleMouseOver}\n onBlur={this.handleMouseOut}\n >\n <span style={{ display: 'none' }}>{account.get('acct')}</span>\n </a>\n );\n }\n\n}\n\n@injectIntl\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { account, intl } = this.props;\n\n if (!account) {\n return null;\n }\n\n let info = '';\n let mutingInfo = '';\n let actionBtn = '';\n let lockedIcon = '';\n\n if (me !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.follows_you' defaultMessage='Follows you' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.blocked' defaultMessage='Blocked' /></span>;\n }\n\n if (me !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.muted' defaultMessage='Muted' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.domain_blocked' defaultMessage='Domain hidden' /></span>;\n }\n\n if (me !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} active icon='hourglass' title={intl.formatMessage(messages.requested)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon={account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus'} active={account.getIn(['relationship', 'following'])} title={intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.props.onBlock} />\n </div>\n );\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = <i className='fa fa-lock' />;\n }\n\n const content = { __html: account.get('note_emojified') };\n const displayNameHtml = { __html: account.get('display_name_html') };\n\n return (\n <div className={classNames('account__header', { inactive: !!account.get('moved') })} style={{ backgroundImage: `url(${account.get('header')})` }}>\n <div>\n <Avatar account={account} />\n\n <span className='account__header__display-name' dangerouslySetInnerHTML={displayNameHtml} />\n <span className='account__header__username'>@{account.get('acct')} {lockedIcon}</span>\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n\n {info}\n {mutingInfo}\n {actionBtn}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { Link } from 'react-router-dom';\nimport { defineMessages, injectIntl, FormattedMessage, FormattedNumber } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n mention: { id: 'account.mention', defaultMessage: 'Mention @{name}' },\n direct: { id: 'account.direct', defaultMessage: 'Direct message @{name}' },\n edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n block: { id: 'account.block', defaultMessage: 'Block @{name}' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n report: { id: 'account.report', defaultMessage: 'Report @{name}' },\n share: { id: 'account.share', defaultMessage: 'Share @{name}\\'s profile' },\n media: { id: 'account.media', defaultMessage: 'Media' },\n hideReblogs: { id: 'account.hide_reblogs', defaultMessage: 'Hide boosts from @{name}' },\n showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleShare = () => {\n navigator.share({\n url: this.props.account.get('url'),\n });\n }\n\n render () {\n const { account, intl } = this.props;\n\n let menu = [];\n let extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === me) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = (\n <div className='account__disclaimer'>\n <FormattedMessage\n id='account.disclaimer_full'\n defaultMessage=\"Information below may reflect the user's profile incompletely.\"\n />\n {' '}\n <a target='_blank' rel='noopener' href={account.get('url')}>\n <FormattedMessage id='account.view_full_profile' defaultMessage='View full profile' />\n </a>\n </div>\n );\n\n menu.push(null);\n }\n\n return (\n <div>\n {extraInfo}\n\n <div className='account__action-bar'>\n <div className='account__action-bar-dropdown'>\n <DropdownMenuContainer items={menu} icon='bars' size={24} direction='right' />\n </div>\n\n <div className='account__action-bar-links'>\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}`}>\n <span><FormattedMessage id='account.posts' defaultMessage='Toots' /></span>\n <strong><FormattedNumber value={account.get('statuses_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/following`}>\n <span><FormattedMessage id='account.follows' defaultMessage='Follows' /></span>\n <strong><FormattedNumber value={account.get('following_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/followers`}>\n <span><FormattedMessage id='account.followers' defaultMessage='Followers' /></span>\n <strong><FormattedNumber value={account.get('followers_count')} /></strong>\n </Link>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/action_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport AvatarOverlay from '../../../components/avatar_overlay';\nimport DisplayName from '../../../components/display_name';\n\nexport default class MovedNote extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n from: ImmutablePropTypes.map.isRequired,\n to: ImmutablePropTypes.map.isRequired,\n };\n\n handleAccountClick = e => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.to.get('id')}`);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { from, to } = this.props;\n const displayNameHtml = { __html: from.get('display_name_html') };\n\n return (\n <div className='account__moved-note'>\n <div className='account__moved-note__message'>\n <div className='account__moved-note__icon-wrapper'><i className='fa fa-fw fa-suitcase account__moved-note__icon' /></div>\n <FormattedMessage id='account.moved_to' defaultMessage='{name} has moved to:' values={{ name: <bdi><strong dangerouslySetInnerHTML={displayNameHtml} /></bdi> }} />\n </div>\n\n <a href={to.get('url')} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><AvatarOverlay account={to} friend={from} /></div>\n <DisplayName account={to} />\n </a>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/account_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/account_timeline/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/account_timeline/containers/header_container.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/action_bar.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","286","ColumnBackButton","_temp2","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","push","goBack","contextTypes","object","287","ScrollableList","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","lastMouseMove","intersectionObserverWrapper","_this$node","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","onMouseMove","onMouseLeave","map","child","listLength","saveHeightKey","route","location","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","813","defineProperty","value","AccountTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__actions_accounts__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__components_status_list__","__WEBPACK_IMPORTED_MODULE_11__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__containers_header_container__","__WEBPACK_IMPORTED_MODULE_14__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_15_immutable__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default","mapStateToProps","accountId","params","_ref$withReplies","withReplies","path","componentWillMount","componentWillReceiveProps","843","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","844","__WEBPACK_IMPORTED_MODULE_3__selectors__","__WEBPACK_IMPORTED_MODULE_4__components_header__","__WEBPACK_IMPORTED_MODULE_5__actions_accounts__","__WEBPACK_IMPORTED_MODULE_6__actions_compose__","__WEBPACK_IMPORTED_MODULE_7__actions_mutes__","__WEBPACK_IMPORTED_MODULE_8__actions_modal__","__WEBPACK_IMPORTED_MODULE_9_react_intl__","__WEBPACK_IMPORTED_MODULE_10__initial_state__","unfollowConfirm","getAccount","_ref2","onFollow","onDirect","onReblogToggle","845","Header","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__account_components_header__","__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__","__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_11__moved_note__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","handleFollow","handleBlock","handleMention","handleDirect","handleReblogToggle","handleMute","hideTabs","from","to","exact","846","_class3","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_11__initial_state__","unfollow","follow","requested","unblock","Avatar","isHovered","handleMouseOver","handleMouseOut","href","rel","backgroundImage","onMouseOver","onMouseOut","onFocus","onBlur","display","info","mutingInfo","actionBtn","lockedIcon","title","content","__html","displayNameHtml","inactive","dangerouslySetInnerHTML","847","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_router_dom__","__WEBPACK_IMPORTED_MODULE_8__initial_state__","mention","direct","edit_profile","block","report","share","hideReblogs","showReblogs","handleShare","navigator","url","menu","extraInfo","text","action","items","direction","848","MovedNote","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__","__WEBPACK_IMPORTED_MODULE_10__components_display_name__","handleAccountClick","button","stopPropagation","friend"],"mappings":"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","file":"features/account_timeline.js","sourcesContent":["webpackJsonp([6],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 813:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return AccountTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__containers_header_container__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.params.accountId,\n _ref$withReplies = _ref.withReplies,\n withReplies = _ref$withReplies === undefined ? false : _ref$withReplies;\n\n var path = withReplies ? accountId + ':with_replies' : accountId;\n\n return {\n statusIds: state.getIn(['timelines', 'account:' + path, 'items'], Object(__WEBPACK_IMPORTED_MODULE_15_immutable__[\"List\"])()),\n isLoading: state.getIn(['timelines', 'account:' + path, 'isLoading']),\n hasMore: state.getIn(['timelines', 'account:' + path, 'hasMore'])\n };\n};\n\nvar AccountTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AccountTimeline, _ImmutablePureCompone);\n\n function AccountTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AccountTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"l\" /* expandAccountTimeline */])(_this.props.params.accountId, { maxId: maxId, withReplies: _this.props.withReplies }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n AccountTimeline.prototype.componentWillMount = function componentWillMount() {\n var _props = this.props,\n accountId = _props.params.accountId,\n withReplies = _props.withReplies;\n\n\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_accounts__[\"u\" /* fetchAccount */])(accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"l\" /* expandAccountTimeline */])(accountId, { withReplies: withReplies }));\n };\n\n AccountTimeline.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId || nextProps.withReplies !== this.props.withReplies) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_accounts__[\"u\" /* fetchAccount */])(nextProps.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"l\" /* expandAccountTimeline */])(nextProps.params.accountId, { withReplies: nextProps.params.withReplies }));\n }\n };\n\n AccountTimeline.prototype.render = function render() {\n var _props2 = this.props,\n statusIds = _props2.statusIds,\n isLoading = _props2.isLoading,\n hasMore = _props2.hasMore;\n\n\n if (!statusIds && isLoading) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_status_list__[\"a\" /* default */], {\n prepend: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__containers_header_container__[\"a\" /* default */], {\n accountId: this.props.params.accountId\n }),\n scrollKey: 'account_timeline',\n statusIds: statusIds,\n isLoading: isLoading,\n hasMore: hasMore,\n onLoadMore: this.handleLoadMore\n }));\n };\n\n return AccountTimeline;\n}(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list,\n isLoading: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n withReplies: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool\n}, _temp2)) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_header__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_3__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId;\n return {\n account: getAccount(state, accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var intl = _ref2.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_10__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onDirect: function onDirect(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"N\" /* directCompose */])(account, router));\n },\n onReblogToggle: function onReblogToggle(account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), false));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), true));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_4__components_header__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__account_components_header__ = __webpack_require__(846);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__ = __webpack_require__(847);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__moved_note__ = __webpack_require__(848);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar Header = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone);\n\n function Header() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMention = function () {\n _this.props.onMention(_this.props.account, _this.context.router.history);\n }, _this.handleDirect = function () {\n _this.props.onDirect(_this.props.account, _this.context.router.history);\n }, _this.handleReblogToggle = function () {\n _this.props.onReblogToggle(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n hideTabs = _props.hideTabs;\n\n\n if (account === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__[\"a\" /* default */], {});\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-timeline__header'\n }, void 0, account.get('moved') && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__moved_note__[\"a\" /* default */], {\n from: account,\n to: account.get('moved')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__account_components_header__[\"a\" /* default */], {\n account: account,\n onFollow: this.handleFollow,\n onBlock: this.handleBlock\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__[\"a\" /* default */], {\n account: account,\n onBlock: this.handleBlock,\n onMention: this.handleMention,\n onDirect: this.handleDirect,\n onReblogToggle: this.handleReblogToggle,\n onMute: this.handleMute\n }), !hideTabs && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__section-headline'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/with_replies'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts_with_replies',\n defaultMessage: 'Toots and replies'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/media'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.media',\n defaultMessage: 'Media'\n }))));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDirect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReblogToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n hideTabs: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 846:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval. Click to cancel follow request'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n }\n});\n\nvar Avatar = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Avatar, _ImmutablePureCompone);\n\n function Avatar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Avatar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n isHovered: false\n }, _this.handleMouseOver = function () {\n if (_this.state.isHovered) return;\n _this.setState({ isHovered: true });\n }, _this.handleMouseOut = function () {\n if (!_this.state.isHovered) return;\n _this.setState({ isHovered: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Avatar.prototype.render = function render() {\n var account = this.props.account;\n var isHovered = this.state.isHovered;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: account.get('url'),\n className: 'account__header__avatar',\n role: 'presentation',\n target: '_blank',\n rel: 'noopener',\n style: { backgroundImage: 'url(' + (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"a\" /* autoPlayGif */] || isHovered ? account.get('avatar') : account.get('avatar_static')) + ')' },\n onMouseOver: this.handleMouseOver,\n onMouseOut: this.handleMouseOut,\n onFocus: this.handleMouseOver,\n onBlur: this.handleMouseOut\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, account.get('acct')));\n };\n\n return Avatar;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\nvar Header = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone2);\n\n function Header() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.apply(this, arguments));\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n if (!account) {\n return null;\n }\n\n var info = '';\n var mutingInfo = '';\n var actionBtn = '';\n var lockedIcon = '';\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows_you',\n defaultMessage: 'Follows you'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.blocked',\n defaultMessage: 'Blocked'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.muted',\n defaultMessage: 'Muted'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.domain_blocked',\n defaultMessage: 'Domain hidden'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n active: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested),\n onClick: this.props.onFollow\n }));\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus',\n active: account.getIn(['relationship', 'following']),\n title: intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow),\n onClick: this.props.onFollow\n }));\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.props.onBlock\n }));\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n });\n }\n\n var content = { __html: account.get('note_emojified') };\n var displayNameHtml = { __html: account.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('account__header', { inactive: !!account.get('moved') }),\n style: { backgroundImage: 'url(' + account.get('header') + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Avatar, {\n account: account\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__display-name',\n dangerouslySetInnerHTML: displayNameHtml\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__username'\n }, void 0, '@', account.get('acct'), ' ', lockedIcon), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n }), info, mutingInfo, actionBtn));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class3.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp3)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 847:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n mention: {\n 'id': 'account.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n direct: {\n 'id': 'account.direct',\n 'defaultMessage': 'Direct message @{name}'\n },\n edit_profile: {\n 'id': 'account.edit_profile',\n 'defaultMessage': 'Edit profile'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n block: {\n 'id': 'account.block',\n 'defaultMessage': 'Block @{name}'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n report: {\n 'id': 'account.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'account.share',\n 'defaultMessage': 'Share @{name}\\'s profile'\n },\n media: {\n 'id': 'account.media',\n 'defaultMessage': 'Media'\n },\n hideReblogs: {\n 'id': 'account.hide_reblogs',\n 'defaultMessage': 'Hide boosts from @{name}'\n },\n showReblogs: {\n 'id': 'account.show_reblogs',\n 'defaultMessage': 'Show boosts from @{name}'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleShare = function () {\n navigator.share({\n url: _this.props.account.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n var menu = [];\n var extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"g\" /* me */]) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__disclaimer'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.disclaimer_full',\n defaultMessage: 'Information below may reflect the user\\'s profile incompletely.'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n target: '_blank',\n rel: 'noopener',\n href: account.get('url')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.view_full_profile',\n defaultMessage: 'View full profile'\n })));\n\n menu.push(null);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, extraInfo, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n items: menu,\n icon: 'bars',\n size: 24,\n direction: 'right'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('statuses_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows',\n defaultMessage: 'Follows'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('following_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.followers',\n defaultMessage: 'Followers'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('followers_count')\n }))))));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 848:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MovedNote; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_display_name__ = __webpack_require__(55);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\nvar MovedNote = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MovedNote, _ImmutablePureCompone);\n\n function MovedNote() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MovedNote);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.to.get('id'));\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MovedNote.prototype.render = function render() {\n var _props = this.props,\n from = _props.from,\n to = _props.to;\n\n var displayNameHtml = { __html: from.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-suitcase account__moved-note__icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.moved_to',\n defaultMessage: '{name} has moved to:',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n dangerouslySetInnerHTML: displayNameHtml\n })) }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: to.get('url'),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__[\"a\" /* default */], {\n account: to,\n friend: from\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_display_name__[\"a\" /* default */], {\n account: to\n })));\n };\n\n return MovedNote;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n from: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n to: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/account_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { fetchAccount } from '../../actions/accounts';\nimport { expandAccountTimeline } from '../../actions/timelines';\nimport StatusList from '../../components/status_list';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport Column from '../ui/components/column';\nimport HeaderContainer from './containers/header_container';\nimport ColumnBackButton from '../../components/column_back_button';\nimport { List as ImmutableList } from 'immutable';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, { params: { accountId }, withReplies = false }) => {\n const path = withReplies ? `${accountId}:with_replies` : accountId;\n\n return {\n statusIds: state.getIn(['timelines', `account:${path}`, 'items'], ImmutableList()),\n isLoading: state.getIn(['timelines', `account:${path}`, 'isLoading']),\n hasMore: state.getIn(['timelines', `account:${path}`, 'hasMore']),\n };\n};\n\n@connect(mapStateToProps)\nexport default class AccountTimeline extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n statusIds: ImmutablePropTypes.list,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n withReplies: PropTypes.bool,\n };\n\n componentWillMount () {\n const { params: { accountId }, withReplies } = this.props;\n\n this.props.dispatch(fetchAccount(accountId));\n this.props.dispatch(expandAccountTimeline(accountId, { withReplies }));\n }\n\n componentWillReceiveProps (nextProps) {\n if ((nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) || nextProps.withReplies !== this.props.withReplies) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(expandAccountTimeline(nextProps.params.accountId, { withReplies: nextProps.params.withReplies }));\n }\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandAccountTimeline(this.props.params.accountId, { maxId, withReplies: this.props.withReplies }));\n }\n\n render () {\n const { statusIds, isLoading, hasMore } = this.props;\n\n if (!statusIds && isLoading) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <StatusList\n prepend={<HeaderContainer accountId={this.props.params.accountId} />}\n scrollKey='account_timeline'\n statusIds={statusIds}\n isLoading={isLoading}\n hasMore={hasMore}\n onLoadMore={this.handleLoadMore}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport Header from '../components/header';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n unmuteAccount,\n} from '../../../actions/accounts';\nimport {\n mentionCompose,\n directCompose,\n} from '../../../actions/compose';\nimport { initMuteModal } from '../../../actions/mutes';\nimport { openModal } from '../../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { unfollowModal } from '../../../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId }) => ({\n account: getAccount(state, accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onDirect (account, router) {\n dispatch(directCompose(account, router));\n },\n\n onReblogToggle (account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(followAccount(account.get('id'), false));\n } else {\n dispatch(followAccount(account.get('id'), true));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n }\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Header));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/containers/header_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport InnerHeader from '../../account/components/header';\nimport ActionBar from '../../account/components/action_bar';\nimport MissingIndicator from '../../../components/missing_indicator';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport MovedNote from './moved_note';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n hideTabs: PropTypes.bool,\n };\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMention = () => {\n this.props.onMention(this.props.account, this.context.router.history);\n }\n\n handleDirect = () => {\n this.props.onDirect(this.props.account, this.context.router.history);\n }\n\n handleReblogToggle = () => {\n this.props.onReblogToggle(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n render () {\n const { account, hideTabs } = this.props;\n\n if (account === null) {\n return <MissingIndicator />;\n }\n\n return (\n <div className='account-timeline__header'>\n {account.get('moved') && <MovedNote from={account} to={account.get('moved')} />}\n\n <InnerHeader\n account={account}\n onFollow={this.handleFollow}\n onBlock={this.handleBlock}\n />\n\n <ActionBar\n account={account}\n onBlock={this.handleBlock}\n onMention={this.handleMention}\n onDirect={this.handleDirect}\n onReblogToggle={this.handleReblogToggle}\n onMute={this.handleMute}\n />\n\n {!hideTabs && (\n <div className='account__section-headline'>\n <NavLink exact to={`/accounts/${account.get('id')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>\n </div>\n )}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { autoPlayGif, me } from '../../../initial_state';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval. Click to cancel follow request' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n});\n\nclass Avatar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n isHovered: false,\n };\n\n handleMouseOver = () => {\n if (this.state.isHovered) return;\n this.setState({ isHovered: true });\n }\n\n handleMouseOut = () => {\n if (!this.state.isHovered) return;\n this.setState({ isHovered: false });\n }\n\n render () {\n const { account } = this.props;\n const { isHovered } = this.state;\n\n return (\n <a\n href={account.get('url')}\n className='account__header__avatar'\n role='presentation'\n target='_blank'\n rel='noopener'\n style={{ backgroundImage: `url(${autoPlayGif || isHovered ? account.get('avatar') : account.get('avatar_static')})` }}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onFocus={this.handleMouseOver}\n onBlur={this.handleMouseOut}\n >\n <span style={{ display: 'none' }}>{account.get('acct')}</span>\n </a>\n );\n }\n\n}\n\n@injectIntl\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { account, intl } = this.props;\n\n if (!account) {\n return null;\n }\n\n let info = '';\n let mutingInfo = '';\n let actionBtn = '';\n let lockedIcon = '';\n\n if (me !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.follows_you' defaultMessage='Follows you' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.blocked' defaultMessage='Blocked' /></span>;\n }\n\n if (me !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.muted' defaultMessage='Muted' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.domain_blocked' defaultMessage='Domain hidden' /></span>;\n }\n\n if (me !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} active icon='hourglass' title={intl.formatMessage(messages.requested)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon={account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus'} active={account.getIn(['relationship', 'following'])} title={intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.props.onBlock} />\n </div>\n );\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = <i className='fa fa-lock' />;\n }\n\n const content = { __html: account.get('note_emojified') };\n const displayNameHtml = { __html: account.get('display_name_html') };\n\n return (\n <div className={classNames('account__header', { inactive: !!account.get('moved') })} style={{ backgroundImage: `url(${account.get('header')})` }}>\n <div>\n <Avatar account={account} />\n\n <span className='account__header__display-name' dangerouslySetInnerHTML={displayNameHtml} />\n <span className='account__header__username'>@{account.get('acct')} {lockedIcon}</span>\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n\n {info}\n {mutingInfo}\n {actionBtn}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { Link } from 'react-router-dom';\nimport { defineMessages, injectIntl, FormattedMessage, FormattedNumber } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n mention: { id: 'account.mention', defaultMessage: 'Mention @{name}' },\n direct: { id: 'account.direct', defaultMessage: 'Direct message @{name}' },\n edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n block: { id: 'account.block', defaultMessage: 'Block @{name}' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n report: { id: 'account.report', defaultMessage: 'Report @{name}' },\n share: { id: 'account.share', defaultMessage: 'Share @{name}\\'s profile' },\n media: { id: 'account.media', defaultMessage: 'Media' },\n hideReblogs: { id: 'account.hide_reblogs', defaultMessage: 'Hide boosts from @{name}' },\n showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleShare = () => {\n navigator.share({\n url: this.props.account.get('url'),\n });\n }\n\n render () {\n const { account, intl } = this.props;\n\n let menu = [];\n let extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === me) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = (\n <div className='account__disclaimer'>\n <FormattedMessage\n id='account.disclaimer_full'\n defaultMessage=\"Information below may reflect the user's profile incompletely.\"\n />\n {' '}\n <a target='_blank' rel='noopener' href={account.get('url')}>\n <FormattedMessage id='account.view_full_profile' defaultMessage='View full profile' />\n </a>\n </div>\n );\n\n menu.push(null);\n }\n\n return (\n <div>\n {extraInfo}\n\n <div className='account__action-bar'>\n <div className='account__action-bar-dropdown'>\n <DropdownMenuContainer items={menu} icon='bars' size={24} direction='right' />\n </div>\n\n <div className='account__action-bar-links'>\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}`}>\n <span><FormattedMessage id='account.posts' defaultMessage='Toots' /></span>\n <strong><FormattedNumber value={account.get('statuses_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/following`}>\n <span><FormattedMessage id='account.follows' defaultMessage='Follows' /></span>\n <strong><FormattedNumber value={account.get('following_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/followers`}>\n <span><FormattedMessage id='account.followers' defaultMessage='Followers' /></span>\n <strong><FormattedNumber value={account.get('followers_count')} /></strong>\n </Link>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/action_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport AvatarOverlay from '../../../components/avatar_overlay';\nimport DisplayName from '../../../components/display_name';\n\nexport default class MovedNote extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n from: ImmutablePropTypes.map.isRequired,\n to: ImmutablePropTypes.map.isRequired,\n };\n\n handleAccountClick = e => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.to.get('id')}`);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { from, to } = this.props;\n const displayNameHtml = { __html: from.get('display_name_html') };\n\n return (\n <div className='account__moved-note'>\n <div className='account__moved-note__message'>\n <div className='account__moved-note__icon-wrapper'><i className='fa fa-fw fa-suitcase account__moved-note__icon' /></div>\n <FormattedMessage id='account.moved_to' defaultMessage='{name} has moved to:' values={{ name: <bdi><strong dangerouslySetInnerHTML={displayNameHtml} /></bdi> }} />\n </div>\n\n <a href={to.get('url')} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><AvatarOverlay account={to} friend={from} /></div>\n <DisplayName account={to} />\n </a>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/blocks.js b/priv/static/packs/features/blocks.js index 344b92e75..e24f2ed2f 100644 --- a/priv/static/packs/features/blocks.js +++ b/priv/static/packs/features/blocks.js @@ -1,2 +1,2 @@ -webpackJsonp([17],{150:function(n,t,e){"use strict";e.d(t,"a",function(){return m});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),l=e.n(r),u=e(4),s=e.n(u),d=e(0),f=e.n(d),p=e(10),h=e.n(p),m=function(n){function t(){var e,o,i;c()(this,t);for(var a=arguments.length,r=Array(a),u=0;u<a;u++)r[u]=arguments[u];return e=o=l()(this,n.call.apply(n,[this].concat(r))),o.handleClick=function(){o.props.onClick()},i=e,l()(o,i)}return s()(t,n),t.prototype.render=function(){var n=this.props,t=n.icon,e=n.type,o=n.active,a=n.columnHeaderId,c="";return t&&(c=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:h()("column-header",{active:o}),id:a||null},void 0,i()("button",{onClick:this.handleClick},void 0,c,e))},t}(f.a.PureComponent)},283:function(n,t,e){"use strict";function o(n){return function(t){t({type:a,account:n}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(e(14),e(22),e(15),e(26)),a="MUTES_INIT_MODAL"},284:function(n,t,e){"use strict";e.d(t,"a",function(){return v});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),l=e.n(r),u=e(4),s=e.n(u),d=e(34),f=e.n(d),p=e(0),h=e.n(p),m=e(150),g=e(90),b=e(35),v=function(n){function t(){var e,o,i;c()(this,t);for(var a=arguments.length,r=Array(a),u=0;u<a;u++)r[u]=arguments[u];return e=o=l()(this,n.call.apply(n,[this].concat(r))),o.handleHeaderClick=function(){var n=o.node.querySelector(".scrollable");n&&(o._interruptScrollAnimation=Object(g.b)(n))},o.handleScroll=f()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(n){o.node=n},i=e,l()(o,i)}return s()(t,n),t.prototype.scrollTop=function(){var n=this.node.querySelector(".scrollable");n&&(this._interruptScrollAnimation=Object(g.b)(n))},t.prototype.render=function(){var n=this.props,t=n.heading,e=n.icon,o=n.children,a=n.active,c=n.hideHeadingOnMobile,r=t&&(!c||c&&!Object(b.b)(window.innerWidth)),l=r&&t.replace(/ /g,"-"),u=r&&i()(m.a,{icon:e,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:l});return h.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":l,className:"column",onScroll:this.handleScroll},u,o)},t}(h.a.PureComponent)},286:function(n,t,e){"use strict";e.d(t,"a",function(){return v});var o,i,a=e(2),c=e.n(a),r=e(1),l=e.n(r),u=e(3),s=e.n(u),d=e(4),f=e.n(d),p=e(0),h=e.n(p),m=e(6),g=e(5),b=e.n(g),v=(i=o=function(n){function t(){var e,o,i;l()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=s()(this,n.call.apply(n,[this].concat(c))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},i=e,s()(o,i)}return f()(t,n),t.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(m.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(h.a.PureComponent),o.contextTypes={router:b.a.object},i)},298:function(n,t,e){"use strict";e.d(t,"a",function(){return h});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),l=e.n(r),u=e(4),s=e.n(u),d=e(0),f=(e.n(d),e(6)),p=e(286),h=function(n){function t(){return c()(this,t),l()(this,n.apply(this,arguments))}return s()(t,n),t.prototype.render=function(){return i()("div",{className:"column-back-button--slim"},void 0,i()("div",{role:"button",tabIndex:"0",onClick:this.handleClick,className:"column-back-button column-back-button--slim-button"},void 0,i()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),i()(f.b,{id:"column_back_button.label",defaultMessage:"Back"})))},t}(p.a)},823:function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),e.d(t,"default",function(){return R});var o,i,a,c,r=e(2),l=e.n(r),u=e(1),s=e.n(u),d=e(3),f=e.n(d),p=e(4),h=e.n(p),m=e(0),g=(e.n(m),e(9)),b=e(13),v=e.n(b),k=e(5),M=e.n(k),y=e(296),w=e(152),_=e(284),j=e(298),O=e(843),C=e(334),N=e(6),I=e(12),q=e.n(I),A=Object(N.f)({heading:{id:"column.blocks",defaultMessage:"Blocked users"}}),S=function(n){return{accountIds:n.getIn(["user_lists","blocks","items"])}},R=(o=Object(g.connect)(S))(i=Object(N.g)((c=a=function(n){function t(){var e,o,i;s()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=f()(this,n.call.apply(n,[this].concat(c))),o.handleScroll=function(n){var t=n.target;t.scrollTop===t.scrollHeight-t.clientHeight&&o.props.dispatch(Object(C.c)())},i=e,f()(o,i)}return h()(t,n),t.prototype.componentWillMount=function(){this.props.dispatch(Object(C.d)())},t.prototype.render=function(){var n=this.props,t=n.intl,e=n.accountIds;return e?l()(_.a,{icon:"ban",heading:t.formatMessage(A.heading)},void 0,l()(j.a,{}),l()(w.a,{scrollKey:"blocks"},void 0,l()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,e.map(function(n){return l()(O.a,{id:n},n)})))):l()(_.a,{},void 0,l()(y.a,{}))},t}(q.a),a.propTypes={params:M.a.object.isRequired,dispatch:M.a.func.isRequired,accountIds:v.a.list,intl:M.a.object.isRequired},i=c))||i)||i},843:function(n,t,e){"use strict";var o=e(2),i=e.n(o),a=e(0),c=(e.n(a),e(9)),r=e(6),l=e(66),u=e(844),s=e(22),d=e(26),f=e(283),p=e(11),h=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),m=function(){var n=Object(l.c)();return function(t,e){return{account:n(t,e.id)}}},g=function(n,t){var e=t.intl;return{onFollow:function(t){n(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:i()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:e.formatMessage(h.unfollowConfirm),onConfirm:function(){return n(Object(s.D)(t.get("id")))}}):Object(s.D)(t.get("id")):Object(s.z)(t.get("id")))},onBlock:function(t){n(t.getIn(["relationship","blocking"])?Object(s.C)(t.get("id")):Object(s.q)(t.get("id")))},onMute:function(t){n(t.getIn(["relationship","muting"])?Object(s.E)(t.get("id")):Object(f.a)(t))},onMuteNotifications:function(t,e){n(Object(s.A)(t.get("id"),e))}}};t.a=Object(r.g)(Object(c.connect)(m,g)(u.a))},844:function(n,t,e){"use strict";e.d(t,"a",function(){return I});var o,i,a,c=e(2),r=e.n(c),l=e(1),u=e.n(l),s=e(3),d=e.n(s),f=e(4),p=e.n(f),h=e(0),m=(e.n(h),e(13)),g=e.n(m),b=e(5),v=e.n(b),k=e(56),M=e(55),y=e(295),w=e(23),_=e(6),j=e(12),O=e.n(j),C=e(11),N=Object(_.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),I=Object(_.g)((a=i=function(n){function t(){var e,o,i;u()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=d()(this,n.call.apply(n,[this].concat(c))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},i=e,d()(o,i)}return p()(t,n),t.prototype.render=function(){var n=this.props,t=n.account,e=n.intl,o=n.hidden;if(!t)return r()("div",{});if(o)return r()("div",{},void 0,t.get("display_name"),t.get("username"));var i=void 0;if(t.get("id")!==C.g&&null!==t.get("relationship",null)){var a=t.getIn(["relationship","following"]),c=t.getIn(["relationship","requested"]),l=t.getIn(["relationship","blocking"]),u=t.getIn(["relationship","muting"]);if(c)i=r()(w.a,{disabled:!0,icon:"hourglass",title:e.formatMessage(N.requested)});else if(l)i=r()(w.a,{active:!0,icon:"unlock-alt",title:e.formatMessage(N.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(u){var s=void 0;s=t.getIn(["relationship","muting_notifications"])?r()(w.a,{active:!0,icon:"bell",title:e.formatMessage(N.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):r()(w.a,{active:!0,icon:"bell-slash",title:e.formatMessage(N.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),i=r()(h.Fragment,{},void 0,r()(w.a,{active:!0,icon:"volume-up",title:e.formatMessage(N.unmute,{name:t.get("username")}),onClick:this.handleMute}),s)}else t.get("moved")&&!a||(i=r()(w.a,{icon:a?"user-times":"user-plus",title:e.formatMessage(a?N.unfollow:N.follow),onClick:this.handleFollow,active:a}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(y.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(k.a,{account:t,size:36})),r()(M.a,{account:t})),r()("div",{className:"account__relationship"},void 0,i)))},t}(O.a),i.propTypes={account:g.a.map.isRequired,onFollow:v.a.func.isRequired,onBlock:v.a.func.isRequired,onMute:v.a.func.isRequired,onMuteNotifications:v.a.func.isRequired,intl:v.a.object.isRequired,hidden:v.a.bool},o=a))||o}}); +webpackJsonp([17],{150:function(n,t,e){"use strict";e.d(t,"a",function(){return m});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),l=e.n(r),u=e(4),s=e.n(u),d=e(0),f=e.n(d),p=e(10),h=e.n(p),m=function(n){function t(){var e,o,i;c()(this,t);for(var a=arguments.length,r=Array(a),u=0;u<a;u++)r[u]=arguments[u];return e=o=l()(this,n.call.apply(n,[this].concat(r))),o.handleClick=function(){o.props.onClick()},i=e,l()(o,i)}return s()(t,n),t.prototype.render=function(){var n=this.props,t=n.icon,e=n.type,o=n.active,a=n.columnHeaderId,c="";return t&&(c=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:h()("column-header",{active:o}),id:a||null},void 0,i()("button",{onClick:this.handleClick},void 0,c,e))},t}(f.a.PureComponent)},282:function(n,t,e){"use strict";function o(n){return function(t){t({type:a,account:n}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(e(14),e(22),e(15),e(26)),a="MUTES_INIT_MODAL"},283:function(n,t,e){"use strict";e.d(t,"a",function(){return v});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),l=e.n(r),u=e(4),s=e.n(u),d=e(34),f=e.n(d),p=e(0),h=e.n(p),m=e(150),g=e(90),b=e(35),v=function(n){function t(){var e,o,i;c()(this,t);for(var a=arguments.length,r=Array(a),u=0;u<a;u++)r[u]=arguments[u];return e=o=l()(this,n.call.apply(n,[this].concat(r))),o.handleHeaderClick=function(){var n=o.node.querySelector(".scrollable");n&&(o._interruptScrollAnimation=Object(g.b)(n))},o.handleScroll=f()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(n){o.node=n},i=e,l()(o,i)}return s()(t,n),t.prototype.scrollTop=function(){var n=this.node.querySelector(".scrollable");n&&(this._interruptScrollAnimation=Object(g.b)(n))},t.prototype.render=function(){var n=this.props,t=n.heading,e=n.icon,o=n.children,a=n.active,c=n.hideHeadingOnMobile,r=t&&(!c||c&&!Object(b.b)(window.innerWidth)),l=r&&t.replace(/ /g,"-"),u=r&&i()(m.a,{icon:e,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:l});return h.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":l,className:"column",onScroll:this.handleScroll},u,o)},t}(h.a.PureComponent)},286:function(n,t,e){"use strict";e.d(t,"a",function(){return v});var o,i,a=e(2),c=e.n(a),r=e(1),l=e.n(r),u=e(3),s=e.n(u),d=e(4),f=e.n(d),p=e(0),h=e.n(p),m=e(6),g=e(5),b=e.n(g),v=(i=o=function(n){function t(){var e,o,i;l()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=s()(this,n.call.apply(n,[this].concat(c))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},i=e,s()(o,i)}return f()(t,n),t.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(m.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(h.a.PureComponent),o.contextTypes={router:b.a.object},i)},298:function(n,t,e){"use strict";e.d(t,"a",function(){return h});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),l=e.n(r),u=e(4),s=e.n(u),d=e(0),f=(e.n(d),e(6)),p=e(286),h=function(n){function t(){return c()(this,t),l()(this,n.apply(this,arguments))}return s()(t,n),t.prototype.render=function(){return i()("div",{className:"column-back-button--slim"},void 0,i()("div",{role:"button",tabIndex:"0",onClick:this.handleClick,className:"column-back-button column-back-button--slim-button"},void 0,i()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),i()(f.b,{id:"column_back_button.label",defaultMessage:"Back"})))},t}(p.a)},822:function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),e.d(t,"default",function(){return R});var o,i,a,c,r=e(2),l=e.n(r),u=e(1),s=e.n(u),d=e(3),f=e.n(d),p=e(4),h=e.n(p),m=e(0),g=(e.n(m),e(9)),b=e(13),v=e.n(b),k=e(5),M=e.n(k),y=e(296),w=e(151),_=e(283),j=e(298),O=e(841),C=e(334),N=e(6),I=e(12),q=e.n(I),A=Object(N.f)({heading:{id:"column.blocks",defaultMessage:"Blocked users"}}),S=function(n){return{accountIds:n.getIn(["user_lists","blocks","items"])}},R=(o=Object(g.connect)(S))(i=Object(N.g)((c=a=function(n){function t(){var e,o,i;s()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=f()(this,n.call.apply(n,[this].concat(c))),o.handleScroll=function(n){var t=n.target;t.scrollTop===t.scrollHeight-t.clientHeight&&o.props.dispatch(Object(C.c)())},i=e,f()(o,i)}return h()(t,n),t.prototype.componentWillMount=function(){this.props.dispatch(Object(C.d)())},t.prototype.render=function(){var n=this.props,t=n.intl,e=n.accountIds;return e?l()(_.a,{icon:"ban",heading:t.formatMessage(A.heading)},void 0,l()(j.a,{}),l()(w.a,{scrollKey:"blocks"},void 0,l()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,e.map(function(n){return l()(O.a,{id:n},n)})))):l()(_.a,{},void 0,l()(y.a,{}))},t}(q.a),a.propTypes={params:M.a.object.isRequired,dispatch:M.a.func.isRequired,accountIds:v.a.list,intl:M.a.object.isRequired},i=c))||i)||i},841:function(n,t,e){"use strict";var o=e(2),i=e.n(o),a=e(0),c=(e.n(a),e(9)),r=e(6),l=e(66),u=e(842),s=e(22),d=e(26),f=e(282),p=e(11),h=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),m=function(){var n=Object(l.c)();return function(t,e){return{account:n(t,e.id)}}},g=function(n,t){var e=t.intl;return{onFollow:function(t){n(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:i()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:e.formatMessage(h.unfollowConfirm),onConfirm:function(){return n(Object(s.D)(t.get("id")))}}):Object(s.D)(t.get("id")):Object(s.z)(t.get("id")))},onBlock:function(t){n(t.getIn(["relationship","blocking"])?Object(s.C)(t.get("id")):Object(s.q)(t.get("id")))},onMute:function(t){n(t.getIn(["relationship","muting"])?Object(s.E)(t.get("id")):Object(f.a)(t))},onMuteNotifications:function(t,e){n(Object(s.A)(t.get("id"),e))}}};t.a=Object(r.g)(Object(c.connect)(m,g)(u.a))},842:function(n,t,e){"use strict";e.d(t,"a",function(){return I});var o,i,a,c=e(2),r=e.n(c),l=e(1),u=e.n(l),s=e(3),d=e.n(s),f=e(4),p=e.n(f),h=e(0),m=(e.n(h),e(13)),g=e.n(m),b=e(5),v=e.n(b),k=e(56),M=e(55),y=e(295),w=e(23),_=e(6),j=e(12),O=e.n(j),C=e(11),N=Object(_.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),I=Object(_.g)((a=i=function(n){function t(){var e,o,i;u()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=d()(this,n.call.apply(n,[this].concat(c))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},i=e,d()(o,i)}return p()(t,n),t.prototype.render=function(){var n=this.props,t=n.account,e=n.intl,o=n.hidden;if(!t)return r()("div",{});if(o)return r()("div",{},void 0,t.get("display_name"),t.get("username"));var i=void 0;if(t.get("id")!==C.g&&null!==t.get("relationship",null)){var a=t.getIn(["relationship","following"]),c=t.getIn(["relationship","requested"]),l=t.getIn(["relationship","blocking"]),u=t.getIn(["relationship","muting"]);if(c)i=r()(w.a,{disabled:!0,icon:"hourglass",title:e.formatMessage(N.requested)});else if(l)i=r()(w.a,{active:!0,icon:"unlock-alt",title:e.formatMessage(N.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(u){var s=void 0;s=t.getIn(["relationship","muting_notifications"])?r()(w.a,{active:!0,icon:"bell",title:e.formatMessage(N.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):r()(w.a,{active:!0,icon:"bell-slash",title:e.formatMessage(N.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),i=r()(h.Fragment,{},void 0,r()(w.a,{active:!0,icon:"volume-up",title:e.formatMessage(N.unmute,{name:t.get("username")}),onClick:this.handleMute}),s)}else t.get("moved")&&!a||(i=r()(w.a,{icon:a?"user-times":"user-plus",title:e.formatMessage(a?N.unfollow:N.follow),onClick:this.handleFollow,active:a}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(y.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(k.a,{account:t,size:36})),r()(M.a,{account:t})),r()("div",{className:"account__relationship"},void 0,i)))},t}(O.a),i.propTypes={account:g.a.map.isRequired,onFollow:v.a.func.isRequired,onBlock:v.a.func.isRequired,onMute:v.a.func.isRequired,onMuteNotifications:v.a.func.isRequired,intl:v.a.object.isRequired,hidden:v.a.bool},o=a))||o}}); //# sourceMappingURL=blocks.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/blocks.js.map b/priv/static/packs/features/blocks.js.map index 834619c4b..43e1a3154 100644 --- a/priv/static/packs/features/blocks.js.map +++ b/priv/static/packs/features/blocks.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/blocks.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/components/column_back_button_slim.js","webpack:///./app/javascript/mastodon/features/blocks/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","298","ColumnBackButtonSlim","__WEBPACK_IMPORTED_MODULE_6__column_back_button__","_ColumnBackButton","tabIndex","823","defineProperty","value","Blocks","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_10__ui_components_column__","__WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__","__WEBPACK_IMPORTED_MODULE_12__containers_account_container__","__WEBPACK_IMPORTED_MODULE_13__actions_blocks__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default","messages","mapStateToProps","state","accountIds","getIn","_ImmutablePureCompone","e","_e$target","target","scrollHeight","clientHeight","componentWillMount","intl","formatMessage","scrollKey","map","propTypes","params","isRequired","func","list","843","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","onFollow","message","values","name","get","confirm","onConfirm","onBlock","onMute","onMuteNotifications","notifications","844","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","disabled","title","hidingNotificationsButton","href","to","size","bool"],"mappings":"AAAAA,cAAc,KAERC,IACA,SAAUC,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOG,IAC9E,IAAIC,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpEE,EAA2Cd,EAAoB,IAC/De,EAAmDf,EAAoBK,EAAES,GCd7EZ,EDuBF,SAAUc,GAG3B,QAASd,KACP,GAAIe,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMlB,EAEnF,KAAK,GAAImB,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,ECzBrNY,YAAc,WACZZ,EAAKa,MAAMC,WDwBJb,EAEJF,EAAQR,IAAwFS,EAAOC,GA0B5G,MAvCAR,KAAuET,EAAcc,GAgBrFd,EAAa+B,UC1BbC,OD0BgC,WC1BtB,GAAAC,GACuCf,KAAKW,MAA5CK,EADAD,EACAC,KAAMC,EADNF,EACME,KAAMC,EADZH,EACYG,OAAQC,EADpBJ,EACoBI,eACxBC,EAAc,EAMlB,OAJIJ,KACFI,EAAApC,IAAAoC,KAAAC,UAAA,eAA2CL,EAA3C,0BAGFhC,IAAA,MAAAqC,UACiB1B,IAAW,iBAAmBuB,WAD/CI,GAC8DH,GAAkB,UADhF,GAAAnC,IAAA,UAAA4B,QAEqBZ,KAAKU,iBAF1B,GAGOU,EACAH,KDqCFnC,GC/DiCW,EAAA8B,EAAMC,gBDsE1CC,IACA,SAAU/C,EAAQC,EAAqBC,GAE7C,YEaO,SAAS8C,GAAcC,GAC5B,MAAO,UAAAC,GACLA,GACEX,KAAMY,EACNF,YAGFC,EAASE,OAAAC,EAAA,GAAU,UFHUpD,EAAuB,EAAI+C,CAEvC,IAGIK,IAHqCnD,EAAoB,IACfA,EAAoB,IACpBA,EAAoB,IACvBA,EAAoB,KEtFvEiD,EAAmB,oBFgN1BG,IACA,SAAUtD,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOsD,IAC9E,IAAIlD,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7F4C,EAAgDtD,EAAoB,IACpEuD,EAAwDvD,EAAoBK,EAAEiD,GAC9EE,EAAsCxD,EAAoB,GAC1DyD,EAA8CzD,EAAoBK,EAAEmD,GACpEE,EAA+C1D,EAAoB,KACnE2D,EAAwC3D,EAAoB,IAC5D4D,EAA2C5D,EAAoB,IGzOnEqD,EHqPR,SAAUrC,GAGrB,QAASqC,KACP,GAAIpC,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMiC,EAEnF,KAAK,GAAIhC,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,EGvPrN2C,kBAAoB,WAClB,GAAMC,GAAa5C,EAAK6C,KAAKC,cAAc,cAEtCF,KAIL5C,EAAK+C,0BAA4Bf,OAAAS,EAAA,GAAUG,KHwPxC5C,EG1OLgD,aAAeX,IAAS,eACwB,KAAnCrC,EAAK+C,2BACd/C,EAAK+C,6BAEN,KH0OQ/C,EGxOXiD,OAAS,SAACC,GACRlD,EAAK6C,KAAOK,GH2NLjD,EAcJF,EAAQR,IAAwFS,EAAOC,GA8C5G,MAvEAR,KAAuE0C,EAAQrC,GA4B/EqC,EAAOpB,UG9PPoC,UH8P6B,WG7P3B,GAAMP,GAAa1C,KAAK2C,KAAKC,cAAc,cAEtCF,KAIL1C,KAAK6C,0BAA4Bf,OAAAS,EAAA,GAAUG,KHiQ7CT,EAAOpB,UGnPPC,OHmP0B,WGnPhB,GAAAC,GACyDf,KAAKW,MAA9DuC,EADAnC,EACAmC,QAASlC,EADTD,EACSC,KAAMmC,EADfpC,EACeoC,SAAUjC,EADzBH,EACyBG,OAAQkC,EADjCrC,EACiCqC,oBAEnCC,EAAcH,KAAaE,GAAwBA,IAAwBtB,OAAAU,EAAA,GAASc,OAAOC,aAE3FpC,EAAiBkC,GAAeH,EAAQM,QAAQ,KAAM,KACtDC,EAASJ,GAAArE,IACZsD,EAAA,GADYtB,KACOA,EADPE,OACqBA,EADrBD,KACmCiC,EADnCtC,QACqDZ,KAAKyC,kBAD1DtB,eAC6FA,GAE5G,OACEkB,GAAAd,EAAAmC,cAAA,OACEC,IAAK3D,KAAK+C,OACVa,KAAK,SACLC,kBAAiB1C,EACjBE,UAAU,SACVyC,SAAU9D,KAAK8C,cAEdW,EACAN,IHkQAlB,GG7T2BI,EAAAd,EAAMC,gBHoUpCuC,IACA,SAAUrF,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOqF,IAC9E,IAkBjBC,GAAQC,EAlBanF,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpE2E,EAA2CvF,EAAoB,GAC/DwF,EAA2CxF,EAAoB,GAC/DyF,EAAmDzF,EAAoBK,EAAEmF,GIxV7EJ,GJoWGE,EAASD,EAAS,SAAUrE,GAGlD,QAASoE,KACP,GAAInE,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMgE,EAEnF,KAAK,GAAI/D,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,EI1WrNY,YAAc,WACR4C,OAAOgB,SAAqC,IAA1BhB,OAAOgB,QAAQnE,OACnCL,EAAKyE,QAAQC,OAAOF,QAAQG,KAAK,KAEjC3E,EAAKyE,QAAQC,OAAOF,QAAQI,UJsWvB3E,EAMJF,EAAQR,IAAwFS,EAAOC,GAe5G,MAhCAR,KAAuEyE,EAAkBpE,GAoBzFoE,EAAiBnD,UI3WjBC,OJ2WoC,WI1WlC,MAAA9B,KAAA,UAAA4B,QACmBZ,KAAKU,YADxBW,UAC+C,0BAD/C,GAAArC,IAAA,KAAAqC,UAEiB,sDAFjBrC,IAGKmF,EAAA,GAHL7C,GAGyB,2BAHzBqD,eAGmE,WJmX9DX,GIrYqCvE,EAAA8B,EAAMC,eJsYYyC,EIpYvDW,cACLJ,OAAQH,EAAA9C,EAAUsD,QJqYnBX,IAKGY,IACA,SAAUpG,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOoG,IAC9E,IAAIhG,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAE1DuF,GAD8CvF,EAAoBK,EAAEO,GACzBZ,EAAoB,IAC/DoG,EAAoDpG,EAAoB,KK7Z5EmG,ELsaM,SAAUE,GAGnC,QAASF,KAGP,MAFA5F,KAA6Ea,KAAM+E,GAE5E1F,IAAwFW,KAAMiF,EAAkBzE,MAAMR,KAAME,YAmBrI,MAxBAX,KAAuEwF,EAAsBE,GAQ7FF,EAAqBlE,UK7arBC,OL6awC,WK5atC,MAAA9B,KAAA,OAAAqC,UACiB,gCADjB,GAAArC,IAAA,OAAA4E,KAEc,SAFdsB,SAEgC,IAFhCtE,QAE6CZ,KAAKU,YAFlDW,UAEyE,0DAFzE,GAAArC,IAAA,KAAAqC,UAGmB,sDAHnBrC,IAIOmF,EAAA,GAJP7C,GAI2B,2BAJ3BqD,eAIqE,YLwbhEI,GK/byCC,EAAA,ILsc5CG,IACA,SAAUzG,EAAQC,EAAqBC,GAE7C,YACAkD,QAAOsD,eAAezG,EAAqB,cAAgB0G,OAAO,IACnCzG,EAAoBC,EAAEF,EAAqB,UAAW,WAAa,MAAO2G,IACpF,IA6BjBC,GAAMtB,EAAQuB,EAAStB,EA7BFnF,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAE1D6G,GAD8C7G,EAAoBK,EAAEO,GACxBZ,EAAoB,IAChE8G,EAA0D9G,EAAoB,IAC9E+G,EAAkE/G,EAAoBK,EAAEyG,GACxFE,EAA2ChH,EAAoB,GAC/DiH,EAAmDjH,EAAoBK,EAAE2G,GACzEE,EAA8DlH,EAAoB,KAClFmH,EAAsDnH,EAAoB,KAC1EoH,EAAuDpH,EAAoB,KAC3EqH,EAAqErH,EAAoB,KACzFsH,EAA+DtH,EAAoB,KACnFuH,EAAiDvH,EAAoB,KACrEwH,EAA4CxH,EAAoB,GAChEyH,EAAgEzH,EAAoB,IACpF0H,EAAwE1H,EAAoBK,EAAEoH,GM1djHE,EAAWzE,OAAAsE,EAAA,IACflD,SAAA5B,GAAA,gBAAAqD,eAAA,mBAGI6B,EAAkB,SAAAC,GAAA,OACtBC,WAAYD,EAAME,OAAO,aAAc,SAAU,YAK9BrB,GNkfPC,EMpfbzD,OAAA2D,EAAA,SAAQe,INofgGvC,EMnfxGnC,OAAAsE,EAAA,INmfmMlC,EAASsB,EAAU,SAAUoB,GAG/N,QAAStB,KACP,GAAIzF,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMsF,EAEnF,KAAK,GAAIrF,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAM4G,EAAsBrG,KAAKC,MAAMoG,GAAwB5G,MAAMS,OAAOL,KAAiBN,EMjfvNgD,aAAe,SAAC+D,GAAM,GAAAC,GAC8BD,EAAEE,MADhCD,GACZ7D,YADY6D,EACDE,aADCF,EACaG,cAG/BnH,EAAKa,MAAMiB,SAASE,OAAAqE,EAAA,ON6efpG,EAUJF,EAAQR,IAAwFS,EAAOC,GAgC5G,MArDAR,KAAuE+F,EAAQsB,GAwB/EtB,EAAOzE,UMlgBPqG,mBNkgBsC,WMjgBpClH,KAAKW,MAAMiB,SAASE,OAAAqE,EAAA,ONqgBtBb,EAAOzE,UM1fPC,ON0f0B,WM1fhB,GAAAC,GACqBf,KAAKW,MAA1BwG,EADApG,EACAoG,KAAMT,EADN3F,EACM2F,UAEd,OAAKA,GAQL1H,IACGgH,EAAA,GADHhF,KACe,MADfkC,QAC8BiE,EAAKC,cAAcb,EAASrD,cAD1D,GAAAlE,IAEKiH,EAAA,MAFLjH,IAGK+G,EAAA,GAHLsB,UAG+B,cAH/B,GAAArI,IAAA,OAAAqC,UAIqB,aAJrByC,SAI4C9D,KAAK8C,kBAJjD,GAKS4D,EAAWY,IAAI,SAAAhG,GAAA,MAAAtC,KACbkH,EAAA,GADa5E,GACiBA,GAARA,QAb/BtC,IACGgH,EAAA,SADH,GAAAhH,IAEK8G,EAAA,QN6gBFR,GMxiB2BgB,EAAA/E,GNyiBwCiE,EMviBnE+B,WACLC,OAAQ3B,EAAAtE,EAAUsD,OAAO4C,WACzB7F,SAAUiE,EAAAtE,EAAUmG,KAAKD,WACzBf,WAAYf,EAAApE,EAAmBoG,KAC/BR,KAAMtB,EAAAtE,EAAUsD,OAAO4C,YN4e+JxD,EA4DvLC,KAAYD,IAAWA,GAKpB2D,IACA,SAAUlJ,EAAQC,EAAqBC,GAE7C,YACqB,IAAIG,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxF8I,EAAsCjJ,EAAoB,GAE1DkJ,GAD8ClJ,EAAoBK,EAAE4I,GACxBjJ,EAAoB,IAChEmJ,EAA2CnJ,EAAoB,GAC/DoJ,EAA2CpJ,EAAoB,IAC/DqJ,EAAoDrJ,EAAoB,KACxEsJ,EAAkDtJ,EAAoB,IACtEuJ,EAA+CvJ,EAAoB,IACnEwJ,EAA+CxJ,EAAoB,KACnEyJ,EAA+CzJ,EAAoB,IOxkBtF2H,EAAWzE,OAAAiG,EAAA,IACfO,iBAAAhH,GAAA,iCAAAqD,eAAA,cAGI4D,EAAsB,WAC1B,GAAMC,GAAa1G,OAAAkG,EAAA,IAMnB,OAJwB,UAACvB,EAAO9F,GAAR,OACtBgB,QAAS6G,EAAW/B,EAAO9F,EAAMW,OAM/BmH,EAAqB,SAAC7G,EAAD8G,GAAA,GAAavB,GAAbuB,EAAavB,IAAb,QAEzBwB,SAFkD,SAExChH,GAGJC,EAFAD,EAAQgF,OAAO,eAAgB,eAAiBhF,EAAQgF,OAAO,eAAgB,cAC7E0B,EAAA,EACOvG,OAAAqG,EAAA,GAAU,WACjBS,QAAA5J,IAAU+I,EAAA,GAAVzG,GAA8B,iCAA9BqD,eAA8E,4CAA9EkE,QAAoIC,KAAA9J,IAAA8J,uBAAgBnH,EAAQoH,IAAI,YAChKC,QAAS7B,EAAKC,cAAcb,EAAS+B,iBACrCW,UAAW,iBAAMrH,GAASE,OAAAoG,EAAA,GAAgBvG,EAAQoH,IAAI,WAG/CjH,OAAAoG,EAAA,GAAgBvG,EAAQoH,IAAI,OAG9BjH,OAAAoG,EAAA,GAAcvG,EAAQoH,IAAI,SAIvCG,QAlBkD,SAkBzCvH,GAELC,EADED,EAAQgF,OAAO,eAAgB,aACxB7E,OAAAoG,EAAA,GAAevG,EAAQoH,IAAI,OAE3BjH,OAAAoG,EAAA,GAAavG,EAAQoH,IAAI,SAItCI,OA1BkD,SA0B1CxH,GAEJC,EADED,EAAQgF,OAAO,eAAgB,WACxB7E,OAAAoG,EAAA,GAAcvG,EAAQoH,IAAI,OAE1BjH,OAAAsG,EAAA,GAAczG,KAK3ByH,oBAnCkD,SAmC7BzH,EAAS0H,GAC5BzH,EAASE,OAAAoG,EAAA,GAAYvG,EAAQoH,IAAI,MAAOM,MAI5C1K,GAAA,EAAemD,OAAAiG,EAAA,GAAWjG,OAAAgG,EAAA,SAAQS,EAAqBE,GAAoBR,EAAA,KPimBrEqB,IACA,SAAU5K,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAO4K,IAC9E,IA2BjBtF,GAAQuB,EAAStB,EA3BInF,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAE1D4K,GAD8C5K,EAAoBK,EAAEO,GACVZ,EAAoB,KAC9E6K,EAAkE7K,EAAoBK,EAAEuK,GACxFpF,EAA2CxF,EAAoB,GAC/DyF,EAAmDzF,EAAoBK,EAAEmF,GACzEsF,EAAwC9K,EAAoB,IAC5D+K,EAA8C/K,EAAoB,IAClEgL,EAA2ChL,EAAoB,KAC/DiL,EAA8CjL,EAAoB,IAClEkL,EAA4ClL,EAAoB,GAChEmL,EAAgEnL,EAAoB,IACpFoL,EAAwEpL,EAAoBK,EAAE8K,GAC9FE,EAAgDrL,EAAoB,IQvrBvF2H,EAAWzE,OAAAgI,EAAA,IACfI,QAAA5I,GAAA,iBAAAqD,eAAA,UACAwF,UAAA7I,GAAA,mBAAAqD,eAAA,YACAyF,WAAA9I,GAAA,oBAAAqD,eAAA,qBACA0F,SAAA/I,GAAA,kBAAAqD,eAAA,mBACA2F,QAAAhJ,GAAA,iBAAAqD,eAAA,kBACA4F,oBAAAjJ,GAAA,6BAAAqD,eAAA,mCACA6F,sBAAAlJ,GAAA,+BAAAqD,eAAA,uCAImB4E,EADpBzH,OAAAgI,EAAA,IR+tB+F5F,EAASsB,EAAU,SAAUoB,GAG3H,QAAS2C,KACP,GAAI1J,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMuJ,EAEnF,KAAK,GAAItJ,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAM4G,EAAsBrG,KAAKC,MAAMoG,GAAwB5G,MAAMS,OAAOL,KAAiBN,EQ9tBvN2K,aAAe,WACb3K,EAAKa,MAAMgI,SAAS7I,EAAKa,MAAMgB,UR+tB5B7B,EQ5tBL4K,YAAc,WACZ5K,EAAKa,MAAMuI,QAAQpJ,EAAKa,MAAMgB,UR6tB3B7B,EQ1tBL6K,WAAa,WACX7K,EAAKa,MAAMwI,OAAOrJ,EAAKa,MAAMgB,UR2tB1B7B,EQxtBL8K,wBAA0B,WACxB9K,EAAKa,MAAMyI,oBAAoBtJ,EAAKa,MAAMgB,SAAS,IRytBhD7B,EQttBL+K,0BAA4B,WAC1B/K,EAAKa,MAAMyI,oBAAoBtJ,EAAKa,MAAMgB,SAAS,IR6sB5C5B,EAUJF,EAAQR,IAAwFS,EAAOC,GA4F5G,MAjHAR,KAAuEgK,EAAS3C,GAwBhF2C,EAAQ1I,UQvtBRC,ORutB2B,WQvtBjB,GAAAC,GAC0Bf,KAAKW,MAA/BgB,EADAZ,EACAY,QAASwF,EADTpG,EACSoG,KAAM2D,EADf/J,EACe+J,MAEvB,KAAKnJ,EACH,MAAA3C,KAAA,SAGF,IAAI8L,EACF,MAAA9L,KAAA,gBAEK2C,EAAQoH,IAAI,gBACZpH,EAAQoH,IAAI,YAKnB,IAAIgC,SAEJ,IAAIpJ,EAAQoH,IAAI,QAAUkB,EAAA,GAA4C,OAAtCtI,EAAQoH,IAAI,eAAgB,MAAgB,CAC1E,GAAMiC,GAAYrJ,EAAQgF,OAAO,eAAgB,cAC3CyD,EAAYzI,EAAQgF,OAAO,eAAgB,cAC3CsE,EAAYtJ,EAAQgF,OAAO,eAAgB,aAC3CuE,EAAUvJ,EAAQgF,OAAO,eAAgB,UAE/C,IAAIyD,EACFW,EAAA/L,IAAW6K,EAAA,GAAXsB,UAAA,EAAAnK,KAAoC,YAApCoK,MAAuDjE,EAAKC,cAAcb,EAAS6D,iBAC9E,IAAIa,EACTF,EAAA/L,IAAW6K,EAAA,GAAX3I,QAAA,EAAAF,KAAkC,aAAlCoK,MAAsDjE,EAAKC,cAAcb,EAAS8D,SAAWvB,KAAMnH,EAAQoH,IAAI,cAA/GnI,QAAwIZ,KAAK0K,kBACxI,IAAIQ,EAAQ,CACjB,GAAIG,SAEFA,GADE1J,EAAQgF,OAAO,eAAgB,yBACjC3H,IAA6B6K,EAAA,GAA7B3I,QAAA,EAAAF,KAAoD,OAApDoK,MAAkEjE,EAAKC,cAAcb,EAASiE,sBAAwB1B,KAAMnH,EAAQoH,IAAI,cAAxInI,QAAiKZ,KAAK6K,4BAEtK7L,IAA6B6K,EAAA,GAA7B3I,QAAA,EAAAF,KAAoD,aAApDoK,MAAwEjE,EAAKC,cAAcb,EAASgE,oBAAsBzB,KAAMnH,EAAQoH,IAAI,cAA5InI,QAAsKZ,KAAK4K,0BAE7KG,EAAA/L,IACGQ,EAAA,gBADH,GAAAR,IAEK6K,EAAA,GAFL3I,QAAA,EAAAF,KAE4B,YAF5BoK,MAE+CjE,EAAKC,cAAcb,EAAS+D,QAAUxB,KAAMnH,EAAQoH,IAAI,cAFvGnI,QAEgIZ,KAAK2K,aAChIU,OAGK1J,GAAQoH,IAAI,WAAYiC,IAClCD,EAAA/L,IAAW6K,EAAA,GAAX7I,KAA4BgK,EAAY,aAAe,YAAvDI,MAA2EjE,EAAKC,cAAc4D,EAAYzE,EAAS4D,SAAW5D,EAAS2D,QAAvItJ,QAAyJZ,KAAKyK,aAA9JvJ,OAAoL8J,KAIxL,MAAAhM,KAAA,OAAAqC,UACiB,eADjB,GAAArC,IAAA,OAAAqC,UAEmB,wBAFnB,GAAArC,IAGO4K,EAAA,GAHPvI,UAGmD,wBAHnDiK,KAGiF3J,EAAQoH,IAAI,OAH7FwC,GAAA,aAGsH5J,EAAQoH,IAAI,OAA5GpH,EAAQoH,IAAI,MAHlC/J,IAAA,OAAAqC,UAIuB,+BAJvB,GAAArC,IAIkD0K,EAAA,GAJlD/H,QAIkEA,EAJlE6J,KAIiF,MAJjFxM,IAKS2K,EAAA,GALThI,QAK8BA,KAL9B3C,IAAA,OAAAqC,UAQqB,6BARrB,GASS0J,MRyvBJxB,GQh1B4BS,EAAAzI,GRi1BuCiE,EQ/0BnE+B,WACL5F,QAAS8H,EAAAlI,EAAmB+F,IAAIG,WAChCkB,SAAUtE,EAAA9C,EAAUmG,KAAKD,WACzByB,QAAS7E,EAAA9C,EAAUmG,KAAKD,WACxB0B,OAAQ9E,EAAA9C,EAAUmG,KAAKD,WACvB2B,oBAAqB/E,EAAA9C,EAAUmG,KAAKD,WACpCN,KAAM9C,EAAA9C,EAAUsD,OAAO4C,WACvBqD,OAAQzG,EAAA9C,EAAUkK,MRqtBgExH,EA2HnFC,KAAYD","file":"features/blocks.js","sourcesContent":["webpackJsonp([17],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 298:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButtonSlim; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_back_button__ = __webpack_require__(286);\n\n\n\n\n\n\n\n\nvar ColumnBackButtonSlim = function (_ColumnBackButton) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButtonSlim, _ColumnBackButton);\n\n function ColumnBackButtonSlim() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButtonSlim);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ColumnBackButton.apply(this, arguments));\n }\n\n ColumnBackButtonSlim.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-back-button--slim'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n onClick: this.handleClick,\n className: 'column-back-button column-back-button--slim-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n })));\n };\n\n return ColumnBackButtonSlim;\n}(__WEBPACK_IMPORTED_MODULE_6__column_back_button__[\"a\" /* default */]);\n\n\n\n/***/ }),\n\n/***/ 823:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Blocks; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__ = __webpack_require__(298);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_account_container__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_blocks__ = __webpack_require__(334);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'column.blocks',\n 'defaultMessage': 'Blocked users'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n accountIds: state.getIn(['user_lists', 'blocks', 'items'])\n };\n};\n\nvar Blocks = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Blocks, _ImmutablePureCompone);\n\n function Blocks() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Blocks);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n\n if (scrollTop === scrollHeight - clientHeight) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_blocks__[\"c\" /* expandBlocks */])());\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Blocks.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_blocks__[\"d\" /* fetchBlocks */])());\n };\n\n Blocks.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n accountIds = _props.accountIds;\n\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */], {\n icon: 'ban',\n heading: intl.formatMessage(messages.heading)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'blocks'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_account_container__[\"a\" /* default */], {\n id: id\n }, id);\n }))));\n };\n\n return Blocks;\n}(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list,\n intl: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/blocks.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport ColumnBackButton from './column_back_button';\n\nexport default class ColumnBackButtonSlim extends ColumnBackButton {\n\n render () {\n return (\n <div className='column-back-button--slim'>\n <div role='button' tabIndex='0' onClick={this.handleClick} className='column-back-button column-back-button--slim-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button_slim.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport Column from '../ui/components/column';\nimport ColumnBackButtonSlim from '../../components/column_back_button_slim';\nimport AccountContainer from '../../containers/account_container';\nimport { fetchBlocks, expandBlocks } from '../../actions/blocks';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n heading: { id: 'column.blocks', defaultMessage: 'Blocked users' },\n});\n\nconst mapStateToProps = state => ({\n accountIds: state.getIn(['user_lists', 'blocks', 'items']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Blocks extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n intl: PropTypes.object.isRequired,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchBlocks());\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n\n if (scrollTop === scrollHeight - clientHeight) {\n this.props.dispatch(expandBlocks());\n }\n }\n\n render () {\n const { intl, accountIds } = this.props;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column icon='ban' heading={intl.formatMessage(messages.heading)}>\n <ColumnBackButtonSlim />\n <ScrollContainer scrollKey='blocks'>\n <div className='scrollable' onScroll={this.handleScroll}>\n {accountIds.map(id =>\n <AccountContainer key={id} id={id} />\n )}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/blocks/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/blocks.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/components/column_back_button_slim.js","webpack:///./app/javascript/mastodon/features/blocks/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","298","ColumnBackButtonSlim","__WEBPACK_IMPORTED_MODULE_6__column_back_button__","_ColumnBackButton","tabIndex","822","defineProperty","value","Blocks","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_10__ui_components_column__","__WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__","__WEBPACK_IMPORTED_MODULE_12__containers_account_container__","__WEBPACK_IMPORTED_MODULE_13__actions_blocks__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default","messages","mapStateToProps","state","accountIds","getIn","_ImmutablePureCompone","e","_e$target","target","scrollHeight","clientHeight","componentWillMount","intl","formatMessage","scrollKey","map","propTypes","params","isRequired","func","list","841","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","onFollow","message","values","name","get","confirm","onConfirm","onBlock","onMute","onMuteNotifications","notifications","842","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","disabled","title","hidingNotificationsButton","href","to","size","bool"],"mappings":"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","file":"features/blocks.js","sourcesContent":["webpackJsonp([17],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 298:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButtonSlim; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_back_button__ = __webpack_require__(286);\n\n\n\n\n\n\n\n\nvar ColumnBackButtonSlim = function (_ColumnBackButton) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButtonSlim, _ColumnBackButton);\n\n function ColumnBackButtonSlim() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButtonSlim);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ColumnBackButton.apply(this, arguments));\n }\n\n ColumnBackButtonSlim.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-back-button--slim'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n onClick: this.handleClick,\n className: 'column-back-button column-back-button--slim-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n })));\n };\n\n return ColumnBackButtonSlim;\n}(__WEBPACK_IMPORTED_MODULE_6__column_back_button__[\"a\" /* default */]);\n\n\n\n/***/ }),\n\n/***/ 822:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Blocks; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__ = __webpack_require__(298);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_account_container__ = __webpack_require__(841);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_blocks__ = __webpack_require__(334);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'column.blocks',\n 'defaultMessage': 'Blocked users'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n accountIds: state.getIn(['user_lists', 'blocks', 'items'])\n };\n};\n\nvar Blocks = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Blocks, _ImmutablePureCompone);\n\n function Blocks() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Blocks);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n\n if (scrollTop === scrollHeight - clientHeight) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_blocks__[\"c\" /* expandBlocks */])());\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Blocks.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_blocks__[\"d\" /* fetchBlocks */])());\n };\n\n Blocks.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n accountIds = _props.accountIds;\n\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */], {\n icon: 'ban',\n heading: intl.formatMessage(messages.heading)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'blocks'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_account_container__[\"a\" /* default */], {\n id: id\n }, id);\n }))));\n };\n\n return Blocks;\n}(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list,\n intl: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 841:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(842);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 842:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/blocks.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport ColumnBackButton from './column_back_button';\n\nexport default class ColumnBackButtonSlim extends ColumnBackButton {\n\n render () {\n return (\n <div className='column-back-button--slim'>\n <div role='button' tabIndex='0' onClick={this.handleClick} className='column-back-button column-back-button--slim-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button_slim.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport Column from '../ui/components/column';\nimport ColumnBackButtonSlim from '../../components/column_back_button_slim';\nimport AccountContainer from '../../containers/account_container';\nimport { fetchBlocks, expandBlocks } from '../../actions/blocks';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n heading: { id: 'column.blocks', defaultMessage: 'Blocked users' },\n});\n\nconst mapStateToProps = state => ({\n accountIds: state.getIn(['user_lists', 'blocks', 'items']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Blocks extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n intl: PropTypes.object.isRequired,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchBlocks());\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n\n if (scrollTop === scrollHeight - clientHeight) {\n this.props.dispatch(expandBlocks());\n }\n }\n\n render () {\n const { intl, accountIds } = this.props;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column icon='ban' heading={intl.formatMessage(messages.heading)}>\n <ColumnBackButtonSlim />\n <ScrollContainer scrollKey='blocks'>\n <div className='scrollable' onScroll={this.handleScroll}>\n {accountIds.map(id =>\n <AccountContainer key={id} id={id} />\n )}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/blocks/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/community_timeline.js b/priv/static/packs/features/community_timeline.js index 3cf55f61d..3182336e0 100644 --- a/priv/static/packs/features/community_timeline.js +++ b/priv/static/packs/features/community_timeline.js @@ -1,2 +1,2 @@ -webpackJsonp([9],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},283:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(153),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),p=n(283),f=n(151),g=n(26),v=n(6),b=n(11),m=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!b.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(b.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.k)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(93),f=n.n(p),g=n(0),v=n.n(g),b=n(152),m=n(5),y=n.n(m),M=n(288),O=n(149),I=n(293),C=n(8),j=(n.n(C),n(10)),k=n.n(j),_=n(154),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new I.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(_.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(_.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(_.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof C.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,p=v.a.Children.count(n),f=c&&p>0&&d?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||p>0||!u?v.a.createElement("div",{className:k()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(b.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),u=n.n(l),d=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),u=n.n(l),d=n(2),h=n.n(d),p=n(1),f=n.n(p),g=n(3),v=n.n(g),b=n(4),m=n.n(b),y=n(34),M=n.n(y),O=n(0),I=n.n(O),C=n(13),j=n.n(C),k=n(5),_=n.n(k),L=n(285),S=n(12),x=n.n(S),R=n(149),H=n(287),T=n(6),P=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,v()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(R.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(x.a),o.propTypes={disabled:_.a.bool,maxId:_.a.string,onClick:_.a.func.isRequired},i),w=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,v()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(T.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(T.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(P,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return I.a.createElement(H.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(x.a),r.propTypes={scrollKey:_.a.string.isRequired,statusIds:j.a.list.isRequired,onLoadMore:_.a.func,onScrollToTop:_.a.func,onScroll:_.a.func,trackScroll:_.a.bool,shouldUpdateScroll:_.a.func,isLoading:_.a.bool,isPartial:_.a.bool,hasMore:_.a.bool,prepend:_.a.node,emptyMessage:_.a.node},r.defaultProps={trackScroll:!0},s)},808:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return _});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(9),v=n(92),b=n(69),m=n(68),y=n(19),M=n(297),O=n(6),I=n(963),C=n(70),j=Object(O.f)({title:{id:"column.community",defaultMessage:"Local timeline"}}),k=function(e){return{hasUnread:e.getIn(["timelines","community","unread"])>0}},_=(o=Object(g.connect)(k))(i=Object(O.g)(i=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(M.f)(t):Object(M.d)("COMMUNITY",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(M.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){o.props.dispatch(Object(y.m)({maxId:e}))},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){var e=this.props.dispatch;e(Object(y.m)()),this.disconnect=e(Object(C.a)())},t.prototype.componentWillUnmount=function(){this.disconnect&&(this.disconnect(),this.disconnect=null)},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.hasUnread,o=e.columnId,i=e.multiColumn,r=!!o;return f.a.createElement(b.a,{ref:this.setRef},s()(m.a,{icon:"users",active:n,title:t.formatMessage(j.title),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:r,multiColumn:i},void 0,s()(I.a,{})),s()(v.a,{trackScroll:!r,scrollKey:"community_timeline-"+o,timelineId:"community",onLoadMore:this.handleLoadMore,emptyMessage:s()(O.b,{id:"empty_column.community",defaultMessage:"The local timeline is empty. Write something publicly to get the ball rolling!"})}))},t}(f.a.PureComponent))||i)||i},861:function(e,t,n){"use strict";n.d(t,"a",function(){return p});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),p=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleChange=function(e){o.props.onChange(o.props.settingKey,e.target.value)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.settingKey,o=e.label;return i()("label",{},void 0,i()("span",{style:{display:"none"}},void 0,o),i()("input",{className:"setting-text",value:t.getIn(n),onChange:this.handleChange,placeholder:o}))},t}(h.a.PureComponent)},872:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i=n(2),r=n.n(i),s=n(1),a=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),h=n(0),p=n.n(h),f=n(6),g=n(861),v=Object(f.f)({filter_regex:{id:"home.column_settings.filter_regex",defaultMessage:"Filter out by regular expressions"},settings:{id:"home.settings",defaultMessage:"Column settings"}}),b=Object(f.g)(o=function(e){function t(){return a()(this,t),l()(this,e.apply(this,arguments))}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.onChange,o=e.intl;return r()("div",{},void 0,r()("span",{className:"column-settings__section"},void 0,r()(f.b,{id:"home.column_settings.advanced",defaultMessage:"Advanced"})),r()("div",{className:"column-settings__row"},void 0,r()(g.a,{settings:t,settingKey:["regex","body"],onChange:n,label:o.formatMessage(v.filter_regex)})))},t}(p.a.PureComponent))||o},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),u=(n.n(l),n(11)),d=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===u.g)),r&&i&&o.get("account")!==u.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=d();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},p=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,p)(s.a)},963:function(e,t,n){"use strict";var o=n(9),i=n(872),r=n(57),s=function(e){return{settings:e.getIn(["settings","community"])}},a=function(e){return{onChange:function(t,n){e(Object(r.c)(["community"].concat(t),n))}}};t.a=Object(o.connect)(s,a)(i.a)}}); +webpackJsonp([9],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},282:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:r,account:e,status:t}),n(Object(i.d)("REPORT"))}}t.a=o;var i=(n(14),n(26)),r="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(152),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),p=n(282),f=n(284),g=n(26),v=n(6),b=n(11),m=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!b.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(b.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.a)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(93),f=n.n(p),g=n(0),v=n.n(g),b=n(151),m=n(5),y=n.n(m),M=n(288),O=n(149),I=n(293),C=n(8),j=(n.n(C),n(10)),_=n.n(j),k=n(153),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new I.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(k.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(k.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(k.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof C.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,p=v.a.Children.count(n),f=c&&p>0&&d?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||p>0||!u?v.a.createElement("div",{className:_()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(b.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),u=n.n(l),d=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return E});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),u=n.n(l),d=n(2),h=n.n(d),p=n(1),f=n.n(p),g=n(3),v=n.n(g),b=n(4),m=n.n(b),y=n(34),M=n.n(y),O=n(0),I=n.n(O),C=n(13),j=n.n(C),_=n(5),k=n.n(_),L=n(285),S=n(12),R=n.n(S),x=n(149),T=n(287),H=n(6),P=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,v()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(x.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(R.a),o.propTypes={disabled:k.a.bool,maxId:k.a.string,onClick:k.a.func.isRequired},i),E=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,v()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(H.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(H.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(P,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return I.a.createElement(T.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(R.a),r.propTypes={scrollKey:k.a.string.isRequired,statusIds:j.a.list.isRequired,onLoadMore:k.a.func,onScrollToTop:k.a.func,onScroll:k.a.func,trackScroll:k.a.bool,shouldUpdateScroll:k.a.func,isLoading:k.a.bool,isPartial:k.a.bool,hasMore:k.a.bool,prepend:k.a.node,emptyMessage:k.a.node},r.defaultProps={trackScroll:!0},s)},807:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return k});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(9),v=n(92),b=n(69),m=n(68),y=n(19),M=n(297),O=n(6),I=n(961),C=n(70),j=Object(O.f)({title:{id:"column.community",defaultMessage:"Local timeline"}}),_=function(e){return{hasUnread:e.getIn(["timelines","community","unread"])>0}},k=(o=Object(g.connect)(_))(i=Object(O.g)(i=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(M.f)(t):Object(M.d)("COMMUNITY",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(M.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){o.props.dispatch(Object(y.m)({maxId:e}))},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){var e=this.props.dispatch;e(Object(y.m)()),this.disconnect=e(Object(C.a)())},t.prototype.componentWillUnmount=function(){this.disconnect&&(this.disconnect(),this.disconnect=null)},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.hasUnread,o=e.columnId,i=e.multiColumn,r=!!o;return f.a.createElement(b.a,{ref:this.setRef},s()(m.a,{icon:"users",active:n,title:t.formatMessage(j.title),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:r,multiColumn:i},void 0,s()(I.a,{})),s()(v.a,{trackScroll:!r,scrollKey:"community_timeline-"+o,timelineId:"community",onLoadMore:this.handleLoadMore,emptyMessage:s()(O.b,{id:"empty_column.community",defaultMessage:"The local timeline is empty. Write something publicly to get the ball rolling!"})}))},t}(f.a.PureComponent))||i)||i},855:function(e,t,n){"use strict";n.d(t,"a",function(){return p});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),p=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleChange=function(e){o.props.onChange(o.props.settingKey,e.target.value)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.settingKey,o=e.label;return i()("label",{},void 0,i()("span",{style:{display:"none"}},void 0,o),i()("input",{className:"setting-text",value:t.getIn(n),onChange:this.handleChange,placeholder:o}))},t}(h.a.PureComponent)},870:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i=n(2),r=n.n(i),s=n(1),a=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),h=n(0),p=n.n(h),f=n(6),g=n(855),v=Object(f.f)({filter_regex:{id:"home.column_settings.filter_regex",defaultMessage:"Filter out by regular expressions"},settings:{id:"home.settings",defaultMessage:"Column settings"}}),b=Object(f.g)(o=function(e){function t(){return a()(this,t),l()(this,e.apply(this,arguments))}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.onChange,o=e.intl;return r()("div",{},void 0,r()("span",{className:"column-settings__section"},void 0,r()(f.b,{id:"home.column_settings.advanced",defaultMessage:"Advanced"})),r()("div",{className:"column-settings__row"},void 0,r()(g.a,{settings:t,settingKey:["regex","body"],onChange:n,label:o.formatMessage(v.filter_regex)})))},t}(p.a.PureComponent))||o},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),u=(n.n(l),n(11)),d=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===u.g)),r&&i&&o.get("account")!==u.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=d();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},p=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,p)(s.a)},961:function(e,t,n){"use strict";var o=n(9),i=n(870),r=n(57),s=function(e){return{settings:e.getIn(["settings","community"])}},a=function(e){return{onChange:function(t,n){e(Object(r.c)(["community"].concat(t),n))}}};t.a=Object(o.connect)(s,a)(i.a)}}); //# sourceMappingURL=community_timeline.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/community_timeline.js.map b/priv/static/packs/features/community_timeline.js.map index f2f003c84..fbbac283d 100644 --- a/priv/static/packs/features/community_timeline.js.map +++ b/priv/static/packs/features/community_timeline.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/community_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/community_timeline/index.js","webpack:///./app/javascript/mastodon/components/setting_text.js","webpack:///./app/javascript/mastodon/features/community_timeline/components/column_settings.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js","webpack:///./app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","283","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","808","defineProperty","value","CommunityTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_7__components_column__","__WEBPACK_IMPORTED_MODULE_8__components_column_header__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__","__WEBPACK_IMPORTED_MODULE_13__actions_streaming__","title","mapStateToProps","hasUnread","handlePin","columnId","handleMove","dir","_this$props2","handleHeaderClick","column","multiColumn","pinned","icon","active","onPin","onMove","timelineId","861","SettingText","handleChange","onChange","settingKey","settings","label","display","placeholder","872","ColumnSettings","__WEBPACK_IMPORTED_MODULE_6__components_setting_text__","filter_regex","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","filter","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4","963","__WEBPACK_IMPORTED_MODULE_1__components_column_settings__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","checked"],"mappings":"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","file":"features/community_timeline.js","sourcesContent":["webpackJsonp([9],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 808:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return CommunityTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__ = __webpack_require__(963);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_streaming__ = __webpack_require__(70);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n title: {\n 'id': 'column.community',\n 'defaultMessage': 'Local timeline'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n hasUnread: state.getIn(['timelines', 'community', 'unread']) > 0\n };\n};\n\nvar CommunityTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(CommunityTimeline, _React$PureComponent);\n\n function CommunityTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, CommunityTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('COMMUNITY', {}));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"m\" /* expandCommunityTimeline */])({ maxId: maxId }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n CommunityTimeline.prototype.componentDidMount = function componentDidMount() {\n var dispatch = this.props.dispatch;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"m\" /* expandCommunityTimeline */])());\n this.disconnect = dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_streaming__[\"a\" /* connectCommunityStream */])());\n };\n\n CommunityTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n };\n\n CommunityTimeline.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n hasUnread = _props.hasUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_7__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column_header__[\"a\" /* default */], {\n icon: 'users',\n active: hasUnread,\n title: intl.formatMessage(messages.title),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__[\"a\" /* default */], {})),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__[\"a\" /* default */], {\n trackScroll: !pinned,\n scrollKey: 'community_timeline-' + columnId,\n timelineId: 'community',\n onLoadMore: this.handleLoadMore,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.community',\n defaultMessage: 'The local timeline is empty. Write something publicly to get the ball rolling!'\n })\n })\n );\n };\n\n return CommunityTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 861:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingText; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar SettingText = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingText, _React$PureComponent);\n\n function SettingText() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingText);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(_this.props.settingKey, e.target.value);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingText.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n settingKey = _props.settingKey,\n label = _props.label;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, label), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'setting-text',\n value: settings.getIn(settingKey),\n onChange: this.handleChange,\n placeholder: label\n }));\n };\n\n return SettingText;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 872:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnSettings; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_setting_text__ = __webpack_require__(861);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n filter_regex: {\n 'id': 'home.column_settings.filter_regex',\n 'defaultMessage': 'Filter out by regular expressions'\n },\n settings: {\n 'id': 'home.settings',\n 'defaultMessage': 'Column settings'\n }\n});\n\nvar ColumnSettings = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnSettings, _React$PureComponent);\n\n function ColumnSettings() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnSettings);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n ColumnSettings.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n onChange = _props.onChange,\n intl = _props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.advanced',\n defaultMessage: 'Advanced'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_setting_text__[\"a\" /* default */], {\n settings: settings,\n settingKey: ['regex', 'body'],\n onChange: onChange,\n label: intl.formatMessage(messages.filter_regex)\n })));\n };\n\n return ColumnSettings;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 963:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_column_settings__ = __webpack_require__(872);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(57);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n settings: state.getIn(['settings', 'community'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(key, checked) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['community'].concat(key), checked));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_column_settings__[\"a\" /* default */]));\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/community_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { expandCommunityTimeline } from '../../actions/timelines';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ColumnSettingsContainer from './containers/column_settings_container';\nimport { connectCommunityStream } from '../../actions/streaming';\n\nconst messages = defineMessages({\n title: { id: 'column.community', defaultMessage: 'Local timeline' },\n});\n\nconst mapStateToProps = state => ({\n hasUnread: state.getIn(['timelines', 'community', 'unread']) > 0,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class CommunityTimeline extends React.PureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n columnId: PropTypes.string,\n intl: PropTypes.object.isRequired,\n hasUnread: PropTypes.bool,\n multiColumn: PropTypes.bool,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('COMMUNITY', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n componentDidMount () {\n const { dispatch } = this.props;\n\n dispatch(expandCommunityTimeline());\n this.disconnect = dispatch(connectCommunityStream());\n }\n\n componentWillUnmount () {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandCommunityTimeline({ maxId }));\n }\n\n render () {\n const { intl, hasUnread, columnId, multiColumn } = this.props;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='users'\n active={hasUnread}\n title={intl.formatMessage(messages.title)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <ColumnSettingsContainer />\n </ColumnHeader>\n\n <StatusListContainer\n trackScroll={!pinned}\n scrollKey={`community_timeline-${columnId}`}\n timelineId='community'\n onLoadMore={this.handleLoadMore}\n emptyMessage={<FormattedMessage id='empty_column.community' defaultMessage='The local timeline is empty. Write something publicly to get the ball rolling!' />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/community_timeline/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nexport default class SettingText extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n settingKey: PropTypes.array.isRequired,\n label: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n handleChange = (e) => {\n this.props.onChange(this.props.settingKey, e.target.value);\n }\n\n render () {\n const { settings, settingKey, label } = this.props;\n\n return (\n <label>\n <span style={{ display: 'none' }}>{label}</span>\n <input\n className='setting-text'\n value={settings.getIn(settingKey)}\n onChange={this.handleChange}\n placeholder={label}\n />\n </label>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/setting_text.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport SettingText from '../../../components/setting_text';\n\nconst messages = defineMessages({\n filter_regex: { id: 'home.column_settings.filter_regex', defaultMessage: 'Filter out by regular expressions' },\n settings: { id: 'home.settings', defaultMessage: 'Column settings' },\n});\n\n@injectIntl\nexport default class ColumnSettings extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n onChange: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { settings, onChange, intl } = this.props;\n\n return (\n <div>\n <span className='column-settings__section'><FormattedMessage id='home.column_settings.advanced' defaultMessage='Advanced' /></span>\n\n <div className='column-settings__row'>\n <SettingText settings={settings} settingKey={['regex', 'body']} onChange={onChange} label={intl.formatMessage(messages.filter_regex)} />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/community_timeline/components/column_settings.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js","import { connect } from 'react-redux';\nimport ColumnSettings from '../components/column_settings';\nimport { changeSetting } from '../../../actions/settings';\n\nconst mapStateToProps = state => ({\n settings: state.getIn(['settings', 'community']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (key, checked) {\n dispatch(changeSetting(['community', ...key], checked));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ColumnSettings);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/community_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/community_timeline/index.js","webpack:///./app/javascript/mastodon/components/setting_text.js","webpack:///./app/javascript/mastodon/features/community_timeline/components/column_settings.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js","webpack:///./app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","282","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","807","defineProperty","value","CommunityTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_7__components_column__","__WEBPACK_IMPORTED_MODULE_8__components_column_header__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__","__WEBPACK_IMPORTED_MODULE_13__actions_streaming__","title","mapStateToProps","hasUnread","handlePin","columnId","handleMove","dir","_this$props2","handleHeaderClick","column","multiColumn","pinned","icon","active","onPin","onMove","timelineId","855","SettingText","handleChange","onChange","settingKey","settings","label","display","placeholder","870","ColumnSettings","__WEBPACK_IMPORTED_MODULE_6__components_setting_text__","filter_regex","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","filter","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4","961","__WEBPACK_IMPORTED_MODULE_1__components_column_settings__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","checked"],"mappings":"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","file":"features/community_timeline.js","sourcesContent":["webpackJsonp([9],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 807:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return CommunityTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__ = __webpack_require__(961);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_streaming__ = __webpack_require__(70);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n title: {\n 'id': 'column.community',\n 'defaultMessage': 'Local timeline'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n hasUnread: state.getIn(['timelines', 'community', 'unread']) > 0\n };\n};\n\nvar CommunityTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(CommunityTimeline, _React$PureComponent);\n\n function CommunityTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, CommunityTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('COMMUNITY', {}));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"m\" /* expandCommunityTimeline */])({ maxId: maxId }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n CommunityTimeline.prototype.componentDidMount = function componentDidMount() {\n var dispatch = this.props.dispatch;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"m\" /* expandCommunityTimeline */])());\n this.disconnect = dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_streaming__[\"a\" /* connectCommunityStream */])());\n };\n\n CommunityTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n };\n\n CommunityTimeline.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n hasUnread = _props.hasUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_7__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column_header__[\"a\" /* default */], {\n icon: 'users',\n active: hasUnread,\n title: intl.formatMessage(messages.title),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__[\"a\" /* default */], {})),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__[\"a\" /* default */], {\n trackScroll: !pinned,\n scrollKey: 'community_timeline-' + columnId,\n timelineId: 'community',\n onLoadMore: this.handleLoadMore,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.community',\n defaultMessage: 'The local timeline is empty. Write something publicly to get the ball rolling!'\n })\n })\n );\n };\n\n return CommunityTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 855:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingText; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar SettingText = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingText, _React$PureComponent);\n\n function SettingText() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingText);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(_this.props.settingKey, e.target.value);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingText.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n settingKey = _props.settingKey,\n label = _props.label;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, label), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'setting-text',\n value: settings.getIn(settingKey),\n onChange: this.handleChange,\n placeholder: label\n }));\n };\n\n return SettingText;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 870:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnSettings; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_setting_text__ = __webpack_require__(855);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n filter_regex: {\n 'id': 'home.column_settings.filter_regex',\n 'defaultMessage': 'Filter out by regular expressions'\n },\n settings: {\n 'id': 'home.settings',\n 'defaultMessage': 'Column settings'\n }\n});\n\nvar ColumnSettings = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnSettings, _React$PureComponent);\n\n function ColumnSettings() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnSettings);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n ColumnSettings.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n onChange = _props.onChange,\n intl = _props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.advanced',\n defaultMessage: 'Advanced'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_setting_text__[\"a\" /* default */], {\n settings: settings,\n settingKey: ['regex', 'body'],\n onChange: onChange,\n label: intl.formatMessage(messages.filter_regex)\n })));\n };\n\n return ColumnSettings;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 961:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_column_settings__ = __webpack_require__(870);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(57);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n settings: state.getIn(['settings', 'community'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(key, checked) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['community'].concat(key), checked));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_column_settings__[\"a\" /* default */]));\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/community_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { expandCommunityTimeline } from '../../actions/timelines';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ColumnSettingsContainer from './containers/column_settings_container';\nimport { connectCommunityStream } from '../../actions/streaming';\n\nconst messages = defineMessages({\n title: { id: 'column.community', defaultMessage: 'Local timeline' },\n});\n\nconst mapStateToProps = state => ({\n hasUnread: state.getIn(['timelines', 'community', 'unread']) > 0,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class CommunityTimeline extends React.PureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n columnId: PropTypes.string,\n intl: PropTypes.object.isRequired,\n hasUnread: PropTypes.bool,\n multiColumn: PropTypes.bool,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('COMMUNITY', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n componentDidMount () {\n const { dispatch } = this.props;\n\n dispatch(expandCommunityTimeline());\n this.disconnect = dispatch(connectCommunityStream());\n }\n\n componentWillUnmount () {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandCommunityTimeline({ maxId }));\n }\n\n render () {\n const { intl, hasUnread, columnId, multiColumn } = this.props;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='users'\n active={hasUnread}\n title={intl.formatMessage(messages.title)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <ColumnSettingsContainer />\n </ColumnHeader>\n\n <StatusListContainer\n trackScroll={!pinned}\n scrollKey={`community_timeline-${columnId}`}\n timelineId='community'\n onLoadMore={this.handleLoadMore}\n emptyMessage={<FormattedMessage id='empty_column.community' defaultMessage='The local timeline is empty. Write something publicly to get the ball rolling!' />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/community_timeline/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nexport default class SettingText extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n settingKey: PropTypes.array.isRequired,\n label: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n handleChange = (e) => {\n this.props.onChange(this.props.settingKey, e.target.value);\n }\n\n render () {\n const { settings, settingKey, label } = this.props;\n\n return (\n <label>\n <span style={{ display: 'none' }}>{label}</span>\n <input\n className='setting-text'\n value={settings.getIn(settingKey)}\n onChange={this.handleChange}\n placeholder={label}\n />\n </label>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/setting_text.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport SettingText from '../../../components/setting_text';\n\nconst messages = defineMessages({\n filter_regex: { id: 'home.column_settings.filter_regex', defaultMessage: 'Filter out by regular expressions' },\n settings: { id: 'home.settings', defaultMessage: 'Column settings' },\n});\n\n@injectIntl\nexport default class ColumnSettings extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n onChange: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { settings, onChange, intl } = this.props;\n\n return (\n <div>\n <span className='column-settings__section'><FormattedMessage id='home.column_settings.advanced' defaultMessage='Advanced' /></span>\n\n <div className='column-settings__row'>\n <SettingText settings={settings} settingKey={['regex', 'body']} onChange={onChange} label={intl.formatMessage(messages.filter_regex)} />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/community_timeline/components/column_settings.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js","import { connect } from 'react-redux';\nimport ColumnSettings from '../components/column_settings';\nimport { changeSetting } from '../../../actions/settings';\n\nconst mapStateToProps = state => ({\n settings: state.getIn(['settings', 'community']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (key, checked) {\n dispatch(changeSetting(['community', ...key], checked));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ColumnSettings);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/compose.js b/priv/static/packs/features/compose.js index 60cba5361..f63fdbc26 100644 --- a/priv/static/packs/features/compose.js +++ b/priv/static/packs/features/compose.js @@ -1,2 +1,2 @@ -webpackJsonp([2],{283:function(e,t,n){"use strict";function o(e){return function(t){t({type:i,account:e}),t(Object(a.d)("MUTE"))}}t.a=o;var a=(n(14),n(22),n(15),n(26)),i="MUTES_INIT_MODAL"},285:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(0),s=(n.n(i),n(9)),r=n(153),c=n(66),l=n(18),u=n(67),d=n(22),p=n(91),g=n(283),f=n(151),h=n(26),m=n(6),v=n(11),b=Object(m.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},_=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!v.b?this.onModalReblog(t):e(Object(h.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(v.e?Object(h.d)("CONFIRM",{message:n.formatMessage(b.deleteMessage),confirm:n.formatMessage(b.deleteConfirm),onConfirm:function(){return e(Object(p.f)(t.get("id")))}}):Object(p.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(h.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(h.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(h.d)("CONFIRM",{message:a()(m.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(b.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.k)(t.get("account"),t))},onMute:function(t){e(Object(g.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(p.k)(t.get("id")):Object(p.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(p.j)(t.get("id")):Object(p.h)(t.get("id")))}}};t.a=Object(m.g)(Object(s.connect)(y,_)(r.a))},302:function(e,t,n){"use strict";n.d(t,"a",function(){return A});var o,a,i,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),p=n(4),g=n.n(p),f=n(0),h=n.n(f),m=n(303),v=n(99),b=n(13),y=n.n(b),_=n(5),k=n.n(_),w=n(304),C=n(306),j=n(311),x=n(6),M=n(313),O=n(314),S=n(316),N=n(318),D=n(319),z=n(321),I=n(327),T=n(35),F=n(12),R=n.n(F),P=n(98),E=(n.n(P),n(329)),q=n(11),U=Object(x.f)({placeholder:{id:"compose_form.placeholder",defaultMessage:"What is on your mind?"},spoiler_placeholder:{id:"compose_form.spoiler_placeholder",defaultMessage:"Write your warning here"},publish:{id:"compose_form.publish",defaultMessage:"Toot"},publishLoud:{id:"compose_form.publish_loud",defaultMessage:"{publish}!"}}),A=Object(x.g)((i=a=function(e){function t(){var n,o,a;l()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handleChange=function(e){o.props.onChange(e.target.value)},o.handleKeyDown=function(e){13===e.keyCode&&(e.ctrlKey||e.metaKey)&&o.handleSubmit()},o.handleSubmit=function(){o.props.text!==o.autosuggestTextarea.textarea.value&&o.props.onChange(o.autosuggestTextarea.textarea.value),o.props.onSubmit()},o.onSuggestionsClearRequested=function(){o.props.onClearSuggestions()},o.onSuggestionsFetchRequested=function(e){o.props.onFetchSuggestions(e)},o.onSuggestionSelected=function(e,t,n){o._restoreCaret=null,o.props.onSuggestionSelected(e,t,n)},o.handleChangeSpoilerText=function(e){o.props.onChangeSpoilerText(e.target.value)},o.setAutosuggestTextarea=function(e){o.autosuggestTextarea=e},o.handleEmojiPick=function(e){var t=o.autosuggestTextarea.textarea.selectionStart,n=e.native;o._restoreCaret=t+n.length+1,o.props.onPickEmoji(t,e)},a=n,d()(o,a)}return g()(t,e),t.prototype.componentWillReceiveProps=function(e){!e.is_uploading&&this.props.is_uploading&&(this._restoreCaret=this.autosuggestTextarea.textarea.selectionStart)},t.prototype.componentDidUpdate=function(e){if(this.props.focusDate!==e.focusDate||e.is_uploading&&!this.props.is_uploading&&"number"==typeof this._restoreCaret){var t=void 0,n=void 0;this.props.preselectDate!==e.preselectDate?(t=this.props.text.length,n=this.props.text.search(/\s/)+1):"number"==typeof this._restoreCaret?(n=this._restoreCaret,t=this._restoreCaret):(t=this.props.text.length,n=t),this.autosuggestTextarea.textarea.setSelectionRange(n,t),this.autosuggestTextarea.textarea.focus()}else e.is_submitting&&!this.props.is_submitting&&this.autosuggestTextarea.textarea.focus()},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.onPaste,o=e.showSearch,a=e.anyMedia,i=this.props.is_submitting,s=[this.props.spoiler_text,Object(E.a)(this.props.text)].join(""),c=i||this.props.is_uploading||Object(P.length)(s)>q.c||0!==s.length&&0===s.trim().length&&!a,l="";return l="private"===this.props.privacy||"direct"===this.props.privacy?r()("span",{className:"compose-form__publish-private"},void 0,r()("i",{className:"fa fa-lock"})," ",t.formatMessage(U.publish)):"unlisted"!==this.props.privacy?t.formatMessage(U.publishLoud,{publish:t.formatMessage(U.publish)}):t.formatMessage(U.publish),r()("div",{className:"compose-form"},void 0,r()(I.a,{}),r()(M.a,{isVisible:this.props.spoiler,fullHeight:50},void 0,r()("div",{className:"spoiler-input"},void 0,r()("label",{},void 0,r()("span",{style:{display:"none"}},void 0,t.formatMessage(U.spoiler_placeholder)),r()("input",{placeholder:t.formatMessage(U.spoiler_placeholder),value:this.props.spoiler_text,onChange:this.handleChangeSpoilerText,onKeyDown:this.handleKeyDown,type:"text",className:"spoiler-input__input",id:"cw-spoiler-input"})))),r()(w.a,{}),r()("div",{className:"compose-form__autosuggest-wrapper"},void 0,h.a.createElement(C.a,{ref:this.setAutosuggestTextarea,placeholder:t.formatMessage(U.placeholder),disabled:i,value:this.props.text,onChange:this.handleChange,suggestions:this.props.suggestions,onKeyDown:this.handleKeyDown,onSuggestionsFetchRequested:this.onSuggestionsFetchRequested,onSuggestionsClearRequested:this.onSuggestionsClearRequested,onSuggestionSelected:this.onSuggestionSelected,onPaste:n,autoFocus:!o&&!Object(T.b)(window.innerWidth)}),r()(D.a,{onPickEmoji:this.handleEmojiPick})),r()("div",{className:"compose-form__modifiers"},void 0,r()(z.a,{})),r()("div",{className:"compose-form__buttons-wrapper"},void 0,r()("div",{className:"compose-form__buttons"},void 0,r()(j.a,{}),r()(S.a,{}),r()(N.a,{}),r()(O.a,{})),r()("div",{className:"character-counter__wrapper"},void 0,r()(m.a,{max:q.c,text:s}))),r()("div",{className:"compose-form__publish"},void 0,r()("div",{className:"compose-form__publish-button-wrapper"},void 0,r()(v.a,{text:l,onClick:this.handleSubmit,disabled:c,block:!0}))))},t}(R.a),a.propTypes={intl:k.a.object.isRequired,text:k.a.string.isRequired,suggestion_token:k.a.string,suggestions:y.a.list,spoiler:k.a.bool,privacy:k.a.string,spoiler_text:k.a.string,focusDate:k.a.instanceOf(Date),preselectDate:k.a.instanceOf(Date),is_submitting:k.a.bool,is_uploading:k.a.bool,onChange:k.a.func.isRequired,onSubmit:k.a.func.isRequired,onClearSuggestions:k.a.func.isRequired,onFetchSuggestions:k.a.func.isRequired,onSuggestionSelected:k.a.func.isRequired,onChangeSpoilerText:k.a.func.isRequired,onPaste:k.a.func.isRequired,onPickEmoji:k.a.func.isRequired,showSearch:k.a.bool,anyMedia:k.a.bool},a.defaultProps={showSearch:!1},o=i))||o},303:function(e,t,n){"use strict";n.d(t,"a",function(){return f});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(98),f=(n.n(g),function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.checkRemainingText=function(e){return e<0?a()("span",{className:"character-counter character-counter--over"},void 0,e):a()("span",{className:"character-counter"},void 0,e)},t.prototype.render=function(){var e=this.props.max-Object(g.length)(this.props.text);return this.checkRemainingText(e)},t}(p.a.PureComponent))},304:function(e,t,n){"use strict";var o=n(9),a=n(18),i=n(66),s=n(305),r=function(){var e=Object(i.e)();return function(t){return{status:e(t,t.getIn(["compose","in_reply_to"]))}}},c=function(e){return{onCancel:function(){e(Object(a.E)())}}};t.a=Object(o.connect)(r,c)(s.a)},305:function(e,t,n){"use strict";n.d(t,"a",function(){return O});var o,a,i,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),p=n(4),g=n.n(p),f=n(0),h=(n.n(f),n(13)),m=n.n(h),v=n(5),b=n.n(v),y=n(56),_=n(23),k=n(55),w=n(6),C=n(12),j=n.n(C),x=n(97),M=Object(w.f)({cancel:{id:"reply_indicator.cancel",defaultMessage:"Cancel"}}),O=Object(w.g)((i=a=function(e){function t(){var n,o,a;l()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onCancel()},o.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),o.context.router.history.push("/accounts/"+o.props.status.getIn(["account","id"])))},a=n,d()(o,a)}return g()(t,e),t.prototype.render=function(){var e=this.props,t=e.status,n=e.intl;if(!t)return null;var o={__html:t.get("contentHtml")},a={direction:Object(x.a)(t.get("search_index"))?"rtl":"ltr"};return r()("div",{className:"reply-indicator"},void 0,r()("div",{className:"reply-indicator__header"},void 0,r()("div",{className:"reply-indicator__cancel"},void 0,r()(_.a,{title:n.formatMessage(M.cancel),icon:"times",onClick:this.handleClick})),r()("a",{href:t.getIn(["account","url"]),onClick:this.handleAccountClick,className:"reply-indicator__display-name"},void 0,r()("div",{className:"reply-indicator__display-avatar"},void 0,r()(y.a,{account:t.get("account"),size:24})),r()(k.a,{account:t.get("account")}))),r()("div",{className:"reply-indicator__content",style:a,dangerouslySetInnerHTML:o}))},t}(j.a),a.contextTypes={router:b.a.object},a.propTypes={status:m.a.map,onCancel:b.a.func.isRequired,intl:b.a.object.isRequired},o=i))||o},306:function(e,t,n){"use strict";n.d(t,"a",function(){return N});var o,a,i=n(2),s=n.n(i),r=n(32),c=n.n(r),l=n(1),u=n.n(l),d=n(3),p=n.n(d),g=n(4),f=n.n(g),h=n(0),m=(n.n(h),n(307)),v=n(309),b=n(13),y=n.n(b),_=n(5),k=n.n(_),w=n(97),C=n(12),j=n.n(C),x=n(310),M=n(10),O=n.n(M),S=function(e,t){var n=void 0,o=e.slice(0,t).search(/\S+$/),a=e.slice(t).search(/\s/);return!(n=a<0?e.slice(o):e.slice(o,a+t))||n.trim().length<3||-1===["@",":","#"].indexOf(n[0])?[null,null]:(n=n.trim().toLowerCase(),n.length>0?[o+1,n]:[null,null])},N=(a=o=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,r=Array(i),l=0;l<i;l++)r[l]=arguments[l];return n=o=p()(this,e.call.apply(e,[this].concat(r))),o.state={suggestionsHidden:!1,selectedSuggestion:0,lastToken:null,tokenStart:0},o.onChange=function(e){var t=S(e.target.value,e.target.selectionStart),n=t[0],a=t[1];null!==a&&o.state.lastToken!==a?(o.setState({lastToken:a,selectedSuggestion:0,tokenStart:n}),o.props.onSuggestionsFetchRequested(a)):null===a&&(o.setState({lastToken:null}),o.props.onSuggestionsClearRequested()),o.props.onChange(e)},o.onKeyDown=function(e){var t=o.props,n=t.suggestions,a=t.disabled,i=o.state,s=i.selectedSuggestion,r=i.suggestionsHidden;if(a)return void e.preventDefault();switch(e.key){case"Escape":r||(e.preventDefault(),o.setState({suggestionsHidden:!0}));break;case"ArrowDown":n.size>0&&!r&&(e.preventDefault(),o.setState({selectedSuggestion:Math.min(s+1,n.size-1)}));break;case"ArrowUp":n.size>0&&!r&&(e.preventDefault(),o.setState({selectedSuggestion:Math.max(s-1,0)}));break;case"Enter":case"Tab":null!==o.state.lastToken&&n.size>0&&!r&&(e.preventDefault(),e.stopPropagation(),o.props.onSuggestionSelected(o.state.tokenStart,o.state.lastToken,n.get(s)))}!e.defaultPrevented&&o.props.onKeyDown&&o.props.onKeyDown(e)},o.onKeyUp=function(e){"Escape"===e.key&&o.state.suggestionsHidden&&document.querySelector(".ui").parentElement.focus(),o.props.onKeyUp&&o.props.onKeyUp(e)},o.onBlur=function(){o.setState({suggestionsHidden:!0})},o.onSuggestionClick=function(e){var t=o.props.suggestions.get(e.currentTarget.getAttribute("data-index"));e.preventDefault(),o.props.onSuggestionSelected(o.state.tokenStart,o.state.lastToken,t),o.textarea.focus()},o.setTextarea=function(e){o.textarea=e},o.onPaste=function(e){e.clipboardData&&1===e.clipboardData.files.length&&(o.props.onPaste(e.clipboardData.files),e.preventDefault())},o.renderSuggestion=function(e,t){var n=o.state.selectedSuggestion,a=void 0,i=void 0;return"object"===(void 0===e?"undefined":c()(e))?(a=s()(v.a,{emoji:e}),i=e.id):"#"===e[0]?(a=e,i=e):(a=s()(m.a,{id:e}),i=e),s()("div",{role:"button",tabIndex:"0","data-index":t,className:O()("autosuggest-textarea__suggestions__item",{selected:t===n}),onMouseDown:o.onSuggestionClick},i,a)},a=n,p()(o,a)}return f()(t,e),t.prototype.componentWillReceiveProps=function(e){e.suggestions!==this.props.suggestions&&e.suggestions.size>0&&this.state.suggestionsHidden&&this.setState({suggestionsHidden:!1})},t.prototype.render=function(){var e=this.props,t=e.value,n=e.suggestions,o=e.disabled,a=e.placeholder,i=e.autoFocus,r=this.state.suggestionsHidden,c={direction:"ltr"};return Object(w.a)(t)&&(c.direction="rtl"),s()("div",{className:"autosuggest-textarea"},void 0,s()("label",{},void 0,s()("span",{style:{display:"none"}},void 0,a),s()(x.a,{inputRef:this.setTextarea,className:"autosuggest-textarea__textarea",disabled:o,placeholder:a,autoFocus:i,value:t,onChange:this.onChange,onKeyDown:this.onKeyDown,onKeyUp:this.onKeyUp,onBlur:this.onBlur,onPaste:this.onPaste,style:c,"aria-autocomplete":"list"})),s()("div",{className:"autosuggest-textarea__suggestions "+(r||n.isEmpty()?"":"autosuggest-textarea__suggestions--visible")},void 0,n.map(this.renderSuggestion)))},t}(j.a),o.propTypes={value:k.a.string,suggestions:y.a.list,disabled:k.a.bool,placeholder:k.a.string,onSuggestionSelected:k.a.func.isRequired,onSuggestionsClearRequested:k.a.func.isRequired,onSuggestionsFetchRequested:k.a.func.isRequired,onChange:k.a.func.isRequired,onKeyUp:k.a.func,onKeyDown:k.a.func,onPaste:k.a.func.isRequired,autoFocus:k.a.bool},o.defaultProps={autoFocus:!0},a)},307:function(e,t,n){"use strict";var o=n(9),a=n(308),i=n(66),s=function(){var e=Object(i.c)();return function(t,n){var o=n.id;return{account:e(t,o)}}};t.a=Object(o.connect)(s)(a.a)},308:function(e,t,n){"use strict";n.d(t,"a",function(){return _});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=(n.n(g),n(56)),h=n(55),m=n(13),v=n.n(m),b=n(12),y=n.n(b),_=(a=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props.account;return s()("div",{className:"autosuggest-account"},void 0,s()("div",{className:"autosuggest-account-icon"},void 0,s()(f.a,{account:e,size:18})),s()(h.a,{account:e}))},t}(y.a),o.propTypes={account:v.a.map.isRequired},a)},309:function(e,t,n){"use strict";(function(e){n.d(t,"a",function(){return m});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(156),f=n.n(g),h=e.env.CDN_HOST||"",m=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){var e=this.props.emoji,t=void 0;if(e.custom)t=e.imageUrl;else{var n=f.a[e.native]||f.a[e.native.replace(/\uFE0F$/,"")];if(!n)return null;t=h+"/emoji/"+n.filename+".svg"}return a()("div",{className:"autosuggest-emoji"},void 0,a()("img",{className:"emojione",src:t,alt:e.native||e.colons}),e.colons)},t}(p.a.PureComponent)}).call(t,n(36))},310:function(e,t,n){"use strict";function o(){return o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},o.apply(this,arguments)}function a(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function i(e,t){if(null==e)return{};var n,o,a={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(a[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o<s.length;o++)n=s[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function s(e,t,n,o,a){void 0===n&&(n=!1),void 0===o&&(o=null),void 0===a&&(a=null),null===g.parentNode&&document.body.appendChild(g);var i=r(e,t,n);if(null===i)return null;var s=i.paddingSize,c=i.borderSize,l=i.boxSizing,u=i.sizingStyle;Object.keys(u).forEach(function(e){g.style[e]=u[e]}),Object.keys(f).forEach(function(e){g.style.setProperty(e,f[e],"important")}),g.value=e.value||e.placeholder||"x";var d=-1/0,p=1/0,h=g.scrollHeight;"border-box"===l?h+=c:"content-box"===l&&(h-=s),g.value="x";var m=g.scrollHeight-s;return null===o&&null===a||(null!==o&&(d=m*o,"border-box"===l&&(d=d+s+c),h=Math.max(d,h)),null!==a&&(p=m*a,"border-box"===l&&(p=p+s+c),h=Math.min(p,h))),{height:h,minHeight:d,maxHeight:p,rowCount:Math.floor(h/m)}}function r(e,t,n){if(void 0===n&&(n=!1),n&&m[t])return m[t];var o=window.getComputedStyle(e);if(null===o)return null;var a=h.reduce(function(e,t){return e[t]=o.getPropertyValue(t),e},{}),i=a["box-sizing"];p&&"border-box"===i&&(a.width=parseFloat(a.width)+parseFloat(o["border-right-width"])+parseFloat(o["border-left-width"])+parseFloat(o["padding-right"])+parseFloat(o["padding-left"])+"px");var s=parseFloat(a["padding-bottom"])+parseFloat(a["padding-top"]),r=parseFloat(a["border-bottom-width"])+parseFloat(a["border-top-width"]),c={sizingStyle:a,paddingSize:s,borderSize:r,boxSizing:i};return n&&(m[t]=c),c}var c=n(0),l=n.n(c),u=n(5),d=(n.n(u),"undefined"!=typeof window&&"undefined"!=typeof document),p=!!d&&!!document.documentElement.currentStyle,g=d&&document.createElement("textarea"),f={"min-height":"0","max-height":"none",height:"0",visibility:"hidden",overflow:"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},h=["letter-spacing","line-height","font-family","font-weight","font-size","font-style","tab-size","text-rendering","text-transform","width","text-indent","padding-top","padding-right","padding-bottom","padding-left","border-top-width","border-right-width","border-bottom-width","border-left-width","box-sizing"],m={},v=function(e){return delete m[e]},b=function(e){return void 0===e&&(e=0),function(){return++e}}(),y=function(){},_=d&&window.requestAnimationFrame?[window.requestAnimationFrame,window.cancelAnimationFrame]:[setTimeout,clearTimeout],k=_[0],w=_[1],C=function(e){function t(t){var n;return n=e.call(this,t)||this,n._resizeLock=!1,n._onRootDOMNode=function(e){n._rootDOMNode=e,n.props.inputRef&&n.props.inputRef(e)},n._onChange=function(e){n._controlled||n._resizeComponent(),n.props.onChange(e)},n._resizeComponent=function(e){if(void 0===e&&(e=y),void 0===n._rootDOMNode)return void e();var t=s(n._rootDOMNode,n._uid,n.props.useCacheForDOMMeasurements,n.props.minRows,n.props.maxRows);if(null===t)return void e();var o=t.height,a=t.minHeight,i=t.maxHeight,r=t.rowCount;if(n.rowCount=r,n.state.height!==o||n.state.minHeight!==a||n.state.maxHeight!==i)return void n.setState({height:o,minHeight:a,maxHeight:i},e);e()},n.state={height:t.style&&t.style.height||0,minHeight:-1/0,maxHeight:1/0},n._uid=b(),n._controlled="string"==typeof t.value,n}a(t,e);var n=t.prototype;return n.render=function(){var e=this.props,t=(e.minRows,e.maxRows,e.onHeightChange,e.useCacheForDOMMeasurements,e.inputRef,i(e,["minRows","maxRows","onHeightChange","useCacheForDOMMeasurements","inputRef"]));return t.style=o({},t.style,{height:this.state.height}),Math.max(t.style.maxHeight||1/0,this.state.maxHeight)<this.state.height&&(t.style.overflow="hidden"),l.a.createElement("textarea",o({},t,{onChange:this._onChange,ref:this._onRootDOMNode}))},n.componentDidMount=function(){var e=this;this._resizeComponent(),this._resizeListener=function(){e._resizeLock||(e._resizeLock=!0,e._resizeComponent(function(){return e._resizeLock=!1}))},window.addEventListener("resize",this._resizeListener)},n.componentWillReceiveProps=function(){var e=this;this._clearNextFrame(),this._onNextFrameActionId=k(function(){return e._resizeComponent()})},n.componentDidUpdate=function(e,t){this.state.height!==t.height&&this.props.onHeightChange(this.state.height,this)},n.componentWillUnmount=function(){this._clearNextFrame(),window.removeEventListener("resize",this._resizeListener),v(this._uid)},n._clearNextFrame=function(){w(this._onNextFrameActionId)},t}(l.a.Component);C.defaultProps={onChange:y,onHeightChange:y,useCacheForDOMMeasurements:!1},t.a=C},311:function(e,t,n){"use strict";var o=n(9),a=n(312),i=n(18),s=function(e){return{disabled:e.getIn(["compose","is_uploading"])||e.getIn(["compose","media_attachments"]).size>3||e.getIn(["compose","media_attachments"]).some(function(e){return"video"===e.get("type")}),resetFileKey:e.getIn(["compose","resetFileKey"])}},r=function(e){return{onSelectFile:function(t){e(Object(i.Z)(t))}}};t.a=Object(o.connect)(s,r)(a.a)},312:function(e,t,n){"use strict";n.d(t,"a",function(){return N});var o,a,i,s,r=n(2),c=n.n(r),l=n(1),u=n.n(l),d=n(3),p=n.n(d),g=n(4),f=n.n(g),h=n(0),m=n.n(h),v=n(23),b=n(5),y=n.n(b),_=n(6),k=n(9),w=n(12),C=n.n(w),j=n(13),x=n.n(j),M=Object(_.f)({upload:{id:"upload_button.label",defaultMessage:"Add media"}}),O=function(){return function(e){return{acceptContentTypes:e.getIn(["media_attachments","accept_content_types"])}}},S={height:null,lineHeight:"27px"},N=(o=Object(k.connect)(O))(a=Object(_.g)((s=i=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.handleChange=function(e){e.target.files.length>0&&o.props.onSelectFile(e.target.files)},o.handleClick=function(){o.fileElement.click()},o.setRef=function(e){o.fileElement=e},a=n,p()(o,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.intl,n=e.resetFileKey,o=e.disabled,a=e.acceptContentTypes;return c()("div",{className:"compose-form__upload-button"},void 0,c()(v.a,{icon:"camera",title:t.formatMessage(M.upload),disabled:o,onClick:this.handleClick,className:"compose-form__upload-button-icon",size:18,inverted:!0,style:S}),c()("label",{},void 0,c()("span",{style:{display:"none"}},void 0,t.formatMessage(M.upload)),m.a.createElement("input",{key:n,ref:this.setRef,type:"file",multiple:!1,accept:a.toArray().join(","),onChange:this.handleChange,disabled:o,style:{display:"none"}})))},t}(C.a),i.propTypes={disabled:y.a.bool,onSelectFile:y.a.func.isRequired,style:y.a.object,resetFileKey:y.a.number,acceptContentTypes:x.a.listOf(y.a.string).isRequired,intl:y.a.object.isRequired},a=s))||a)||a},313:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(0),s=(n.n(i),n(28)),r=n(27),c=n.n(r),l=function(e){var t=e.fullHeight,n=e.isVisible,o=e.children;return a()(s.a,{defaultStyle:{opacity:n?100:0,height:n?t:0},style:{opacity:c()(n?100:0),height:c()(n?t:0)}},void 0,function(e){var t=e.opacity,n=e.height;return a()("div",{style:{height:n+"px",overflow:"hidden",opacity:t/100,display:0===Math.floor(t)?"none":"block"}},void 0,o)})};t.a=l},314:function(e,t,n){"use strict";var o=n(9),a=n(315),i=n(18),s=n(6),r=Object(s.f)({marked:{id:"compose_form.spoiler.marked",defaultMessage:"Text is hidden behind warning"},unmarked:{id:"compose_form.spoiler.unmarked",defaultMessage:"Text is not hidden"}}),c=function(e,t){return{label:"CW",title:t.intl.formatMessage(e.getIn(["compose","spoiler"])?r.marked:r.unmarked),active:e.getIn(["compose","spoiler"]),ariaControls:"cw-spoiler-input"}},l=function(e){return{onClick:function(){e(Object(i.I)())}}};t.a=Object(s.g)(Object(o.connect)(c,l)(a.a))},315:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=function(e){function t(){var n,o,a;s()(this,t);for(var i=arguments.length,r=Array(i),l=0;l<i;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.handleClick=function(e){e.preventDefault(),o.props.onClick()},a=n,c()(o,a)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.label,n=e.title,o=e.active,i=e.ariaControls;return a()("button",{title:n,"aria-label":n,className:"text-icon-button "+(o?"active":""),"aria-expanded":o,onClick:this.handleClick,"aria-controls":i},void 0,t)},t}(p.a.PureComponent)},316:function(e,t,n){"use strict";var o=n(9),a=n(317),i=n(18),s=n(26),r=n(35),c=function(e){return{isModalOpen:"ACTIONS"===e.get("modal").modalType,value:e.getIn(["compose","privacy"])}},l=function(e){return{onChange:function(t){e(Object(i.J)(t))},isUserTouching:r.c,onModalOpen:function(t){return e(Object(s.d)("ACTIONS",t))},onModalClose:function(){return e(Object(s.c)())}}};t.a=Object(o.connect)(c,l)(a.a)},317:function(e,t,n){"use strict";n.d(t,"a",function(){return S});var o,a=n(2),i=n.n(a),s=n(1),r=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),p=n(0),g=n.n(p),f=n(6),h=n(23),m=n(96),v=n.n(m),b=n(28),y=n(27),_=n.n(y),k=n(46),w=n.n(k),C=n(10),j=n.n(C),x=Object(f.f)({public_short:{id:"privacy.public.short",defaultMessage:"Public"},public_long:{id:"privacy.public.long",defaultMessage:"Post to public timelines"},unlisted_short:{id:"privacy.unlisted.short",defaultMessage:"Unlisted"},unlisted_long:{id:"privacy.unlisted.long",defaultMessage:"Do not show in public timelines"},private_short:{id:"privacy.private.short",defaultMessage:"Followers-only"},private_long:{id:"privacy.private.long",defaultMessage:"Post to followers only"},direct_short:{id:"privacy.direct.short",defaultMessage:"Direct"},direct_long:{id:"privacy.direct.long",defaultMessage:"Post to mentioned users only"},change_privacy:{id:"privacy.change",defaultMessage:"Adjust status privacy"}}),M=!!w.a.hasSupport&&{passive:!0},O=function(e){function t(){var n,o,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return n=o=l()(this,e.call.apply(e,[this].concat(s))),o.handleDocumentClick=function(e){o.node&&!o.node.contains(e.target)&&o.props.onClose()},o.handleClick=function(e){if("Escape"===e.key)o.props.onClose();else if(!e.key||"Enter"===e.key){var t=e.currentTarget.getAttribute("data-index");e.preventDefault(),o.props.onClose(),o.props.onChange(t)}},o.setRef=function(e){o.node=e},a=n,l()(o,a)}return d()(t,e),t.prototype.componentDidMount=function(){document.addEventListener("click",this.handleDocumentClick,!1),document.addEventListener("touchend",this.handleDocumentClick,M)},t.prototype.componentWillUnmount=function(){document.removeEventListener("click",this.handleDocumentClick,!1),document.removeEventListener("touchend",this.handleDocumentClick,M)},t.prototype.render=function(){var e=this,t=this.props,n=t.style,o=t.items,a=t.value;return i()(b.a,{defaultStyle:{opacity:0,scaleX:.85,scaleY:.75},style:{opacity:_()(1,{damping:35,stiffness:400}),scaleX:_()(1,{damping:35,stiffness:400}),scaleY:_()(1,{damping:35,stiffness:400})}},void 0,function(t){var s=t.opacity,r=t.scaleX,c=t.scaleY;return g.a.createElement("div",{className:"privacy-dropdown__dropdown",style:Object.assign({},n,{opacity:s,transform:"scale("+r+", "+c+")"}),ref:e.setRef},o.map(function(t){return i()("div",{role:"button",tabIndex:"0","data-index":t.value,onKeyDown:e.handleClick,onClick:e.handleClick,className:j()("privacy-dropdown__option",{active:t.value===a})},t.value,i()("div",{className:"privacy-dropdown__option__icon"},void 0,i()("i",{className:"fa fa-fw fa-"+t.icon})),i()("div",{className:"privacy-dropdown__option__content"},void 0,i()("strong",{},void 0,t.text),t.meta))}))})},t}(g.a.PureComponent),S=Object(f.g)(o=function(e){function t(){var n,o,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return n=o=l()(this,e.call.apply(e,[this].concat(s))),o.state={open:!1},o.handleToggle=function(){o.props.isUserTouching()?o.state.open?o.props.onModalClose():o.props.onModalOpen({actions:o.options.map(function(e){return Object.assign({},e,{active:e.value===o.props.value})}),onClick:o.handleModalActionClick}):o.setState({open:!o.state.open})},o.handleModalActionClick=function(e){e.preventDefault();var t=o.options[e.currentTarget.getAttribute("data-index")].value;o.props.onModalClose(),o.props.onChange(t)},o.handleKeyDown=function(e){switch(e.key){case"Enter":o.handleToggle();break;case"Escape":o.handleClose()}},o.handleClose=function(){o.setState({open:!1})},o.handleChange=function(e){o.props.onChange(e)},a=n,l()(o,a)}return d()(t,e),t.prototype.componentWillMount=function(){var e=this.props.intl.formatMessage;this.options=[{icon:"globe",value:"public",text:e(x.public_short),meta:e(x.public_long)},{icon:"unlock-alt",value:"unlisted",text:e(x.unlisted_short),meta:e(x.unlisted_long)},{icon:"lock",value:"private",text:e(x.private_short),meta:e(x.private_long)},{icon:"envelope",value:"direct",text:e(x.direct_short),meta:e(x.direct_long)}]},t.prototype.render=function(){var e=this.props,t=e.value,n=e.intl,o=this.state.open,a=this.options.find(function(e){return e.value===t});return i()("div",{className:j()("privacy-dropdown",{active:o}),onKeyDown:this.handleKeyDown},void 0,i()("div",{className:j()("privacy-dropdown__value",{active:0===this.options.indexOf(a)})},void 0,i()(h.a,{className:"privacy-dropdown__value-icon",icon:a.icon,title:n.formatMessage(x.change_privacy),size:18,expanded:o,active:o,inverted:!0,onClick:this.handleToggle,style:{height:null,lineHeight:"27px"}})),i()(v.a,{show:o,placement:"bottom",target:this},void 0,i()(O,{items:this.options,value:t,onClose:this.handleClose,onChange:this.handleChange})))},t}(g.a.PureComponent))||o},318:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(9),f=n(10),h=n.n(f),m=n(23),v=n(18),b=n(28),y=n(27),_=n.n(y),k=n(6),w=Object(k.f)({marked:{id:"compose_form.sensitive.marked",defaultMessage:"Media is marked as sensitive"},unmarked:{id:"compose_form.sensitive.unmarked",defaultMessage:"Media is not marked as sensitive"}}),C=function(e){return{visible:e.getIn(["compose","media_attachments"]).size>0,active:e.getIn(["compose","sensitive"]),disabled:e.getIn(["compose","spoiler"])}},j=function(e){return{onClick:function(){e(Object(v.G)())}}},x=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.visible,n=e.active,o=e.disabled,i=e.onClick,s=e.intl;return a()(b.a,{defaultStyle:{scale:.87},style:{scale:_()(t?1:.87,{stiffness:200,damping:3})}},void 0,function(e){var r=e.scale,c=n?"eye-slash":"eye",l=h()("compose-form__sensitive-button",{"compose-form__sensitive-button--visible":t});return a()("div",{className:l,style:{transform:"scale("+r+")"}},void 0,a()(m.a,{className:"compose-form__sensitive-button__icon",title:s.formatMessage(n?w.marked:w.unmarked),icon:c,onClick:i,size:18,active:n,disabled:o,style:{lineHeight:null,height:null},inverted:!0}))})},t}(p.a.PureComponent);t.a=Object(g.connect)(C,j)(Object(k.g)(x))},319:function(e,t,n){"use strict";var o=n(9),a=n(320),i=n(57),s=n(95),r=(n.n(s),n(8)),c=(n.n(r),n(100)),l=["+1","grinning","kissing_heart","heart_eyes","laughing","stuck_out_tongue_winking_eye","sweat_smile","joy","yum","disappointed","thinking_face","weary","sob","sunglasses","heart","ok_hand"],u=Object(s.createSelector)([function(e){return e.getIn(["settings","frequentlyUsedEmojis"],Object(r.Map)())}],function(e){var t=e.keySeq().sort(function(t,n){return e.get(t)-e.get(n)}).reverse().slice(0,16).toArray();return t.length<l.length&&(t=t.concat(l.slice(0,l.length-t.length))),t}),d=Object(s.createSelector)([function(e){return e.get("custom_emojis")}],function(e){return e.filter(function(e){return e.get("visible_in_picker")}).sort(function(e,t){var n=e.get("shortcode").toLowerCase(),o=t.get("shortcode").toLowerCase();return n<o?-1:n>o?1:0})}),p=function(e){return{custom_emojis:d(e),skinTone:e.getIn(["settings","skinTone"]),frequentlyUsedEmojis:u(e)}},g=function(e,t){var n=t.onPickEmoji;return{onSkinTone:function(t){e(Object(i.c)(["skinTone"],t))},onPickEmoji:function(t){e(Object(c.b)(t)),n&&n(t)}}};t.a=Object(o.connect)(p,g)(a.a)},320:function(e,t,n){"use strict";(function(e){n.d(t,"a",function(){return P});var o,a,i,s,r=n(2),c=n.n(r),l=n(1),u=n.n(l),d=n(3),p=n.n(d),g=n(4),f=n.n(g),h=n(0),m=n.n(h),v=n(6),b=n(58),y=n(96),_=n.n(y),k=n(10),w=n.n(k),C=n(46),j=n.n(C),x=n(71),M=Object(v.f)({emoji:{id:"emoji_button.label",defaultMessage:"Insert emoji"},emoji_search:{id:"emoji_button.search",defaultMessage:"Search..."},emoji_not_found:{id:"emoji_button.not_found",defaultMessage:"No emojos!! (╯°□°)╯︵ ┻━┻"},custom:{id:"emoji_button.custom",defaultMessage:"Custom"},recent:{id:"emoji_button.recent",defaultMessage:"Frequently used"},search_results:{id:"emoji_button.search_results",defaultMessage:"Search results"},people:{id:"emoji_button.people",defaultMessage:"People"},nature:{id:"emoji_button.nature",defaultMessage:"Nature"},food:{id:"emoji_button.food",defaultMessage:"Food & Drink"},activity:{id:"emoji_button.activity",defaultMessage:"Activity"},travel:{id:"emoji_button.travel",defaultMessage:"Travel & Places"},objects:{id:"emoji_button.objects",defaultMessage:"Objects"},symbols:{id:"emoji_button.symbols",defaultMessage:"Symbols"},flags:{id:"emoji_button.flags",defaultMessage:"Flags"}}),O=e.env.CDN_HOST||"",S=void 0,N=void 0,D=function(){return O+"/emoji/sheet.png"},z=!!j.a.hasSupport&&{passive:!0},I=["recent","custom","people","nature","foods","activity","places","objects","symbols","flags"],T=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(e){o.props.onSelect(1*e.currentTarget.getAttribute("data-index"))},o.handleDocumentClick=function(e){o.node&&!o.node.contains(e.target)&&o.props.onClose()},o.setRef=function(e){o.node=e},a=n,p()(o,a)}return f()(t,e),t.prototype.componentWillReceiveProps=function(e){e.active?this.attachListeners():this.removeListeners()},t.prototype.componentWillUnmount=function(){this.removeListeners()},t.prototype.attachListeners=function(){document.addEventListener("click",this.handleDocumentClick,!1),document.addEventListener("touchend",this.handleDocumentClick,z)},t.prototype.removeListeners=function(){document.removeEventListener("click",this.handleDocumentClick,!1),document.removeEventListener("touchend",this.handleDocumentClick,z)},t.prototype.render=function(){var e=this.props.active;return m.a.createElement("div",{className:"emoji-picker-dropdown__modifiers__menu",style:{display:e?"block":"none"},ref:this.setRef},c()("button",{onClick:this.handleClick,"data-index":1},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:1,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":2},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:2,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":3},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:3,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":4},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:4,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":5},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:5,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":6},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:6,backgroundImageFn:D})))},t}(m.a.PureComponent),F=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.active?o.props.onClose():o.props.onOpen()},o.handleSelect=function(e){o.props.onChange(e),o.props.onClose()},a=n,p()(o,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.active,n=e.modifier;return c()("div",{className:"emoji-picker-dropdown__modifiers"},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:n,onClick:this.handleClick,backgroundImageFn:D}),c()(T,{active:t,onSelect:this.handleSelect,onClose:this.props.onClose}))},t}(m.a.PureComponent),R=Object(v.g)((i=a=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.state={modifierOpen:!1},o.handleDocumentClick=function(e){o.node&&!o.node.contains(e.target)&&o.props.onClose()},o.setRef=function(e){o.node=e},o.getI18n=function(){var e=o.props.intl;return{search:e.formatMessage(M.emoji_search),notfound:e.formatMessage(M.emoji_not_found),categories:{search:e.formatMessage(M.search_results),recent:e.formatMessage(M.recent),people:e.formatMessage(M.people),nature:e.formatMessage(M.nature),foods:e.formatMessage(M.food),activity:e.formatMessage(M.activity),places:e.formatMessage(M.travel),objects:e.formatMessage(M.objects),symbols:e.formatMessage(M.symbols),flags:e.formatMessage(M.flags),custom:e.formatMessage(M.custom)}}},o.handleClick=function(e){e.native||(e.native=e.colons),o.props.onClose(),o.props.onPick(e)},o.handleModifierOpen=function(){o.setState({modifierOpen:!0})},o.handleModifierClose=function(){o.setState({modifierOpen:!1})},o.handleModifierChange=function(e){o.props.onSkinTone(e)},a=n,p()(o,a)}return f()(t,e),t.prototype.componentDidMount=function(){document.addEventListener("click",this.handleDocumentClick,!1),document.addEventListener("touchend",this.handleDocumentClick,z)},t.prototype.componentWillUnmount=function(){document.removeEventListener("click",this.handleDocumentClick,!1),document.removeEventListener("touchend",this.handleDocumentClick,z)},t.prototype.render=function(){var e=this.props,t=e.loading,n=e.style,o=e.intl,a=e.custom_emojis,i=e.skinTone,s=e.frequentlyUsedEmojis;if(t)return c()("div",{style:{width:299}});var r=o.formatMessage(M.emoji),l=this.state.modifierOpen;return m.a.createElement("div",{className:w()("emoji-picker-dropdown__menu",{selecting:l}),style:n,ref:this.setRef},c()(S,{perLine:8,emojiSize:22,sheetSize:32,custom:Object(x.buildCustomEmojis)(a),color:"",emoji:"",set:"twitter",title:r,i18n:this.getI18n(),onClick:this.handleClick,include:I,recent:s,skin:i,showPreview:!1,backgroundImageFn:D,emojiTooltip:!0}),c()(F,{active:l,modifier:i,onOpen:this.handleModifierOpen,onClose:this.handleModifierClose,onChange:this.handleModifierChange}))},t}(m.a.PureComponent),a.defaultProps={style:{},loading:!0,placement:"bottom",frequentlyUsedEmojis:[]},o=i))||o,P=Object(v.g)(s=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.state={active:!1,loading:!1},o.setRef=function(e){o.dropdown=e},o.onShowDropdown=function(){o.setState({active:!0}),S||(o.setState({loading:!0}),Object(b.f)().then(function(e){S=e.Picker,N=e.Emoji,o.setState({loading:!1})}).catch(function(){o.setState({loading:!1})}))},o.onHideDropdown=function(){o.setState({active:!1})},o.onToggle=function(e){o.state.loading||e.key&&"Enter"!==e.key||(o.state.active?o.onHideDropdown():o.onShowDropdown())},o.handleKeyDown=function(e){"Escape"===e.key&&o.onHideDropdown()},o.setTargetRef=function(e){o.target=e},o.findTarget=function(){return o.target},a=n,p()(o,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.intl,n=e.onPickEmoji,o=e.onSkinTone,a=e.skinTone,i=e.frequentlyUsedEmojis,s=t.formatMessage(M.emoji),r=this.state,l=r.active,u=r.loading;return c()("div",{className:"emoji-picker-dropdown",onKeyDown:this.handleKeyDown},void 0,m.a.createElement("div",{ref:this.setTargetRef,className:"emoji-button",title:s,"aria-label":s,"aria-expanded":l,role:"button",onClick:this.onToggle,onKeyDown:this.onToggle,tabIndex:0},c()("img",{className:w()("emojione",{"pulse-loading":l&&u}),alt:"🙂",src:O+"/emoji/1f602.svg"})),c()(_.a,{show:l,placement:"bottom",target:this.findTarget},void 0,c()(R,{custom_emojis:this.props.custom_emojis,loading:u,onClose:this.onHideDropdown,onPick:n,onSkinTone:o,skinTone:a,frequentlyUsedEmojis:i})))},t}(m.a.PureComponent))||s}).call(t,n(36))},321:function(e,t,n){"use strict";var o=n(9),a=n(322),i=function(e){return{mediaIds:e.getIn(["compose","media_attachments"]).map(function(e){return e.get("id")})}};t.a=Object(o.connect)(i)(a.a)},322:function(e,t,n){"use strict";n.d(t,"a",function(){return _});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=(n.n(g),n(13)),h=n.n(f),m=n(323),v=n(12),b=n.n(v),y=n(325),_=(a=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props.mediaIds;return s()("div",{className:"compose-form__upload-wrapper"},void 0,s()(m.a,{}),s()("div",{className:"compose-form__uploads-wrapper"},void 0,e.map(function(e){return s()(y.a,{id:e},e)})))},t}(b.a),o.propTypes={mediaIds:h.a.list.isRequired},a)},323:function(e,t,n){"use strict";var o=n(9),a=n(324),i=function(e){return{active:e.getIn(["compose","is_uploading"]),progress:e.getIn(["compose","progress"])}};t.a=Object(o.connect)(i)(a.a)},324:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(28),f=n(27),h=n.n(f),m=n(6),v=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.active,n=e.progress;return t?a()("div",{className:"upload-progress"},void 0,a()("div",{className:"upload-progress__icon"},void 0,a()("i",{className:"fa fa-upload"})),a()("div",{className:"upload-progress__message"},void 0,a()(m.b,{id:"upload_progress.label",defaultMessage:"Uploading..."}),a()("div",{className:"upload-progress__backdrop"},void 0,a()(g.a,{defaultStyle:{width:0},style:{width:h()(n)}},void 0,function(e){var t=e.width;return a()("div",{className:"upload-progress__tracker",style:{width:t+"%"}})})))):null},t}(p.a.PureComponent)},325:function(e,t,n){"use strict";var o=n(9),a=n(326),i=n(18),s=n(26),r=function(e,t){var n=t.id;return{media:e.getIn(["compose","media_attachments"]).find(function(e){return e.get("id")===n})}},c=function(e){return{onUndo:function(t){e(Object(i.X)(t))},onDescriptionChange:function(t,n){e(Object(i.L)(t,{description:n}))},onOpenFocalPoint:function(t){e(Object(s.d)("FOCAL_POINT",{id:t}))}}};t.a=Object(o.connect)(r,c)(a.a)},326:function(e,t,n){"use strict";n.d(t,"a",function(){return S});var o,a,i,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),p=n(4),g=n.n(p),f=n(0),h=(n.n(f),n(13)),m=n.n(h),v=n(5),b=n.n(v),y=n(28),_=n(27),k=n.n(_),w=n(12),C=n.n(w),j=n(6),x=n(10),M=n.n(x),O=Object(j.f)({description:{id:"upload_form.description",defaultMessage:"Describe for the visually impaired"}}),S=Object(j.g)((i=a=function(e){function t(){var n,o,a;l()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.state={hovered:!1,focused:!1,dirtyDescription:null},o.handleUndoClick=function(){o.props.onUndo(o.props.media.get("id"))},o.handleFocalPointClick=function(){o.props.onOpenFocalPoint(o.props.media.get("id"))},o.handleInputChange=function(e){o.setState({dirtyDescription:e.target.value})},o.handleMouseEnter=function(){o.setState({hovered:!0})},o.handleMouseLeave=function(){o.setState({hovered:!1})},o.handleInputFocus=function(){o.setState({focused:!0})},o.handleInputBlur=function(){var e=o.state.dirtyDescription;o.setState({focused:!1,dirtyDescription:null}),null!==e&&o.props.onDescriptionChange(o.props.media.get("id"),e)},a=n,d()(o,a)}return g()(t,e),t.prototype.render=function(){var e=this,t=this.props,n=t.intl,o=t.media,a=this.state.hovered||this.state.focused,i=this.state.dirtyDescription||""!==this.state.dirtyDescription&&o.get("description")||"",s=o.getIn(["meta","focus","x"]),c=o.getIn(["meta","focus","y"]),l=100*(s/2+.5),u=100*(c/-2+.5);return r()("div",{className:"compose-form__upload",onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave},void 0,r()(y.a,{defaultStyle:{scale:.8},style:{scale:k()(1,{stiffness:180,damping:12})}},void 0,function(t){var s=t.scale;return r()("div",{className:"compose-form__upload-thumbnail",style:{transform:"scale("+s+")",backgroundImage:"url("+o.get("preview_url")+")",backgroundPosition:l+"% "+u+"%"}},void 0,r()("div",{className:M()("compose-form__upload__actions",{active:a})},void 0,r()("button",{className:"icon-button",onClick:e.handleUndoClick},void 0,r()("i",{className:"fa fa-times"})," ",r()(j.b,{id:"upload_form.undo",defaultMessage:"Undo"})),"image"===o.get("type")&&r()("button",{className:"icon-button",onClick:e.handleFocalPointClick},void 0,r()("i",{className:"fa fa-crosshairs"})," ",r()(j.b,{id:"upload_form.focus",defaultMessage:"Crop"}))),r()("div",{className:M()("compose-form__upload-description",{active:a})},void 0,r()("label",{},void 0,r()("span",{style:{display:"none"}},void 0,n.formatMessage(O.description)),r()("input",{placeholder:n.formatMessage(O.description),type:"text",value:i,maxLength:420,onFocus:e.handleInputFocus,onChange:e.handleInputChange,onBlur:e.handleInputBlur}))))}))},t}(C.a),a.propTypes={media:m.a.map.isRequired,intl:b.a.object.isRequired,onUndo:b.a.func.isRequired,onDescriptionChange:b.a.func.isRequired,onOpenFocalPoint:b.a.func.isRequired},o=i))||o},327:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(0),s=(n.n(i),n(9)),r=n(328),c=n(6),l=n(11),u=/(?:^|[^\/\)\w])#(\w*[a-zA-Z·]\w*)/i,d=function(e){return{needsLockWarning:"private"===e.getIn(["compose","privacy"])&&!e.getIn(["accounts",l.g,"locked"]),hashtagWarning:"public"!==e.getIn(["compose","privacy"])&&u.test(e.getIn(["compose","text"])),directMessageWarning:"direct"===e.getIn(["compose","privacy"])}},p=function(e){var t=e.needsLockWarning,n=e.hashtagWarning,o=e.directMessageWarning;return t?a()(r.a,{message:a()(c.b,{id:"compose_form.lock_disclaimer",defaultMessage:"Your account is not {locked}. Anyone can follow you to view your follower-only posts.",values:{locked:a()("a",{href:"/settings/profile"},void 0,a()(c.b,{id:"compose_form.lock_disclaimer.lock",defaultMessage:"locked"}))}})}):n?a()(r.a,{message:a()(c.b,{id:"compose_form.hashtag_warning",defaultMessage:"This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag."})}):o?a()(r.a,{message:a()(c.b,{id:"compose_form.direct_message_warning",defaultMessage:"This toot will only be visible to all the mentioned users."})}):null};t.a=Object(s.connect)(d)(p)},328:function(e,t,n){"use strict";n.d(t,"a",function(){return m});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(28),f=n(27),h=n.n(f),m=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){var e=this.props.message;return a()(g.a,{defaultStyle:{opacity:0,scaleX:.85,scaleY:.75},style:{opacity:h()(1,{damping:35,stiffness:400}),scaleX:h()(1,{damping:35,stiffness:400}),scaleY:h()(1,{damping:35,stiffness:400})}},void 0,function(t){var n=t.opacity,o=t.scaleX,i=t.scaleY;return a()("div",{className:"compose-form__warning",style:{opacity:n,transform:"scale("+o+", "+i+")"}},void 0,e)})},t}(p.a.PureComponent)},329:function(e,t,n){"use strict";function o(e){return e.replace(a.a,i).replace(/(^|[^\/\w])@(([a-z0-9_]+)@[a-z0-9\.\-]+[a-z0-9]+)/gi,"$1@$3")}t.a=o;var a=n(330),i="xxxxxxxxxxxxxxxxxxxxxxx"},330:function(e,t,n){"use strict";n.d(t,"a",function(){return s});var o={},a=function(e,t){return t=t||"","string"!=typeof e&&(e.global&&t.indexOf("g")<0&&(t+="g"),e.ignoreCase&&t.indexOf("i")<0&&(t+="i"),e.multiline&&t.indexOf("m")<0&&(t+="m"),e=e.source),new RegExp(e.replace(/#\{(\w+)\}/g,function(e,t){var n=o[t]||"";return"string"!=typeof n&&(n=n.source),n}),t)},i=function(e,t){return e.replace(/#\{(\w+)\}/g,function(e,n){return t[n]||""})},s=function(){return o.spaces_group=/\x09-\x0D\x20\x85\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000/,o.invalid_chars_group=/\uFFFE\uFEFF\uFFFF\u202A-\u202E/,o.punct=/\!'#%&'\(\)*\+,\\\-\.\/:;<=>\?@\[\]\^_{|}~\$/,o.validUrlPrecedingChars=a(/(?:[^A-Za-z0-9@@$###{invalid_chars_group}]|^)/),o.invalidDomainChars=i("#{punct}#{spaces_group}#{invalid_chars_group}",o),o.validDomainChars=a(/[^#{invalidDomainChars}]/),o.validSubdomain=a(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\.)/),o.validDomainName=a(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\.)/),o.validGTLD=a(RegExp("(?:(?:삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|政务|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|stada|srt|srl|spreadbetting|spot|spiegel|space|soy|sony|song|solutions|solar|sohu|software|softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|lotte|london|lol|loft|locus|locker|loans|loan|lixil|living|live|lipsy|link|linde|lincoln|limo|limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|industries|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|courses|coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|chintai|cheap|chat|chase|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion)(?=[^0-9a-zA-Z@]|$))")),o.validCCTLD=a(RegExp("(?:(?:한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ελ|zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|re|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac)(?=[^0-9a-zA-Z@]|$))")),o.validPunycode=/(?:xn--[0-9a-z]+)/,o.validSpecialCCTLD=/(?:(?:co|tv)(?=[^0-9a-zA-Z@]|$))/,o.validDomain=a(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/),o.validPortNumber=/[0-9]+/,o.pd=/\u002d\u058a\u05be\u1400\u1806\u2010-\u2015\u2e17\u2e1a\u2e3a\u2e40\u301c\u3030\u30a0\ufe31\ufe58\ufe63\uff0d/,o.validGeneralUrlPathChars=a(/[^#{spaces_group}\(\)\?]/i),o.validUrlBalancedParens=a("\\((?:#{validGeneralUrlPathChars}+|(?:#{validGeneralUrlPathChars}*\\(#{validGeneralUrlPathChars}+\\)#{validGeneralUrlPathChars}*))\\)","i"),o.validUrlPathEndingChars=a(/[^#{spaces_group}\(\)\?!\*';:=\,\.\$%\[\]#{pd}~&\|@]|(?:#{validUrlBalancedParens})/i),o.validUrlPath=a("(?:(?:#{validGeneralUrlPathChars}*(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*#{validUrlPathEndingChars})|(?:@#{validGeneralUrlPathChars}+/))","i"),o.validUrlQueryChars=/[a-z0-9!?\*'@\(\);:&=\+\$\/%#\[\]\-_\.,~|]/i,o.validUrlQueryEndingChars=/[a-z0-9_&=#\/]/i,o.validUrl=a("((https?:\\/\\/)(#{validDomain})(?::(#{validPortNumber}))?(\\/#{validUrlPath}*)?(\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?)","gi"),o.validUrl}()},331:function(e,t,n){"use strict";var o=n(9),a=n(302),i=n(18),s=function(e){return{text:e.getIn(["compose","text"]),suggestion_token:e.getIn(["compose","suggestion_token"]),suggestions:e.getIn(["compose","suggestions"]),spoiler:e.getIn(["compose","spoiler"]),spoiler_text:e.getIn(["compose","spoiler_text"]),privacy:e.getIn(["compose","privacy"]),focusDate:e.getIn(["compose","focusDate"]),preselectDate:e.getIn(["compose","preselectDate"]),is_submitting:e.getIn(["compose","is_submitting"]),is_uploading:e.getIn(["compose","is_uploading"]),showSearch:e.getIn(["search","submitted"])&&!e.getIn(["search","hidden"]),anyMedia:e.getIn(["compose","media_attachments"]).size>0}},r=function(e){return{onChange:function(t){e(Object(i.F)(t))},onSubmit:function(){e(Object(i.W)())},onClearSuggestions:function(){e(Object(i.M)())},onFetchSuggestions:function(t){e(Object(i.O)(t))},onSuggestionSelected:function(t,n,o){e(Object(i.V)(t,n,o))},onChangeSpoilerText:function(t){e(Object(i.H)(t))},onPaste:function(t){e(Object(i.Z)(t))},onPickEmoji:function(t,n){e(Object(i.Q)(t,n))}}};t.a=Object(o.connect)(s,r)(a.a)},804:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return S});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=n.n(g),h=n(331),m=n(951),v=n(9),b=n(18),y=n(44),_=n(6),k=n(952),w=n(28),C=n(27),j=n.n(C),x=n(953),M=Object(_.f)({start:{id:"getting_started.heading",defaultMessage:"Getting started"},home_timeline:{id:"tabs_bar.home",defaultMessage:"Home"},notifications:{id:"tabs_bar.notifications",defaultMessage:"Notifications"},public:{id:"navigation_bar.public_timeline",defaultMessage:"Federated timeline"},community:{id:"navigation_bar.community_timeline",defaultMessage:"Local timeline"},preferences:{id:"navigation_bar.preferences",defaultMessage:"Preferences"},logout:{id:"navigation_bar.logout",defaultMessage:"Logout"}}),O=function(e){return{columns:e.getIn(["settings","columns"]),showSearch:e.getIn(["search","submitted"])&&!e.getIn(["search","hidden"])}},S=(o=Object(v.connect)(O))(a=Object(_.g)(a=function(e){function t(){var n,o,a;c()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.onFocus=function(){o.props.dispatch(Object(b.K)(!0))},o.onBlur=function(){o.props.dispatch(Object(b.K)(!1))},a=n,u()(o,a)}return p()(t,e),t.prototype.componentDidMount=function(){this.props.dispatch(Object(b.S)())},t.prototype.componentWillUnmount=function(){this.props.dispatch(Object(b.Y)())},t.prototype.render=function(){var e=this.props,t=e.multiColumn,n=e.showSearch,o=e.intl,a="";if(t){var i=this.props.columns;a=s()("nav",{className:"drawer__header"},void 0,s()(y.b,{to:"/getting-started",className:"drawer__tab",title:o.formatMessage(M.start),"aria-label":o.formatMessage(M.start)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-asterisk"})),!i.some(function(e){return"HOME"===e.get("id")})&&s()(y.b,{to:"/timelines/home",className:"drawer__tab",title:o.formatMessage(M.home_timeline),"aria-label":o.formatMessage(M.home_timeline)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-home"})),!i.some(function(e){return"NOTIFICATIONS"===e.get("id")})&&s()(y.b,{to:"/notifications",className:"drawer__tab",title:o.formatMessage(M.notifications),"aria-label":o.formatMessage(M.notifications)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-bell"})),!i.some(function(e){return"COMMUNITY"===e.get("id")})&&s()(y.b,{to:"/timelines/public/local",className:"drawer__tab",title:o.formatMessage(M.community),"aria-label":o.formatMessage(M.community)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-users"})),!i.some(function(e){return"PUBLIC"===e.get("id")})&&s()(y.b,{to:"/timelines/public",className:"drawer__tab",title:o.formatMessage(M.public),"aria-label":o.formatMessage(M.public)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-globe"})),s()("a",{href:"/user-settings",className:"drawer__tab",title:o.formatMessage(M.preferences),"aria-label":o.formatMessage(M.preferences)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-cog"})),s()("a",{href:"/auth/sign_out",className:"drawer__tab","data-method":"delete",title:o.formatMessage(M.logout),"aria-label":o.formatMessage(M.logout)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-sign-out"})))}return s()("div",{className:"drawer"},void 0,a,s()(k.a,{}),s()("div",{className:"drawer__pager"},void 0,s()("div",{className:"drawer__inner",onFocus:this.onFocus},void 0,s()(m.a,{onClose:this.onBlur}),s()(h.a,{}),t&&s()("div",{className:"drawer__inner__mastodon"},void 0)),s()(w.a,{defaultStyle:{x:-100},style:{x:j()(n?0:-100,{stiffness:210,damping:20})}},void 0,function(e){var t=e.x;return s()("div",{className:"drawer__inner darker",style:{transform:"translateX("+t+"%)",visibility:-100===t?"hidden":"visible"}},void 0,s()(x.a,{}))})))},t}(f.a.PureComponent))||a)||a},843:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(0),s=(n.n(i),n(9)),r=n(6),c=n(66),l=n(844),u=n(22),d=n(26),p=n(283),g=n(11),f=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var e=Object(c.c)();return function(t,n){return{account:e(t,n.id)}}},m=function(e,t){var n=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?g.j?Object(d.d)("CONFIRM",{message:a()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(f.unfollowConfirm),onConfirm:function(){return e(Object(u.D)(t.get("id")))}}):Object(u.D)(t.get("id")):Object(u.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(u.C)(t.get("id")):Object(u.q)(t.get("id")))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(u.E)(t.get("id")):Object(p.a)(t))},onMuteNotifications:function(t,n){e(Object(u.A)(t.get("id"),n))}}};t.a=Object(r.g)(Object(s.connect)(h,m)(l.a))},844:function(e,t,n){"use strict";n.d(t,"a",function(){return S});var o,a,i,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),p=n(4),g=n.n(p),f=n(0),h=(n.n(f),n(13)),m=n.n(h),v=n(5),b=n.n(v),y=n(56),_=n(55),k=n(295),w=n(23),C=n(6),j=n(12),x=n.n(j),M=n(11),O=Object(C.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),S=Object(C.g)((i=a=function(e){function t(){var n,o,a;l()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},a=n,d()(o,a)}return g()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.intl,o=e.hidden;if(!t)return r()("div",{});if(o)return r()("div",{},void 0,t.get("display_name"),t.get("username"));var a=void 0;if(t.get("id")!==M.g&&null!==t.get("relationship",null)){var i=t.getIn(["relationship","following"]),s=t.getIn(["relationship","requested"]),c=t.getIn(["relationship","blocking"]),l=t.getIn(["relationship","muting"]);if(s)a=r()(w.a,{disabled:!0,icon:"hourglass",title:n.formatMessage(O.requested)});else if(c)a=r()(w.a,{active:!0,icon:"unlock-alt",title:n.formatMessage(O.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(l){var u=void 0;u=t.getIn(["relationship","muting_notifications"])?r()(w.a,{active:!0,icon:"bell",title:n.formatMessage(O.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):r()(w.a,{active:!0,icon:"bell-slash",title:n.formatMessage(O.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),a=r()(f.Fragment,{},void 0,r()(w.a,{active:!0,icon:"volume-up",title:n.formatMessage(O.unmute,{name:t.get("username")}),onClick:this.handleMute}),u)}else t.get("moved")&&!i||(a=r()(w.a,{icon:i?"user-times":"user-plus",title:n.formatMessage(i?O.unfollow:O.follow),onClick:this.handleFollow,active:i}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(k.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(y.a,{account:t,size:36})),r()(_.a,{account:t})),r()("div",{className:"account__relationship"},void 0,a)))},t}(x.a),a.propTypes={account:m.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},o=i))||o},869:function(e,t,n){"use strict";n.d(t,"a",function(){return j});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=(n.n(g),n(5)),h=n.n(f),m=n(13),v=n.n(m),b=n(56),y=n(23),_=n(295),k=n(6),w=n(12),C=n.n(w),j=(a=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){return s()("div",{className:"navigation-bar"},void 0,s()(_.a,{href:this.props.account.get("url"),to:"/accounts/"+this.props.account.get("id")},void 0,s()("span",{style:{display:"none"}},void 0,this.props.account.get("acct")),s()(b.a,{account:this.props.account,size:40})),s()("div",{className:"navigation-bar__profile"},void 0,s()(_.a,{href:this.props.account.get("url"),to:"/accounts/"+this.props.account.get("id")},void 0,s()("strong",{className:"navigation-bar__profile-account"},void 0,"@",this.props.account.get("acct"))),s()("a",{href:"/settings/profile",className:"navigation-bar__profile-edit"},void 0,s()(k.b,{id:"navigation_bar.edit_profile",defaultMessage:"Edit profile"}))),s()(y.a,{title:"",icon:"close",onClick:this.props.onClose}))},t}(C.a),o.propTypes={account:v.a.map.isRequired,onClose:h.a.func},a)},870:function(e,t,n){"use strict";n.d(t,"a",function(){return C});var o,a=n(2),i=n.n(a),s=n(1),r=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),p=n(0),g=n.n(p),f=n(6),h=n(96),m=n.n(h),v=n(28),b=n(27),y=n.n(b),_=n(11),k=Object(f.f)({placeholder:{id:"search.placeholder",defaultMessage:"Search"}}),w=function(e){function t(){return r()(this,t),l()(this,e.apply(this,arguments))}return d()(t,e),t.prototype.render=function(){var e=this.props.style,t=_.i?i()(f.b,{id:"search_popout.tips.full_text",defaultMessage:"Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags."}):i()(f.b,{id:"search_popout.tips.text",defaultMessage:"Simple text returns matching display names, usernames and hashtags"});return i()("div",{style:Object.assign({},e,{position:"absolute",width:315})},void 0,i()(v.a,{defaultStyle:{opacity:0,scaleX:.85,scaleY:.75},style:{opacity:y()(1,{damping:35,stiffness:400}),scaleX:y()(1,{damping:35,stiffness:400}),scaleY:y()(1,{damping:35,stiffness:400})}},void 0,function(e){var n=e.opacity,o=e.scaleX,a=e.scaleY;return i()("div",{className:"search-popout",style:{opacity:n,transform:"scale("+o+", "+a+")"}},void 0,i()("h4",{},void 0,i()(f.b,{id:"search_popout.search_format",defaultMessage:"Advanced search format"})),i()("ul",{},void 0,i()("li",{},void 0,i()("em",{},void 0,"#example")," ",i()(f.b,{id:"search_popout.tips.hashtag",defaultMessage:"hashtag"})),i()("li",{},void 0,i()("em",{},void 0,"@username@domain")," ",i()(f.b,{id:"search_popout.tips.user",defaultMessage:"user"})),i()("li",{},void 0,i()("em",{},void 0,"URL")," ",i()(f.b,{id:"search_popout.tips.user",defaultMessage:"user"})),i()("li",{},void 0,i()("em",{},void 0,"URL")," ",i()(f.b,{id:"search_popout.tips.status",defaultMessage:"status"}))),t)}))},t}(g.a.PureComponent),C=Object(f.g)(o=function(e){function t(){var n,o,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return n=o=l()(this,e.call.apply(e,[this].concat(s))),o.state={expanded:!1},o.handleChange=function(e){o.props.onChange(e.target.value)},o.handleClear=function(e){e.preventDefault(),(o.props.value.length>0||o.props.submitted)&&o.props.onClear()},o.handleKeyDown=function(e){"Enter"===e.key?(e.preventDefault(),o.props.onSubmit()):"Escape"===e.key&&document.querySelector(".ui").parentElement.focus()},o.handleFocus=function(){o.setState({expanded:!0}),o.props.onShow()},o.handleBlur=function(){o.setState({expanded:!1})},a=n,l()(o,a)}return d()(t,e),t.prototype.noop=function(){},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.value,o=e.submitted,a=this.state.expanded,s=n.length>0||o;return i()("div",{className:"search"},void 0,i()("label",{},void 0,i()("span",{style:{display:"none"}},void 0,t.formatMessage(k.placeholder)),i()("input",{className:"search__input",type:"text",placeholder:t.formatMessage(k.placeholder),value:n,onChange:this.handleChange,onKeyUp:this.handleKeyDown,onFocus:this.handleFocus,onBlur:this.handleBlur})),i()("div",{role:"button",tabIndex:"0",className:"search__icon",onClick:this.handleClear},void 0,i()("i",{className:"fa fa-search "+(s?"":"active")}),i()("i",{"aria-label":t.formatMessage(k.placeholder),className:"fa fa-times-circle "+(s?"active":"")})),i()(m.a,{show:a&&!s,placement:"bottom",target:this},void 0,i()(w,{})))},t}(g.a.PureComponent))||o},951:function(e,t,n){"use strict";var o=n(9),a=n(869),i=n(11),s=function(e){return{account:e.getIn(["accounts",i.g])}};t.a=Object(o.connect)(s)(a.a)},952:function(e,t,n){"use strict";var o=n(9),a=n(336),i=n(870),s=function(e){return{value:e.getIn(["search","value"]),submitted:e.getIn(["search","submitted"])}},r=function(e){return{onChange:function(t){e(Object(a.e)(t))},onClear:function(){e(Object(a.f)())},onSubmit:function(){e(Object(a.h)())},onShow:function(){e(Object(a.g)())}}};t.a=Object(o.connect)(s,r)(i.a)},953:function(e,t,n){"use strict";var o=n(9),a=n(954),i=function(e){return{results:e.getIn(["search","results"])}};t.a=Object(o.connect)(i)(a.a)},954:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=(n.n(g),n(13)),h=n.n(f),m=n(6),v=n(843),b=n(285),y=n(44),_=n(12),k=n.n(_),w=(a=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props.results,t=void 0,n=void 0,o=void 0,a=0;return e.get("accounts")&&e.get("accounts").size>0&&(a+=e.get("accounts").size,t=s()("div",{className:"search-results__section"},void 0,s()("h5",{},void 0,s()(m.b,{id:"search_results.accounts",defaultMessage:"People"})),e.get("accounts").map(function(e){return s()(v.a,{id:e},e)}))),e.get("statuses")&&e.get("statuses").size>0&&(a+=e.get("statuses").size,n=s()("div",{className:"search-results__section"},void 0,s()("h5",{},void 0,s()(m.b,{id:"search_results.statuses",defaultMessage:"Toots"})),e.get("statuses").map(function(e){return s()(b.a,{id:e},e)}))),e.get("hashtags")&&e.get("hashtags").size>0&&(a+=e.get("hashtags").size,o=s()("div",{className:"search-results__section"},void 0,s()("h5",{},void 0,s()(m.b,{id:"search_results.hashtags",defaultMessage:"Hashtags"})),e.get("hashtags").map(function(e){return s()(y.b,{className:"search-results__hashtag",to:"/timelines/tag/"+e},e,"#",e)}))),s()("div",{className:"search-results"},void 0,s()("div",{className:"search-results__header"},void 0,s()(m.b,{id:"search_results.total",defaultMessage:"{count, number} {count, plural, one {result} other {results}}",values:{count:a}})),t,n,o)},t}(k.a),o.propTypes={results:h.a.map.isRequired},a)}}); +webpackJsonp([2],{282:function(e,t,n){"use strict";function o(e){return function(t){t({type:i,account:e}),t(Object(a.d)("MUTE"))}}t.a=o;var a=(n(14),n(22),n(15),n(26)),i="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:i,account:e,status:t}),n(Object(a.d)("REPORT"))}}t.a=o;var a=(n(14),n(26)),i="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(0),s=(n.n(i),n(9)),r=n(152),c=n(66),l=n(18),u=n(67),d=n(22),p=n(91),g=n(282),f=n(284),h=n(26),m=n(6),v=n(11),b=Object(m.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},_=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!v.b?this.onModalReblog(t):e(Object(h.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(v.e?Object(h.d)("CONFIRM",{message:n.formatMessage(b.deleteMessage),confirm:n.formatMessage(b.deleteConfirm),onConfirm:function(){return e(Object(p.f)(t.get("id")))}}):Object(p.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(h.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(h.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(h.d)("CONFIRM",{message:a()(m.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(b.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.a)(t.get("account"),t))},onMute:function(t){e(Object(g.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(p.k)(t.get("id")):Object(p.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(p.j)(t.get("id")):Object(p.h)(t.get("id")))}}};t.a=Object(m.g)(Object(s.connect)(y,_)(r.a))},302:function(e,t,n){"use strict";n.d(t,"a",function(){return A});var o,a,i,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),p=n(4),g=n.n(p),f=n(0),h=n.n(f),m=n(303),v=n(101),b=n(13),y=n.n(b),_=n(5),k=n.n(_),w=n(304),C=n(306),j=n(311),x=n(6),M=n(313),O=n(314),S=n(316),N=n(318),D=n(319),z=n(321),I=n(327),T=n(35),F=n(12),R=n.n(F),P=n(98),E=(n.n(P),n(329)),q=n(11),U=Object(x.f)({placeholder:{id:"compose_form.placeholder",defaultMessage:"What is on your mind?"},spoiler_placeholder:{id:"compose_form.spoiler_placeholder",defaultMessage:"Write your warning here"},publish:{id:"compose_form.publish",defaultMessage:"Toot"},publishLoud:{id:"compose_form.publish_loud",defaultMessage:"{publish}!"}}),A=Object(x.g)((i=a=function(e){function t(){var n,o,a;l()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handleChange=function(e){o.props.onChange(e.target.value)},o.handleKeyDown=function(e){13===e.keyCode&&(e.ctrlKey||e.metaKey)&&o.handleSubmit()},o.handleSubmit=function(){o.props.text!==o.autosuggestTextarea.textarea.value&&o.props.onChange(o.autosuggestTextarea.textarea.value),o.props.onSubmit()},o.onSuggestionsClearRequested=function(){o.props.onClearSuggestions()},o.onSuggestionsFetchRequested=function(e){o.props.onFetchSuggestions(e)},o.onSuggestionSelected=function(e,t,n){o._restoreCaret=null,o.props.onSuggestionSelected(e,t,n)},o.handleChangeSpoilerText=function(e){o.props.onChangeSpoilerText(e.target.value)},o.setAutosuggestTextarea=function(e){o.autosuggestTextarea=e},o.handleEmojiPick=function(e){var t=o.autosuggestTextarea.textarea.selectionStart,n=e.native;o._restoreCaret=t+n.length+1,o.props.onPickEmoji(t,e)},a=n,d()(o,a)}return g()(t,e),t.prototype.componentWillReceiveProps=function(e){!e.is_uploading&&this.props.is_uploading&&(this._restoreCaret=this.autosuggestTextarea.textarea.selectionStart)},t.prototype.componentDidUpdate=function(e){if(this.props.focusDate!==e.focusDate||e.is_uploading&&!this.props.is_uploading&&"number"==typeof this._restoreCaret){var t=void 0,n=void 0;this.props.preselectDate!==e.preselectDate?(t=this.props.text.length,n=this.props.text.search(/\s/)+1):"number"==typeof this._restoreCaret?(n=this._restoreCaret,t=this._restoreCaret):(t=this.props.text.length,n=t),this.autosuggestTextarea.textarea.setSelectionRange(n,t),this.autosuggestTextarea.textarea.focus()}else e.is_submitting&&!this.props.is_submitting&&this.autosuggestTextarea.textarea.focus()},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.onPaste,o=e.showSearch,a=e.anyMedia,i=this.props.is_submitting,s=[this.props.spoiler_text,Object(E.a)(this.props.text)].join(""),c=i||this.props.is_uploading||Object(P.length)(s)>q.c||0!==s.length&&0===s.trim().length&&!a,l="";return l="private"===this.props.privacy||"direct"===this.props.privacy?r()("span",{className:"compose-form__publish-private"},void 0,r()("i",{className:"fa fa-lock"})," ",t.formatMessage(U.publish)):"unlisted"!==this.props.privacy?t.formatMessage(U.publishLoud,{publish:t.formatMessage(U.publish)}):t.formatMessage(U.publish),r()("div",{className:"compose-form"},void 0,r()(I.a,{}),r()(M.a,{isVisible:this.props.spoiler,fullHeight:50},void 0,r()("div",{className:"spoiler-input"},void 0,r()("label",{},void 0,r()("span",{style:{display:"none"}},void 0,t.formatMessage(U.spoiler_placeholder)),r()("input",{placeholder:t.formatMessage(U.spoiler_placeholder),value:this.props.spoiler_text,onChange:this.handleChangeSpoilerText,onKeyDown:this.handleKeyDown,type:"text",className:"spoiler-input__input",id:"cw-spoiler-input"})))),r()(w.a,{}),r()("div",{className:"compose-form__autosuggest-wrapper"},void 0,h.a.createElement(C.a,{ref:this.setAutosuggestTextarea,placeholder:t.formatMessage(U.placeholder),disabled:i,value:this.props.text,onChange:this.handleChange,suggestions:this.props.suggestions,onKeyDown:this.handleKeyDown,onSuggestionsFetchRequested:this.onSuggestionsFetchRequested,onSuggestionsClearRequested:this.onSuggestionsClearRequested,onSuggestionSelected:this.onSuggestionSelected,onPaste:n,autoFocus:!o&&!Object(T.b)(window.innerWidth)}),r()(D.a,{onPickEmoji:this.handleEmojiPick})),r()("div",{className:"compose-form__modifiers"},void 0,r()(z.a,{})),r()("div",{className:"compose-form__buttons-wrapper"},void 0,r()("div",{className:"compose-form__buttons"},void 0,r()(j.a,{}),r()(S.a,{}),r()(N.a,{}),r()(O.a,{})),r()("div",{className:"character-counter__wrapper"},void 0,r()(m.a,{max:q.c,text:s}))),r()("div",{className:"compose-form__publish"},void 0,r()("div",{className:"compose-form__publish-button-wrapper"},void 0,r()(v.a,{text:l,onClick:this.handleSubmit,disabled:c,block:!0}))))},t}(R.a),a.propTypes={intl:k.a.object.isRequired,text:k.a.string.isRequired,suggestion_token:k.a.string,suggestions:y.a.list,spoiler:k.a.bool,privacy:k.a.string,spoiler_text:k.a.string,focusDate:k.a.instanceOf(Date),preselectDate:k.a.instanceOf(Date),is_submitting:k.a.bool,is_uploading:k.a.bool,onChange:k.a.func.isRequired,onSubmit:k.a.func.isRequired,onClearSuggestions:k.a.func.isRequired,onFetchSuggestions:k.a.func.isRequired,onSuggestionSelected:k.a.func.isRequired,onChangeSpoilerText:k.a.func.isRequired,onPaste:k.a.func.isRequired,onPickEmoji:k.a.func.isRequired,showSearch:k.a.bool,anyMedia:k.a.bool},a.defaultProps={showSearch:!1},o=i))||o},303:function(e,t,n){"use strict";n.d(t,"a",function(){return f});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(98),f=(n.n(g),function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.checkRemainingText=function(e){return e<0?a()("span",{className:"character-counter character-counter--over"},void 0,e):a()("span",{className:"character-counter"},void 0,e)},t.prototype.render=function(){var e=this.props.max-Object(g.length)(this.props.text);return this.checkRemainingText(e)},t}(p.a.PureComponent))},304:function(e,t,n){"use strict";var o=n(9),a=n(18),i=n(66),s=n(305),r=function(){var e=Object(i.e)();return function(t){return{status:e(t,t.getIn(["compose","in_reply_to"]))}}},c=function(e){return{onCancel:function(){e(Object(a.E)())}}};t.a=Object(o.connect)(r,c)(s.a)},305:function(e,t,n){"use strict";n.d(t,"a",function(){return O});var o,a,i,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),p=n(4),g=n.n(p),f=n(0),h=(n.n(f),n(13)),m=n.n(h),v=n(5),b=n.n(v),y=n(56),_=n(23),k=n(55),w=n(6),C=n(12),j=n.n(C),x=n(97),M=Object(w.f)({cancel:{id:"reply_indicator.cancel",defaultMessage:"Cancel"}}),O=Object(w.g)((i=a=function(e){function t(){var n,o,a;l()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onCancel()},o.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),o.context.router.history.push("/accounts/"+o.props.status.getIn(["account","id"])))},a=n,d()(o,a)}return g()(t,e),t.prototype.render=function(){var e=this.props,t=e.status,n=e.intl;if(!t)return null;var o={__html:t.get("contentHtml")},a={direction:Object(x.a)(t.get("search_index"))?"rtl":"ltr"};return r()("div",{className:"reply-indicator"},void 0,r()("div",{className:"reply-indicator__header"},void 0,r()("div",{className:"reply-indicator__cancel"},void 0,r()(_.a,{title:n.formatMessage(M.cancel),icon:"times",onClick:this.handleClick})),r()("a",{href:t.getIn(["account","url"]),onClick:this.handleAccountClick,className:"reply-indicator__display-name"},void 0,r()("div",{className:"reply-indicator__display-avatar"},void 0,r()(y.a,{account:t.get("account"),size:24})),r()(k.a,{account:t.get("account")}))),r()("div",{className:"reply-indicator__content",style:a,dangerouslySetInnerHTML:o}))},t}(j.a),a.contextTypes={router:b.a.object},a.propTypes={status:m.a.map,onCancel:b.a.func.isRequired,intl:b.a.object.isRequired},o=i))||o},306:function(e,t,n){"use strict";n.d(t,"a",function(){return N});var o,a,i=n(2),s=n.n(i),r=n(32),c=n.n(r),l=n(1),u=n.n(l),d=n(3),p=n.n(d),g=n(4),f=n.n(g),h=n(0),m=(n.n(h),n(307)),v=n(309),b=n(13),y=n.n(b),_=n(5),k=n.n(_),w=n(97),C=n(12),j=n.n(C),x=n(310),M=n(10),O=n.n(M),S=function(e,t){var n=void 0,o=e.slice(0,t).search(/\S+$/),a=e.slice(t).search(/\s/);return!(n=a<0?e.slice(o):e.slice(o,a+t))||n.trim().length<3||-1===["@",":","#"].indexOf(n[0])?[null,null]:(n=n.trim().toLowerCase(),n.length>0?[o+1,n]:[null,null])},N=(a=o=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,r=Array(i),l=0;l<i;l++)r[l]=arguments[l];return n=o=p()(this,e.call.apply(e,[this].concat(r))),o.state={suggestionsHidden:!1,selectedSuggestion:0,lastToken:null,tokenStart:0},o.onChange=function(e){var t=S(e.target.value,e.target.selectionStart),n=t[0],a=t[1];null!==a&&o.state.lastToken!==a?(o.setState({lastToken:a,selectedSuggestion:0,tokenStart:n}),o.props.onSuggestionsFetchRequested(a)):null===a&&(o.setState({lastToken:null}),o.props.onSuggestionsClearRequested()),o.props.onChange(e)},o.onKeyDown=function(e){var t=o.props,n=t.suggestions,a=t.disabled,i=o.state,s=i.selectedSuggestion,r=i.suggestionsHidden;if(a)return void e.preventDefault();switch(e.key){case"Escape":r||(e.preventDefault(),o.setState({suggestionsHidden:!0}));break;case"ArrowDown":n.size>0&&!r&&(e.preventDefault(),o.setState({selectedSuggestion:Math.min(s+1,n.size-1)}));break;case"ArrowUp":n.size>0&&!r&&(e.preventDefault(),o.setState({selectedSuggestion:Math.max(s-1,0)}));break;case"Enter":case"Tab":null!==o.state.lastToken&&n.size>0&&!r&&(e.preventDefault(),e.stopPropagation(),o.props.onSuggestionSelected(o.state.tokenStart,o.state.lastToken,n.get(s)))}!e.defaultPrevented&&o.props.onKeyDown&&o.props.onKeyDown(e)},o.onKeyUp=function(e){"Escape"===e.key&&o.state.suggestionsHidden&&document.querySelector(".ui").parentElement.focus(),o.props.onKeyUp&&o.props.onKeyUp(e)},o.onBlur=function(){o.setState({suggestionsHidden:!0})},o.onSuggestionClick=function(e){var t=o.props.suggestions.get(e.currentTarget.getAttribute("data-index"));e.preventDefault(),o.props.onSuggestionSelected(o.state.tokenStart,o.state.lastToken,t),o.textarea.focus()},o.setTextarea=function(e){o.textarea=e},o.onPaste=function(e){e.clipboardData&&1===e.clipboardData.files.length&&(o.props.onPaste(e.clipboardData.files),e.preventDefault())},o.renderSuggestion=function(e,t){var n=o.state.selectedSuggestion,a=void 0,i=void 0;return"object"===(void 0===e?"undefined":c()(e))?(a=s()(v.a,{emoji:e}),i=e.id):"#"===e[0]?(a=e,i=e):(a=s()(m.a,{id:e}),i=e),s()("div",{role:"button",tabIndex:"0","data-index":t,className:O()("autosuggest-textarea__suggestions__item",{selected:t===n}),onMouseDown:o.onSuggestionClick},i,a)},a=n,p()(o,a)}return f()(t,e),t.prototype.componentWillReceiveProps=function(e){e.suggestions!==this.props.suggestions&&e.suggestions.size>0&&this.state.suggestionsHidden&&this.setState({suggestionsHidden:!1})},t.prototype.render=function(){var e=this.props,t=e.value,n=e.suggestions,o=e.disabled,a=e.placeholder,i=e.autoFocus,r=this.state.suggestionsHidden,c={direction:"ltr"};return Object(w.a)(t)&&(c.direction="rtl"),s()("div",{className:"autosuggest-textarea"},void 0,s()("label",{},void 0,s()("span",{style:{display:"none"}},void 0,a),s()(x.a,{inputRef:this.setTextarea,className:"autosuggest-textarea__textarea",disabled:o,placeholder:a,autoFocus:i,value:t,onChange:this.onChange,onKeyDown:this.onKeyDown,onKeyUp:this.onKeyUp,onBlur:this.onBlur,onPaste:this.onPaste,style:c,"aria-autocomplete":"list"})),s()("div",{className:"autosuggest-textarea__suggestions "+(r||n.isEmpty()?"":"autosuggest-textarea__suggestions--visible")},void 0,n.map(this.renderSuggestion)))},t}(j.a),o.propTypes={value:k.a.string,suggestions:y.a.list,disabled:k.a.bool,placeholder:k.a.string,onSuggestionSelected:k.a.func.isRequired,onSuggestionsClearRequested:k.a.func.isRequired,onSuggestionsFetchRequested:k.a.func.isRequired,onChange:k.a.func.isRequired,onKeyUp:k.a.func,onKeyDown:k.a.func,onPaste:k.a.func.isRequired,autoFocus:k.a.bool},o.defaultProps={autoFocus:!0},a)},307:function(e,t,n){"use strict";var o=n(9),a=n(308),i=n(66),s=function(){var e=Object(i.c)();return function(t,n){var o=n.id;return{account:e(t,o)}}};t.a=Object(o.connect)(s)(a.a)},308:function(e,t,n){"use strict";n.d(t,"a",function(){return _});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=(n.n(g),n(56)),h=n(55),m=n(13),v=n.n(m),b=n(12),y=n.n(b),_=(a=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props.account;return s()("div",{className:"autosuggest-account"},void 0,s()("div",{className:"autosuggest-account-icon"},void 0,s()(f.a,{account:e,size:18})),s()(h.a,{account:e}))},t}(y.a),o.propTypes={account:v.a.map.isRequired},a)},309:function(e,t,n){"use strict";(function(e){n.d(t,"a",function(){return m});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(155),f=n.n(g),h=e.env.CDN_HOST||"",m=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){var e=this.props.emoji,t=void 0;if(e.custom)t=e.imageUrl;else{var n=f.a[e.native]||f.a[e.native.replace(/\uFE0F$/,"")];if(!n)return null;t=h+"/emoji/"+n.filename+".svg"}return a()("div",{className:"autosuggest-emoji"},void 0,a()("img",{className:"emojione",src:t,alt:e.native||e.colons}),e.colons)},t}(p.a.PureComponent)}).call(t,n(36))},310:function(e,t,n){"use strict";function o(){return o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},o.apply(this,arguments)}function a(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function i(e,t){if(null==e)return{};var n,o,a={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(a[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o<s.length;o++)n=s[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function s(e,t,n,o,a){void 0===n&&(n=!1),void 0===o&&(o=null),void 0===a&&(a=null),null===g.parentNode&&document.body.appendChild(g);var i=r(e,t,n);if(null===i)return null;var s=i.paddingSize,c=i.borderSize,l=i.boxSizing,u=i.sizingStyle;Object.keys(u).forEach(function(e){g.style[e]=u[e]}),Object.keys(f).forEach(function(e){g.style.setProperty(e,f[e],"important")}),g.value=e.value||e.placeholder||"x";var d=-1/0,p=1/0,h=g.scrollHeight;"border-box"===l?h+=c:"content-box"===l&&(h-=s),g.value="x";var m=g.scrollHeight-s;return null===o&&null===a||(null!==o&&(d=m*o,"border-box"===l&&(d=d+s+c),h=Math.max(d,h)),null!==a&&(p=m*a,"border-box"===l&&(p=p+s+c),h=Math.min(p,h))),{height:h,minHeight:d,maxHeight:p,rowCount:Math.floor(h/m)}}function r(e,t,n){if(void 0===n&&(n=!1),n&&m[t])return m[t];var o=window.getComputedStyle(e);if(null===o)return null;var a=h.reduce(function(e,t){return e[t]=o.getPropertyValue(t),e},{}),i=a["box-sizing"];p&&"border-box"===i&&(a.width=parseFloat(a.width)+parseFloat(o["border-right-width"])+parseFloat(o["border-left-width"])+parseFloat(o["padding-right"])+parseFloat(o["padding-left"])+"px");var s=parseFloat(a["padding-bottom"])+parseFloat(a["padding-top"]),r=parseFloat(a["border-bottom-width"])+parseFloat(a["border-top-width"]),c={sizingStyle:a,paddingSize:s,borderSize:r,boxSizing:i};return n&&(m[t]=c),c}var c=n(0),l=n.n(c),u=n(5),d=(n.n(u),"undefined"!=typeof window&&"undefined"!=typeof document),p=!!d&&!!document.documentElement.currentStyle,g=d&&document.createElement("textarea"),f={"min-height":"0","max-height":"none",height:"0",visibility:"hidden",overflow:"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},h=["letter-spacing","line-height","font-family","font-weight","font-size","font-style","tab-size","text-rendering","text-transform","width","text-indent","padding-top","padding-right","padding-bottom","padding-left","border-top-width","border-right-width","border-bottom-width","border-left-width","box-sizing"],m={},v=function(e){return delete m[e]},b=function(e){return void 0===e&&(e=0),function(){return++e}}(),y=function(){},_=d&&window.requestAnimationFrame?[window.requestAnimationFrame,window.cancelAnimationFrame]:[setTimeout,clearTimeout],k=_[0],w=_[1],C=function(e){function t(t){var n;return n=e.call(this,t)||this,n._resizeLock=!1,n._onRootDOMNode=function(e){n._rootDOMNode=e,n.props.inputRef&&n.props.inputRef(e)},n._onChange=function(e){n._controlled||n._resizeComponent(),n.props.onChange(e)},n._resizeComponent=function(e){if(void 0===e&&(e=y),void 0===n._rootDOMNode)return void e();var t=s(n._rootDOMNode,n._uid,n.props.useCacheForDOMMeasurements,n.props.minRows,n.props.maxRows);if(null===t)return void e();var o=t.height,a=t.minHeight,i=t.maxHeight,r=t.rowCount;if(n.rowCount=r,n.state.height!==o||n.state.minHeight!==a||n.state.maxHeight!==i)return void n.setState({height:o,minHeight:a,maxHeight:i},e);e()},n.state={height:t.style&&t.style.height||0,minHeight:-1/0,maxHeight:1/0},n._uid=b(),n._controlled="string"==typeof t.value,n}a(t,e);var n=t.prototype;return n.render=function(){var e=this.props,t=(e.minRows,e.maxRows,e.onHeightChange,e.useCacheForDOMMeasurements,e.inputRef,i(e,["minRows","maxRows","onHeightChange","useCacheForDOMMeasurements","inputRef"]));return t.style=o({},t.style,{height:this.state.height}),Math.max(t.style.maxHeight||1/0,this.state.maxHeight)<this.state.height&&(t.style.overflow="hidden"),l.a.createElement("textarea",o({},t,{onChange:this._onChange,ref:this._onRootDOMNode}))},n.componentDidMount=function(){var e=this;this._resizeComponent(),this._resizeListener=function(){e._resizeLock||(e._resizeLock=!0,e._resizeComponent(function(){return e._resizeLock=!1}))},window.addEventListener("resize",this._resizeListener)},n.componentWillReceiveProps=function(){var e=this;this._clearNextFrame(),this._onNextFrameActionId=k(function(){return e._resizeComponent()})},n.componentDidUpdate=function(e,t){this.state.height!==t.height&&this.props.onHeightChange(this.state.height,this)},n.componentWillUnmount=function(){this._clearNextFrame(),window.removeEventListener("resize",this._resizeListener),v(this._uid)},n._clearNextFrame=function(){w(this._onNextFrameActionId)},t}(l.a.Component);C.defaultProps={onChange:y,onHeightChange:y,useCacheForDOMMeasurements:!1},t.a=C},311:function(e,t,n){"use strict";var o=n(9),a=n(312),i=n(18),s=function(e){return{disabled:e.getIn(["compose","is_uploading"])||e.getIn(["compose","media_attachments"]).size>3||e.getIn(["compose","media_attachments"]).some(function(e){return"video"===e.get("type")}),resetFileKey:e.getIn(["compose","resetFileKey"])}},r=function(e){return{onSelectFile:function(t){e(Object(i.Z)(t))}}};t.a=Object(o.connect)(s,r)(a.a)},312:function(e,t,n){"use strict";n.d(t,"a",function(){return N});var o,a,i,s,r=n(2),c=n.n(r),l=n(1),u=n.n(l),d=n(3),p=n.n(d),g=n(4),f=n.n(g),h=n(0),m=n.n(h),v=n(23),b=n(5),y=n.n(b),_=n(6),k=n(9),w=n(12),C=n.n(w),j=n(13),x=n.n(j),M=Object(_.f)({upload:{id:"upload_button.label",defaultMessage:"Add media"}}),O=function(){return function(e){return{acceptContentTypes:e.getIn(["media_attachments","accept_content_types"])}}},S={height:null,lineHeight:"27px"},N=(o=Object(k.connect)(O))(a=Object(_.g)((s=i=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.handleChange=function(e){e.target.files.length>0&&o.props.onSelectFile(e.target.files)},o.handleClick=function(){o.fileElement.click()},o.setRef=function(e){o.fileElement=e},a=n,p()(o,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.intl,n=e.resetFileKey,o=e.disabled,a=e.acceptContentTypes;return c()("div",{className:"compose-form__upload-button"},void 0,c()(v.a,{icon:"camera",title:t.formatMessage(M.upload),disabled:o,onClick:this.handleClick,className:"compose-form__upload-button-icon",size:18,inverted:!0,style:S}),c()("label",{},void 0,c()("span",{style:{display:"none"}},void 0,t.formatMessage(M.upload)),m.a.createElement("input",{key:n,ref:this.setRef,type:"file",multiple:!1,accept:a.toArray().join(","),onChange:this.handleChange,disabled:o,style:{display:"none"}})))},t}(C.a),i.propTypes={disabled:y.a.bool,onSelectFile:y.a.func.isRequired,style:y.a.object,resetFileKey:y.a.number,acceptContentTypes:x.a.listOf(y.a.string).isRequired,intl:y.a.object.isRequired},a=s))||a)||a},313:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(0),s=(n.n(i),n(28)),r=n(27),c=n.n(r),l=function(e){var t=e.fullHeight,n=e.isVisible,o=e.children;return a()(s.a,{defaultStyle:{opacity:n?100:0,height:n?t:0},style:{opacity:c()(n?100:0),height:c()(n?t:0)}},void 0,function(e){var t=e.opacity,n=e.height;return a()("div",{style:{height:n+"px",overflow:"hidden",opacity:t/100,display:0===Math.floor(t)?"none":"block"}},void 0,o)})};t.a=l},314:function(e,t,n){"use strict";var o=n(9),a=n(315),i=n(18),s=n(6),r=Object(s.f)({marked:{id:"compose_form.spoiler.marked",defaultMessage:"Text is hidden behind warning"},unmarked:{id:"compose_form.spoiler.unmarked",defaultMessage:"Text is not hidden"}}),c=function(e,t){return{label:"CW",title:t.intl.formatMessage(e.getIn(["compose","spoiler"])?r.marked:r.unmarked),active:e.getIn(["compose","spoiler"]),ariaControls:"cw-spoiler-input"}},l=function(e){return{onClick:function(){e(Object(i.I)())}}};t.a=Object(s.g)(Object(o.connect)(c,l)(a.a))},315:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=function(e){function t(){var n,o,a;s()(this,t);for(var i=arguments.length,r=Array(i),l=0;l<i;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.handleClick=function(e){e.preventDefault(),o.props.onClick()},a=n,c()(o,a)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.label,n=e.title,o=e.active,i=e.ariaControls;return a()("button",{title:n,"aria-label":n,className:"text-icon-button "+(o?"active":""),"aria-expanded":o,onClick:this.handleClick,"aria-controls":i},void 0,t)},t}(p.a.PureComponent)},316:function(e,t,n){"use strict";var o=n(9),a=n(317),i=n(18),s=n(26),r=n(35),c=function(e){return{isModalOpen:"ACTIONS"===e.get("modal").modalType,value:e.getIn(["compose","privacy"])}},l=function(e){return{onChange:function(t){e(Object(i.J)(t))},isUserTouching:r.c,onModalOpen:function(t){return e(Object(s.d)("ACTIONS",t))},onModalClose:function(){return e(Object(s.c)())}}};t.a=Object(o.connect)(c,l)(a.a)},317:function(e,t,n){"use strict";n.d(t,"a",function(){return S});var o,a=n(2),i=n.n(a),s=n(1),r=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),p=n(0),g=n.n(p),f=n(6),h=n(23),m=n(96),v=n.n(m),b=n(28),y=n(27),_=n.n(y),k=n(46),w=n.n(k),C=n(10),j=n.n(C),x=Object(f.f)({public_short:{id:"privacy.public.short",defaultMessage:"Public"},public_long:{id:"privacy.public.long",defaultMessage:"Post to public timelines"},unlisted_short:{id:"privacy.unlisted.short",defaultMessage:"Unlisted"},unlisted_long:{id:"privacy.unlisted.long",defaultMessage:"Do not show in public timelines"},private_short:{id:"privacy.private.short",defaultMessage:"Followers-only"},private_long:{id:"privacy.private.long",defaultMessage:"Post to followers only"},direct_short:{id:"privacy.direct.short",defaultMessage:"Direct"},direct_long:{id:"privacy.direct.long",defaultMessage:"Post to mentioned users only"},change_privacy:{id:"privacy.change",defaultMessage:"Adjust status privacy"}}),M=!!w.a.hasSupport&&{passive:!0},O=function(e){function t(){var n,o,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return n=o=l()(this,e.call.apply(e,[this].concat(s))),o.handleDocumentClick=function(e){o.node&&!o.node.contains(e.target)&&o.props.onClose()},o.handleClick=function(e){if("Escape"===e.key)o.props.onClose();else if(!e.key||"Enter"===e.key){var t=e.currentTarget.getAttribute("data-index");e.preventDefault(),o.props.onClose(),o.props.onChange(t)}},o.setRef=function(e){o.node=e},a=n,l()(o,a)}return d()(t,e),t.prototype.componentDidMount=function(){document.addEventListener("click",this.handleDocumentClick,!1),document.addEventListener("touchend",this.handleDocumentClick,M)},t.prototype.componentWillUnmount=function(){document.removeEventListener("click",this.handleDocumentClick,!1),document.removeEventListener("touchend",this.handleDocumentClick,M)},t.prototype.render=function(){var e=this,t=this.props,n=t.style,o=t.items,a=t.value;return i()(b.a,{defaultStyle:{opacity:0,scaleX:.85,scaleY:.75},style:{opacity:_()(1,{damping:35,stiffness:400}),scaleX:_()(1,{damping:35,stiffness:400}),scaleY:_()(1,{damping:35,stiffness:400})}},void 0,function(t){var s=t.opacity,r=t.scaleX,c=t.scaleY;return g.a.createElement("div",{className:"privacy-dropdown__dropdown",style:Object.assign({},n,{opacity:s,transform:"scale("+r+", "+c+")"}),ref:e.setRef},o.map(function(t){return i()("div",{role:"button",tabIndex:"0","data-index":t.value,onKeyDown:e.handleClick,onClick:e.handleClick,className:j()("privacy-dropdown__option",{active:t.value===a})},t.value,i()("div",{className:"privacy-dropdown__option__icon"},void 0,i()("i",{className:"fa fa-fw fa-"+t.icon})),i()("div",{className:"privacy-dropdown__option__content"},void 0,i()("strong",{},void 0,t.text),t.meta))}))})},t}(g.a.PureComponent),S=Object(f.g)(o=function(e){function t(){var n,o,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return n=o=l()(this,e.call.apply(e,[this].concat(s))),o.state={open:!1},o.handleToggle=function(){o.props.isUserTouching()?o.state.open?o.props.onModalClose():o.props.onModalOpen({actions:o.options.map(function(e){return Object.assign({},e,{active:e.value===o.props.value})}),onClick:o.handleModalActionClick}):o.setState({open:!o.state.open})},o.handleModalActionClick=function(e){e.preventDefault();var t=o.options[e.currentTarget.getAttribute("data-index")].value;o.props.onModalClose(),o.props.onChange(t)},o.handleKeyDown=function(e){switch(e.key){case"Enter":o.handleToggle();break;case"Escape":o.handleClose()}},o.handleClose=function(){o.setState({open:!1})},o.handleChange=function(e){o.props.onChange(e)},a=n,l()(o,a)}return d()(t,e),t.prototype.componentWillMount=function(){var e=this.props.intl.formatMessage;this.options=[{icon:"globe",value:"public",text:e(x.public_short),meta:e(x.public_long)},{icon:"unlock-alt",value:"unlisted",text:e(x.unlisted_short),meta:e(x.unlisted_long)},{icon:"lock",value:"private",text:e(x.private_short),meta:e(x.private_long)},{icon:"envelope",value:"direct",text:e(x.direct_short),meta:e(x.direct_long)}]},t.prototype.render=function(){var e=this.props,t=e.value,n=e.intl,o=this.state.open,a=this.options.find(function(e){return e.value===t});return i()("div",{className:j()("privacy-dropdown",{active:o}),onKeyDown:this.handleKeyDown},void 0,i()("div",{className:j()("privacy-dropdown__value",{active:0===this.options.indexOf(a)})},void 0,i()(h.a,{className:"privacy-dropdown__value-icon",icon:a.icon,title:n.formatMessage(x.change_privacy),size:18,expanded:o,active:o,inverted:!0,onClick:this.handleToggle,style:{height:null,lineHeight:"27px"}})),i()(v.a,{show:o,placement:"bottom",target:this},void 0,i()(O,{items:this.options,value:t,onClose:this.handleClose,onChange:this.handleChange})))},t}(g.a.PureComponent))||o},318:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(9),f=n(10),h=n.n(f),m=n(23),v=n(18),b=n(28),y=n(27),_=n.n(y),k=n(6),w=Object(k.f)({marked:{id:"compose_form.sensitive.marked",defaultMessage:"Media is marked as sensitive"},unmarked:{id:"compose_form.sensitive.unmarked",defaultMessage:"Media is not marked as sensitive"}}),C=function(e){return{visible:e.getIn(["compose","media_attachments"]).size>0,active:e.getIn(["compose","sensitive"]),disabled:e.getIn(["compose","spoiler"])}},j=function(e){return{onClick:function(){e(Object(v.G)())}}},x=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.visible,n=e.active,o=e.disabled,i=e.onClick,s=e.intl;return a()(b.a,{defaultStyle:{scale:.87},style:{scale:_()(t?1:.87,{stiffness:200,damping:3})}},void 0,function(e){var r=e.scale,c=n?"eye-slash":"eye",l=h()("compose-form__sensitive-button",{"compose-form__sensitive-button--visible":t});return a()("div",{className:l,style:{transform:"scale("+r+")"}},void 0,a()(m.a,{className:"compose-form__sensitive-button__icon",title:s.formatMessage(n?w.marked:w.unmarked),icon:c,onClick:i,size:18,active:n,disabled:o,style:{lineHeight:null,height:null},inverted:!0}))})},t}(p.a.PureComponent);t.a=Object(g.connect)(C,j)(Object(k.g)(x))},319:function(e,t,n){"use strict";var o=n(9),a=n(320),i=n(57),s=n(95),r=(n.n(s),n(8)),c=(n.n(r),n(99)),l=["+1","grinning","kissing_heart","heart_eyes","laughing","stuck_out_tongue_winking_eye","sweat_smile","joy","yum","disappointed","thinking_face","weary","sob","sunglasses","heart","ok_hand"],u=Object(s.createSelector)([function(e){return e.getIn(["settings","frequentlyUsedEmojis"],Object(r.Map)())}],function(e){var t=e.keySeq().sort(function(t,n){return e.get(t)-e.get(n)}).reverse().slice(0,16).toArray();return t.length<l.length&&(t=t.concat(l.slice(0,l.length-t.length))),t}),d=Object(s.createSelector)([function(e){return e.get("custom_emojis")}],function(e){return e.filter(function(e){return e.get("visible_in_picker")}).sort(function(e,t){var n=e.get("shortcode").toLowerCase(),o=t.get("shortcode").toLowerCase();return n<o?-1:n>o?1:0})}),p=function(e){return{custom_emojis:d(e),skinTone:e.getIn(["settings","skinTone"]),frequentlyUsedEmojis:u(e)}},g=function(e,t){var n=t.onPickEmoji;return{onSkinTone:function(t){e(Object(i.c)(["skinTone"],t))},onPickEmoji:function(t){e(Object(c.b)(t)),n&&n(t)}}};t.a=Object(o.connect)(p,g)(a.a)},320:function(e,t,n){"use strict";(function(e){n.d(t,"a",function(){return P});var o,a,i,s,r=n(2),c=n.n(r),l=n(1),u=n.n(l),d=n(3),p=n.n(d),g=n(4),f=n.n(g),h=n(0),m=n.n(h),v=n(6),b=n(58),y=n(96),_=n.n(y),k=n(10),w=n.n(k),C=n(46),j=n.n(C),x=n(71),M=Object(v.f)({emoji:{id:"emoji_button.label",defaultMessage:"Insert emoji"},emoji_search:{id:"emoji_button.search",defaultMessage:"Search..."},emoji_not_found:{id:"emoji_button.not_found",defaultMessage:"No emojos!! (╯°□°)╯︵ ┻━┻"},custom:{id:"emoji_button.custom",defaultMessage:"Custom"},recent:{id:"emoji_button.recent",defaultMessage:"Frequently used"},search_results:{id:"emoji_button.search_results",defaultMessage:"Search results"},people:{id:"emoji_button.people",defaultMessage:"People"},nature:{id:"emoji_button.nature",defaultMessage:"Nature"},food:{id:"emoji_button.food",defaultMessage:"Food & Drink"},activity:{id:"emoji_button.activity",defaultMessage:"Activity"},travel:{id:"emoji_button.travel",defaultMessage:"Travel & Places"},objects:{id:"emoji_button.objects",defaultMessage:"Objects"},symbols:{id:"emoji_button.symbols",defaultMessage:"Symbols"},flags:{id:"emoji_button.flags",defaultMessage:"Flags"}}),O=e.env.CDN_HOST||"",S=void 0,N=void 0,D=function(){return O+"/emoji/sheet.png"},z=!!j.a.hasSupport&&{passive:!0},I=["recent","custom","people","nature","foods","activity","places","objects","symbols","flags"],T=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(e){o.props.onSelect(1*e.currentTarget.getAttribute("data-index"))},o.handleDocumentClick=function(e){o.node&&!o.node.contains(e.target)&&o.props.onClose()},o.setRef=function(e){o.node=e},a=n,p()(o,a)}return f()(t,e),t.prototype.componentWillReceiveProps=function(e){e.active?this.attachListeners():this.removeListeners()},t.prototype.componentWillUnmount=function(){this.removeListeners()},t.prototype.attachListeners=function(){document.addEventListener("click",this.handleDocumentClick,!1),document.addEventListener("touchend",this.handleDocumentClick,z)},t.prototype.removeListeners=function(){document.removeEventListener("click",this.handleDocumentClick,!1),document.removeEventListener("touchend",this.handleDocumentClick,z)},t.prototype.render=function(){var e=this.props.active;return m.a.createElement("div",{className:"emoji-picker-dropdown__modifiers__menu",style:{display:e?"block":"none"},ref:this.setRef},c()("button",{onClick:this.handleClick,"data-index":1},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:1,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":2},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:2,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":3},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:3,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":4},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:4,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":5},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:5,backgroundImageFn:D})),c()("button",{onClick:this.handleClick,"data-index":6},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:6,backgroundImageFn:D})))},t}(m.a.PureComponent),F=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.active?o.props.onClose():o.props.onOpen()},o.handleSelect=function(e){o.props.onChange(e),o.props.onClose()},a=n,p()(o,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.active,n=e.modifier;return c()("div",{className:"emoji-picker-dropdown__modifiers"},void 0,c()(N,{emoji:"fist",set:"twitter",size:22,sheetSize:32,skin:n,onClick:this.handleClick,backgroundImageFn:D}),c()(T,{active:t,onSelect:this.handleSelect,onClose:this.props.onClose}))},t}(m.a.PureComponent),R=Object(v.g)((i=a=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.state={modifierOpen:!1},o.handleDocumentClick=function(e){o.node&&!o.node.contains(e.target)&&o.props.onClose()},o.setRef=function(e){o.node=e},o.getI18n=function(){var e=o.props.intl;return{search:e.formatMessage(M.emoji_search),notfound:e.formatMessage(M.emoji_not_found),categories:{search:e.formatMessage(M.search_results),recent:e.formatMessage(M.recent),people:e.formatMessage(M.people),nature:e.formatMessage(M.nature),foods:e.formatMessage(M.food),activity:e.formatMessage(M.activity),places:e.formatMessage(M.travel),objects:e.formatMessage(M.objects),symbols:e.formatMessage(M.symbols),flags:e.formatMessage(M.flags),custom:e.formatMessage(M.custom)}}},o.handleClick=function(e){e.native||(e.native=e.colons),o.props.onClose(),o.props.onPick(e)},o.handleModifierOpen=function(){o.setState({modifierOpen:!0})},o.handleModifierClose=function(){o.setState({modifierOpen:!1})},o.handleModifierChange=function(e){o.props.onSkinTone(e)},a=n,p()(o,a)}return f()(t,e),t.prototype.componentDidMount=function(){document.addEventListener("click",this.handleDocumentClick,!1),document.addEventListener("touchend",this.handleDocumentClick,z)},t.prototype.componentWillUnmount=function(){document.removeEventListener("click",this.handleDocumentClick,!1),document.removeEventListener("touchend",this.handleDocumentClick,z)},t.prototype.render=function(){var e=this.props,t=e.loading,n=e.style,o=e.intl,a=e.custom_emojis,i=e.skinTone,s=e.frequentlyUsedEmojis;if(t)return c()("div",{style:{width:299}});var r=o.formatMessage(M.emoji),l=this.state.modifierOpen;return m.a.createElement("div",{className:w()("emoji-picker-dropdown__menu",{selecting:l}),style:n,ref:this.setRef},c()(S,{perLine:8,emojiSize:22,sheetSize:32,custom:Object(x.buildCustomEmojis)(a),color:"",emoji:"",set:"twitter",title:r,i18n:this.getI18n(),onClick:this.handleClick,include:I,recent:s,skin:i,showPreview:!1,backgroundImageFn:D,emojiTooltip:!0}),c()(F,{active:l,modifier:i,onOpen:this.handleModifierOpen,onClose:this.handleModifierClose,onChange:this.handleModifierChange}))},t}(m.a.PureComponent),a.defaultProps={style:{},loading:!0,placement:"bottom",frequentlyUsedEmojis:[]},o=i))||o,P=Object(v.g)(s=function(e){function t(){var n,o,a;u()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=p()(this,e.call.apply(e,[this].concat(s))),o.state={active:!1,loading:!1},o.setRef=function(e){o.dropdown=e},o.onShowDropdown=function(){o.setState({active:!0}),S||(o.setState({loading:!0}),Object(b.f)().then(function(e){S=e.Picker,N=e.Emoji,o.setState({loading:!1})}).catch(function(){o.setState({loading:!1})}))},o.onHideDropdown=function(){o.setState({active:!1})},o.onToggle=function(e){o.state.loading||e.key&&"Enter"!==e.key||(o.state.active?o.onHideDropdown():o.onShowDropdown())},o.handleKeyDown=function(e){"Escape"===e.key&&o.onHideDropdown()},o.setTargetRef=function(e){o.target=e},o.findTarget=function(){return o.target},a=n,p()(o,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.intl,n=e.onPickEmoji,o=e.onSkinTone,a=e.skinTone,i=e.frequentlyUsedEmojis,s=t.formatMessage(M.emoji),r=this.state,l=r.active,u=r.loading;return c()("div",{className:"emoji-picker-dropdown",onKeyDown:this.handleKeyDown},void 0,m.a.createElement("div",{ref:this.setTargetRef,className:"emoji-button",title:s,"aria-label":s,"aria-expanded":l,role:"button",onClick:this.onToggle,onKeyDown:this.onToggle,tabIndex:0},c()("img",{className:w()("emojione",{"pulse-loading":l&&u}),alt:"🙂",src:O+"/emoji/1f602.svg"})),c()(_.a,{show:l,placement:"bottom",target:this.findTarget},void 0,c()(R,{custom_emojis:this.props.custom_emojis,loading:u,onClose:this.onHideDropdown,onPick:n,onSkinTone:o,skinTone:a,frequentlyUsedEmojis:i})))},t}(m.a.PureComponent))||s}).call(t,n(36))},321:function(e,t,n){"use strict";var o=n(9),a=n(322),i=function(e){return{mediaIds:e.getIn(["compose","media_attachments"]).map(function(e){return e.get("id")})}};t.a=Object(o.connect)(i)(a.a)},322:function(e,t,n){"use strict";n.d(t,"a",function(){return _});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=(n.n(g),n(13)),h=n.n(f),m=n(323),v=n(12),b=n.n(v),y=n(325),_=(a=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props.mediaIds;return s()("div",{className:"compose-form__upload-wrapper"},void 0,s()(m.a,{}),s()("div",{className:"compose-form__uploads-wrapper"},void 0,e.map(function(e){return s()(y.a,{id:e},e)})))},t}(b.a),o.propTypes={mediaIds:h.a.list.isRequired},a)},323:function(e,t,n){"use strict";var o=n(9),a=n(324),i=function(e){return{active:e.getIn(["compose","is_uploading"]),progress:e.getIn(["compose","progress"])}};t.a=Object(o.connect)(i)(a.a)},324:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(28),f=n(27),h=n.n(f),m=n(6),v=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.active,n=e.progress;return t?a()("div",{className:"upload-progress"},void 0,a()("div",{className:"upload-progress__icon"},void 0,a()("i",{className:"fa fa-upload"})),a()("div",{className:"upload-progress__message"},void 0,a()(m.b,{id:"upload_progress.label",defaultMessage:"Uploading..."}),a()("div",{className:"upload-progress__backdrop"},void 0,a()(g.a,{defaultStyle:{width:0},style:{width:h()(n)}},void 0,function(e){var t=e.width;return a()("div",{className:"upload-progress__tracker",style:{width:t+"%"}})})))):null},t}(p.a.PureComponent)},325:function(e,t,n){"use strict";var o=n(9),a=n(326),i=n(18),s=n(26),r=function(e,t){var n=t.id;return{media:e.getIn(["compose","media_attachments"]).find(function(e){return e.get("id")===n})}},c=function(e){return{onUndo:function(t){e(Object(i.X)(t))},onDescriptionChange:function(t,n){e(Object(i.L)(t,{description:n}))},onOpenFocalPoint:function(t){e(Object(s.d)("FOCAL_POINT",{id:t}))}}};t.a=Object(o.connect)(r,c)(a.a)},326:function(e,t,n){"use strict";n.d(t,"a",function(){return S});var o,a,i,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),p=n(4),g=n.n(p),f=n(0),h=(n.n(f),n(13)),m=n.n(h),v=n(5),b=n.n(v),y=n(28),_=n(27),k=n.n(_),w=n(12),C=n.n(w),j=n(6),x=n(10),M=n.n(x),O=Object(j.f)({description:{id:"upload_form.description",defaultMessage:"Describe for the visually impaired"}}),S=Object(j.g)((i=a=function(e){function t(){var n,o,a;l()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.state={hovered:!1,focused:!1,dirtyDescription:null},o.handleUndoClick=function(){o.props.onUndo(o.props.media.get("id"))},o.handleFocalPointClick=function(){o.props.onOpenFocalPoint(o.props.media.get("id"))},o.handleInputChange=function(e){o.setState({dirtyDescription:e.target.value})},o.handleMouseEnter=function(){o.setState({hovered:!0})},o.handleMouseLeave=function(){o.setState({hovered:!1})},o.handleInputFocus=function(){o.setState({focused:!0})},o.handleInputBlur=function(){var e=o.state.dirtyDescription;o.setState({focused:!1,dirtyDescription:null}),null!==e&&o.props.onDescriptionChange(o.props.media.get("id"),e)},a=n,d()(o,a)}return g()(t,e),t.prototype.render=function(){var e=this,t=this.props,n=t.intl,o=t.media,a=this.state.hovered||this.state.focused,i=this.state.dirtyDescription||""!==this.state.dirtyDescription&&o.get("description")||"",s=o.getIn(["meta","focus","x"]),c=o.getIn(["meta","focus","y"]),l=100*(s/2+.5),u=100*(c/-2+.5);return r()("div",{className:"compose-form__upload",onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave},void 0,r()(y.a,{defaultStyle:{scale:.8},style:{scale:k()(1,{stiffness:180,damping:12})}},void 0,function(t){var s=t.scale;return r()("div",{className:"compose-form__upload-thumbnail",style:{transform:"scale("+s+")",backgroundImage:"url("+o.get("preview_url")+")",backgroundPosition:l+"% "+u+"%"}},void 0,r()("div",{className:M()("compose-form__upload__actions",{active:a})},void 0,r()("button",{className:"icon-button",onClick:e.handleUndoClick},void 0,r()("i",{className:"fa fa-times"})," ",r()(j.b,{id:"upload_form.undo",defaultMessage:"Undo"})),"image"===o.get("type")&&r()("button",{className:"icon-button",onClick:e.handleFocalPointClick},void 0,r()("i",{className:"fa fa-crosshairs"})," ",r()(j.b,{id:"upload_form.focus",defaultMessage:"Crop"}))),r()("div",{className:M()("compose-form__upload-description",{active:a})},void 0,r()("label",{},void 0,r()("span",{style:{display:"none"}},void 0,n.formatMessage(O.description)),r()("input",{placeholder:n.formatMessage(O.description),type:"text",value:i,maxLength:420,onFocus:e.handleInputFocus,onChange:e.handleInputChange,onBlur:e.handleInputBlur}))))}))},t}(C.a),a.propTypes={media:m.a.map.isRequired,intl:b.a.object.isRequired,onUndo:b.a.func.isRequired,onDescriptionChange:b.a.func.isRequired,onOpenFocalPoint:b.a.func.isRequired},o=i))||o},327:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(0),s=(n.n(i),n(9)),r=n(328),c=n(6),l=n(11),u=/(?:^|[^\/\)\w])#(\w*[a-zA-Z·]\w*)/i,d=function(e){return{needsLockWarning:"private"===e.getIn(["compose","privacy"])&&!e.getIn(["accounts",l.g,"locked"]),hashtagWarning:"public"!==e.getIn(["compose","privacy"])&&u.test(e.getIn(["compose","text"])),directMessageWarning:"direct"===e.getIn(["compose","privacy"])}},p=function(e){var t=e.needsLockWarning,n=e.hashtagWarning,o=e.directMessageWarning;return t?a()(r.a,{message:a()(c.b,{id:"compose_form.lock_disclaimer",defaultMessage:"Your account is not {locked}. Anyone can follow you to view your follower-only posts.",values:{locked:a()("a",{href:"/settings/profile"},void 0,a()(c.b,{id:"compose_form.lock_disclaimer.lock",defaultMessage:"locked"}))}})}):n?a()(r.a,{message:a()(c.b,{id:"compose_form.hashtag_warning",defaultMessage:"This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag."})}):o?a()(r.a,{message:a()(c.b,{id:"compose_form.direct_message_warning",defaultMessage:"This toot will only be visible to all the mentioned users."})}):null};t.a=Object(s.connect)(d)(p)},328:function(e,t,n){"use strict";n.d(t,"a",function(){return m});var o=n(2),a=n.n(o),i=n(1),s=n.n(i),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),p=n.n(d),g=n(28),f=n(27),h=n.n(f),m=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){var e=this.props.message;return a()(g.a,{defaultStyle:{opacity:0,scaleX:.85,scaleY:.75},style:{opacity:h()(1,{damping:35,stiffness:400}),scaleX:h()(1,{damping:35,stiffness:400}),scaleY:h()(1,{damping:35,stiffness:400})}},void 0,function(t){var n=t.opacity,o=t.scaleX,i=t.scaleY;return a()("div",{className:"compose-form__warning",style:{opacity:n,transform:"scale("+o+", "+i+")"}},void 0,e)})},t}(p.a.PureComponent)},329:function(e,t,n){"use strict";function o(e){return e.replace(a.a,i).replace(/(^|[^\/\w])@(([a-z0-9_]+)@[a-z0-9\.\-]+[a-z0-9]+)/gi,"$1@$3")}t.a=o;var a=n(330),i="xxxxxxxxxxxxxxxxxxxxxxx"},330:function(e,t,n){"use strict";n.d(t,"a",function(){return s});var o={},a=function(e,t){return t=t||"","string"!=typeof e&&(e.global&&t.indexOf("g")<0&&(t+="g"),e.ignoreCase&&t.indexOf("i")<0&&(t+="i"),e.multiline&&t.indexOf("m")<0&&(t+="m"),e=e.source),new RegExp(e.replace(/#\{(\w+)\}/g,function(e,t){var n=o[t]||"";return"string"!=typeof n&&(n=n.source),n}),t)},i=function(e,t){return e.replace(/#\{(\w+)\}/g,function(e,n){return t[n]||""})},s=function(){return o.spaces_group=/\x09-\x0D\x20\x85\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000/,o.invalid_chars_group=/\uFFFE\uFEFF\uFFFF\u202A-\u202E/,o.punct=/\!'#%&'\(\)*\+,\\\-\.\/:;<=>\?@\[\]\^_{|}~\$/,o.validUrlPrecedingChars=a(/(?:[^A-Za-z0-9@@$###{invalid_chars_group}]|^)/),o.invalidDomainChars=i("#{punct}#{spaces_group}#{invalid_chars_group}",o),o.validDomainChars=a(/[^#{invalidDomainChars}]/),o.validSubdomain=a(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\.)/),o.validDomainName=a(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\.)/),o.validGTLD=a(RegExp("(?:(?:삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|政务|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|stada|srt|srl|spreadbetting|spot|spiegel|space|soy|sony|song|solutions|solar|sohu|software|softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|lotte|london|lol|loft|locus|locker|loans|loan|lixil|living|live|lipsy|link|linde|lincoln|limo|limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|industries|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|courses|coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|chintai|cheap|chat|chase|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion)(?=[^0-9a-zA-Z@]|$))")),o.validCCTLD=a(RegExp("(?:(?:한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ελ|zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|re|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac)(?=[^0-9a-zA-Z@]|$))")),o.validPunycode=/(?:xn--[0-9a-z]+)/,o.validSpecialCCTLD=/(?:(?:co|tv)(?=[^0-9a-zA-Z@]|$))/,o.validDomain=a(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/),o.validPortNumber=/[0-9]+/,o.pd=/\u002d\u058a\u05be\u1400\u1806\u2010-\u2015\u2e17\u2e1a\u2e3a\u2e40\u301c\u3030\u30a0\ufe31\ufe58\ufe63\uff0d/,o.validGeneralUrlPathChars=a(/[^#{spaces_group}\(\)\?]/i),o.validUrlBalancedParens=a("\\((?:#{validGeneralUrlPathChars}+|(?:#{validGeneralUrlPathChars}*\\(#{validGeneralUrlPathChars}+\\)#{validGeneralUrlPathChars}*))\\)","i"),o.validUrlPathEndingChars=a(/[^#{spaces_group}\(\)\?!\*';:=\,\.\$%\[\]#{pd}~&\|@]|(?:#{validUrlBalancedParens})/i),o.validUrlPath=a("(?:(?:#{validGeneralUrlPathChars}*(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*#{validUrlPathEndingChars})|(?:@#{validGeneralUrlPathChars}+/))","i"),o.validUrlQueryChars=/[a-z0-9!?\*'@\(\);:&=\+\$\/%#\[\]\-_\.,~|]/i,o.validUrlQueryEndingChars=/[a-z0-9_&=#\/]/i,o.validUrl=a("((https?:\\/\\/)(#{validDomain})(?::(#{validPortNumber}))?(\\/#{validUrlPath}*)?(\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?)","gi"),o.validUrl}()},331:function(e,t,n){"use strict";var o=n(9),a=n(302),i=n(18),s=function(e){return{text:e.getIn(["compose","text"]),suggestion_token:e.getIn(["compose","suggestion_token"]),suggestions:e.getIn(["compose","suggestions"]),spoiler:e.getIn(["compose","spoiler"]),spoiler_text:e.getIn(["compose","spoiler_text"]),privacy:e.getIn(["compose","privacy"]),focusDate:e.getIn(["compose","focusDate"]),preselectDate:e.getIn(["compose","preselectDate"]),is_submitting:e.getIn(["compose","is_submitting"]),is_uploading:e.getIn(["compose","is_uploading"]),showSearch:e.getIn(["search","submitted"])&&!e.getIn(["search","hidden"]),anyMedia:e.getIn(["compose","media_attachments"]).size>0}},r=function(e){return{onChange:function(t){e(Object(i.F)(t))},onSubmit:function(){e(Object(i.W)())},onClearSuggestions:function(){e(Object(i.M)())},onFetchSuggestions:function(t){e(Object(i.O)(t))},onSuggestionSelected:function(t,n,o){e(Object(i.V)(t,n,o))},onChangeSpoilerText:function(t){e(Object(i.H)(t))},onPaste:function(t){e(Object(i.Z)(t))},onPickEmoji:function(t,n){e(Object(i.Q)(t,n))}}};t.a=Object(o.connect)(s,r)(a.a)},803:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return S});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=n.n(g),h=n(331),m=n(949),v=n(9),b=n(18),y=n(44),_=n(6),k=n(950),w=n(28),C=n(27),j=n.n(C),x=n(951),M=Object(_.f)({start:{id:"getting_started.heading",defaultMessage:"Getting started"},home_timeline:{id:"tabs_bar.home",defaultMessage:"Home"},notifications:{id:"tabs_bar.notifications",defaultMessage:"Notifications"},public:{id:"navigation_bar.public_timeline",defaultMessage:"Federated timeline"},community:{id:"navigation_bar.community_timeline",defaultMessage:"Local timeline"},preferences:{id:"navigation_bar.preferences",defaultMessage:"Preferences"},logout:{id:"navigation_bar.logout",defaultMessage:"Logout"}}),O=function(e){return{columns:e.getIn(["settings","columns"]),showSearch:e.getIn(["search","submitted"])&&!e.getIn(["search","hidden"])}},S=(o=Object(v.connect)(O))(a=Object(_.g)(a=function(e){function t(){var n,o,a;c()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.onFocus=function(){o.props.dispatch(Object(b.K)(!0))},o.onBlur=function(){o.props.dispatch(Object(b.K)(!1))},a=n,u()(o,a)}return p()(t,e),t.prototype.componentDidMount=function(){this.props.dispatch(Object(b.S)())},t.prototype.componentWillUnmount=function(){this.props.dispatch(Object(b.Y)())},t.prototype.render=function(){var e=this.props,t=e.multiColumn,n=e.showSearch,o=e.intl,a="";if(t){var i=this.props.columns;a=s()("nav",{className:"drawer__header"},void 0,s()(y.b,{to:"/getting-started",className:"drawer__tab",title:o.formatMessage(M.start),"aria-label":o.formatMessage(M.start)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-asterisk"})),!i.some(function(e){return"HOME"===e.get("id")})&&s()(y.b,{to:"/timelines/home",className:"drawer__tab",title:o.formatMessage(M.home_timeline),"aria-label":o.formatMessage(M.home_timeline)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-home"})),!i.some(function(e){return"NOTIFICATIONS"===e.get("id")})&&s()(y.b,{to:"/notifications",className:"drawer__tab",title:o.formatMessage(M.notifications),"aria-label":o.formatMessage(M.notifications)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-bell"})),!i.some(function(e){return"COMMUNITY"===e.get("id")})&&s()(y.b,{to:"/timelines/public/local",className:"drawer__tab",title:o.formatMessage(M.community),"aria-label":o.formatMessage(M.community)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-users"})),!i.some(function(e){return"PUBLIC"===e.get("id")})&&s()(y.b,{to:"/timelines/public",className:"drawer__tab",title:o.formatMessage(M.public),"aria-label":o.formatMessage(M.public)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-globe"})),s()("a",{href:"/user-settings",className:"drawer__tab",title:o.formatMessage(M.preferences),"aria-label":o.formatMessage(M.preferences)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-cog"})),s()("a",{href:"/auth/sign_out",className:"drawer__tab","data-method":"delete",title:o.formatMessage(M.logout),"aria-label":o.formatMessage(M.logout)},void 0,s()("i",{role:"img",className:"fa fa-fw fa-sign-out"})))}return s()("div",{className:"drawer"},void 0,a,s()(k.a,{}),s()("div",{className:"drawer__pager"},void 0,s()("div",{className:"drawer__inner",onFocus:this.onFocus},void 0,s()(m.a,{onClose:this.onBlur}),s()(h.a,{}),t&&s()("div",{className:"drawer__inner__mastodon"},void 0)),s()(w.a,{defaultStyle:{x:-100},style:{x:j()(n?0:-100,{stiffness:210,damping:20})}},void 0,function(e){var t=e.x;return s()("div",{className:"drawer__inner darker",style:{transform:"translateX("+t+"%)",visibility:-100===t?"hidden":"visible"}},void 0,s()(x.a,{}))})))},t}(f.a.PureComponent))||a)||a},841:function(e,t,n){"use strict";var o=n(2),a=n.n(o),i=n(0),s=(n.n(i),n(9)),r=n(6),c=n(66),l=n(842),u=n(22),d=n(26),p=n(282),g=n(11),f=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var e=Object(c.c)();return function(t,n){return{account:e(t,n.id)}}},m=function(e,t){var n=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?g.j?Object(d.d)("CONFIRM",{message:a()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(f.unfollowConfirm),onConfirm:function(){return e(Object(u.D)(t.get("id")))}}):Object(u.D)(t.get("id")):Object(u.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(u.C)(t.get("id")):Object(u.q)(t.get("id")))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(u.E)(t.get("id")):Object(p.a)(t))},onMuteNotifications:function(t,n){e(Object(u.A)(t.get("id"),n))}}};t.a=Object(r.g)(Object(s.connect)(h,m)(l.a))},842:function(e,t,n){"use strict";n.d(t,"a",function(){return S});var o,a,i,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),p=n(4),g=n.n(p),f=n(0),h=(n.n(f),n(13)),m=n.n(h),v=n(5),b=n.n(v),y=n(56),_=n(55),k=n(295),w=n(23),C=n(6),j=n(12),x=n.n(j),M=n(11),O=Object(C.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),S=Object(C.g)((i=a=function(e){function t(){var n,o,a;l()(this,t);for(var i=arguments.length,s=Array(i),r=0;r<i;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},a=n,d()(o,a)}return g()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.intl,o=e.hidden;if(!t)return r()("div",{});if(o)return r()("div",{},void 0,t.get("display_name"),t.get("username"));var a=void 0;if(t.get("id")!==M.g&&null!==t.get("relationship",null)){var i=t.getIn(["relationship","following"]),s=t.getIn(["relationship","requested"]),c=t.getIn(["relationship","blocking"]),l=t.getIn(["relationship","muting"]);if(s)a=r()(w.a,{disabled:!0,icon:"hourglass",title:n.formatMessage(O.requested)});else if(c)a=r()(w.a,{active:!0,icon:"unlock-alt",title:n.formatMessage(O.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(l){var u=void 0;u=t.getIn(["relationship","muting_notifications"])?r()(w.a,{active:!0,icon:"bell",title:n.formatMessage(O.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):r()(w.a,{active:!0,icon:"bell-slash",title:n.formatMessage(O.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),a=r()(f.Fragment,{},void 0,r()(w.a,{active:!0,icon:"volume-up",title:n.formatMessage(O.unmute,{name:t.get("username")}),onClick:this.handleMute}),u)}else t.get("moved")&&!i||(a=r()(w.a,{icon:i?"user-times":"user-plus",title:n.formatMessage(i?O.unfollow:O.follow),onClick:this.handleFollow,active:i}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(k.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(y.a,{account:t,size:36})),r()(_.a,{account:t})),r()("div",{className:"account__relationship"},void 0,a)))},t}(x.a),a.propTypes={account:m.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},o=i))||o},863:function(e,t,n){"use strict";n.d(t,"a",function(){return j});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=(n.n(g),n(5)),h=n.n(f),m=n(13),v=n.n(m),b=n(56),y=n(23),_=n(295),k=n(6),w=n(12),C=n.n(w),j=(a=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){return s()("div",{className:"navigation-bar"},void 0,s()(_.a,{href:this.props.account.get("url"),to:"/accounts/"+this.props.account.get("id")},void 0,s()("span",{style:{display:"none"}},void 0,this.props.account.get("acct")),s()(b.a,{account:this.props.account,size:40})),s()("div",{className:"navigation-bar__profile"},void 0,s()(_.a,{href:this.props.account.get("url"),to:"/accounts/"+this.props.account.get("id")},void 0,s()("strong",{className:"navigation-bar__profile-account"},void 0,"@",this.props.account.get("acct"))),s()("a",{href:"/settings/profile",className:"navigation-bar__profile-edit"},void 0,s()(k.b,{id:"navigation_bar.edit_profile",defaultMessage:"Edit profile"}))),s()(y.a,{title:"",icon:"close",onClick:this.props.onClose}))},t}(C.a),o.propTypes={account:v.a.map.isRequired,onClose:h.a.func},a)},864:function(e,t,n){"use strict";n.d(t,"a",function(){return C});var o,a=n(2),i=n.n(a),s=n(1),r=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),p=n(0),g=n.n(p),f=n(6),h=n(96),m=n.n(h),v=n(28),b=n(27),y=n.n(b),_=n(11),k=Object(f.f)({placeholder:{id:"search.placeholder",defaultMessage:"Search"}}),w=function(e){function t(){return r()(this,t),l()(this,e.apply(this,arguments))}return d()(t,e),t.prototype.render=function(){var e=this.props.style,t=_.i?i()(f.b,{id:"search_popout.tips.full_text",defaultMessage:"Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags."}):i()(f.b,{id:"search_popout.tips.text",defaultMessage:"Simple text returns matching display names, usernames and hashtags"});return i()("div",{style:Object.assign({},e,{position:"absolute",width:315})},void 0,i()(v.a,{defaultStyle:{opacity:0,scaleX:.85,scaleY:.75},style:{opacity:y()(1,{damping:35,stiffness:400}),scaleX:y()(1,{damping:35,stiffness:400}),scaleY:y()(1,{damping:35,stiffness:400})}},void 0,function(e){var n=e.opacity,o=e.scaleX,a=e.scaleY;return i()("div",{className:"search-popout",style:{opacity:n,transform:"scale("+o+", "+a+")"}},void 0,i()("h4",{},void 0,i()(f.b,{id:"search_popout.search_format",defaultMessage:"Advanced search format"})),i()("ul",{},void 0,i()("li",{},void 0,i()("em",{},void 0,"#example")," ",i()(f.b,{id:"search_popout.tips.hashtag",defaultMessage:"hashtag"})),i()("li",{},void 0,i()("em",{},void 0,"@username@domain")," ",i()(f.b,{id:"search_popout.tips.user",defaultMessage:"user"})),i()("li",{},void 0,i()("em",{},void 0,"URL")," ",i()(f.b,{id:"search_popout.tips.user",defaultMessage:"user"})),i()("li",{},void 0,i()("em",{},void 0,"URL")," ",i()(f.b,{id:"search_popout.tips.status",defaultMessage:"status"}))),t)}))},t}(g.a.PureComponent),C=Object(f.g)(o=function(e){function t(){var n,o,a;r()(this,t);for(var i=arguments.length,s=Array(i),c=0;c<i;c++)s[c]=arguments[c];return n=o=l()(this,e.call.apply(e,[this].concat(s))),o.state={expanded:!1},o.handleChange=function(e){o.props.onChange(e.target.value)},o.handleClear=function(e){e.preventDefault(),(o.props.value.length>0||o.props.submitted)&&o.props.onClear()},o.handleKeyDown=function(e){"Enter"===e.key?(e.preventDefault(),o.props.onSubmit()):"Escape"===e.key&&document.querySelector(".ui").parentElement.focus()},o.handleFocus=function(){o.setState({expanded:!0}),o.props.onShow()},o.handleBlur=function(){o.setState({expanded:!1})},a=n,l()(o,a)}return d()(t,e),t.prototype.noop=function(){},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.value,o=e.submitted,a=this.state.expanded,s=n.length>0||o;return i()("div",{className:"search"},void 0,i()("label",{},void 0,i()("span",{style:{display:"none"}},void 0,t.formatMessage(k.placeholder)),i()("input",{className:"search__input",type:"text",placeholder:t.formatMessage(k.placeholder),value:n,onChange:this.handleChange,onKeyUp:this.handleKeyDown,onFocus:this.handleFocus,onBlur:this.handleBlur})),i()("div",{role:"button",tabIndex:"0",className:"search__icon",onClick:this.handleClear},void 0,i()("i",{className:"fa fa-search "+(s?"":"active")}),i()("i",{"aria-label":t.formatMessage(k.placeholder),className:"fa fa-times-circle "+(s?"active":"")})),i()(m.a,{show:a&&!s,placement:"bottom",target:this},void 0,i()(w,{})))},t}(g.a.PureComponent))||o},949:function(e,t,n){"use strict";var o=n(9),a=n(863),i=n(11),s=function(e){return{account:e.getIn(["accounts",i.g])}};t.a=Object(o.connect)(s)(a.a)},950:function(e,t,n){"use strict";var o=n(9),a=n(336),i=n(864),s=function(e){return{value:e.getIn(["search","value"]),submitted:e.getIn(["search","submitted"])}},r=function(e){return{onChange:function(t){e(Object(a.e)(t))},onClear:function(){e(Object(a.f)())},onSubmit:function(){e(Object(a.h)())},onShow:function(){e(Object(a.g)())}}};t.a=Object(o.connect)(s,r)(i.a)},951:function(e,t,n){"use strict";var o=n(9),a=n(952),i=function(e){return{results:e.getIn(["search","results"])}};t.a=Object(o.connect)(i)(a.a)},952:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,a,i=n(2),s=n.n(i),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),p=n.n(d),g=n(0),f=(n.n(g),n(13)),h=n.n(f),m=n(6),v=n(841),b=n(285),y=n(44),_=n(12),k=n.n(_),w=(a=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return p()(t,e),t.prototype.render=function(){var e=this.props.results,t=void 0,n=void 0,o=void 0,a=0;return e.get("accounts")&&e.get("accounts").size>0&&(a+=e.get("accounts").size,t=s()("div",{className:"search-results__section"},void 0,s()("h5",{},void 0,s()(m.b,{id:"search_results.accounts",defaultMessage:"People"})),e.get("accounts").map(function(e){return s()(v.a,{id:e},e)}))),e.get("statuses")&&e.get("statuses").size>0&&(a+=e.get("statuses").size,n=s()("div",{className:"search-results__section"},void 0,s()("h5",{},void 0,s()(m.b,{id:"search_results.statuses",defaultMessage:"Toots"})),e.get("statuses").map(function(e){return s()(b.a,{id:e},e)}))),e.get("hashtags")&&e.get("hashtags").size>0&&(a+=e.get("hashtags").size,o=s()("div",{className:"search-results__section"},void 0,s()("h5",{},void 0,s()(m.b,{id:"search_results.hashtags",defaultMessage:"Hashtags"})),e.get("hashtags").map(function(e){return s()(y.b,{className:"search-results__hashtag",to:"/timelines/tag/"+e},e,"#",e)}))),s()("div",{className:"search-results"},void 0,s()("div",{className:"search-results__header"},void 0,s()(m.b,{id:"search_results.total",defaultMessage:"{count, number} {count, plural, one {result} other {results}}",values:{count:a}})),t,n,o)},t}(k.a),o.propTypes={results:h.a.map.isRequired},a)}}); //# sourceMappingURL=compose.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/compose.js.map b/priv/static/packs/features/compose.js.map index c9bbc6921..0ee7c9de1 100644 --- a/priv/static/packs/features/compose.js.map +++ b/priv/static/packs/features/compose.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/compose.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/features/compose/components/compose_form.js","webpack:///./app/javascript/mastodon/features/compose/components/character_counter.js","webpack:///./app/javascript/mastodon/features/compose/containers/reply_indicator_container.js","webpack:///./app/javascript/mastodon/features/compose/components/reply_indicator.js","webpack:///./app/javascript/mastodon/components/autosuggest_textarea.js","webpack:///./app/javascript/mastodon/features/compose/containers/autosuggest_account_container.js","webpack:///./app/javascript/mastodon/features/compose/components/autosuggest_account.js","webpack:///./app/javascript/mastodon/components/autosuggest_emoji.js","webpack:///./node_modules/react-textarea-autosize/es/index.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_button_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_button.js","webpack:///./app/javascript/mastodon/components/collapsable.js","webpack:///./app/javascript/mastodon/features/compose/containers/spoiler_button_container.js","webpack:///./app/javascript/mastodon/features/compose/components/text_icon_button.js","webpack:///./app/javascript/mastodon/features/compose/containers/privacy_dropdown_container.js","webpack:///./app/javascript/mastodon/features/compose/components/privacy_dropdown.js","webpack:///./app/javascript/mastodon/features/compose/containers/sensitive_button_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js","webpack:///./app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_form_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_form.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_progress_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_progress.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload.js","webpack:///./app/javascript/mastodon/features/compose/containers/warning_container.js","webpack:///./app/javascript/mastodon/features/compose/components/warning.js","webpack:///./app/javascript/mastodon/features/compose/util/counter.js","webpack:///./app/javascript/mastodon/features/compose/util/url_regex.js","webpack:///./app/javascript/mastodon/features/compose/containers/compose_form_container.js","webpack:///./app/javascript/mastodon/features/compose/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/features/compose/components/navigation_bar.js","webpack:///./app/javascript/mastodon/features/compose/components/search.js","webpack:///./app/javascript/mastodon/features/compose/containers/navigation_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/search_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/search_results_container.js","webpack:///./app/javascript/mastodon/features/compose/components/search_results.js"],"names":["webpackJsonp","283","module","__webpack_exports__","__webpack_require__","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","285","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","id","defaultMessage","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","props","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","this","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","302","d","ComposeForm","_class","_class2","_temp2","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5__character_counter__","__WEBPACK_IMPORTED_MODULE_6__components_button__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8_prop_types__","__WEBPACK_IMPORTED_MODULE_8_prop_types___default","__WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__","__WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__","__WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__","__WEBPACK_IMPORTED_MODULE_13__components_collapsable__","__WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__","__WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__","__WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__","__WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__","__WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__","__WEBPACK_IMPORTED_MODULE_19__containers_warning_container__","__WEBPACK_IMPORTED_MODULE_20__is_mobile__","__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_22_stringz__","__WEBPACK_IMPORTED_MODULE_23__util_counter__","__WEBPACK_IMPORTED_MODULE_24__initial_state__","placeholder","spoiler_placeholder","publish","publishLoud","_ImmutablePureCompone","_temp","_this","_ret","_len","arguments","length","args","Array","_key","call","apply","concat","handleChange","onChange","target","value","handleKeyDown","keyCode","ctrlKey","metaKey","handleSubmit","text","autosuggestTextarea","textarea","onSubmit","onSuggestionsClearRequested","onClearSuggestions","onSuggestionsFetchRequested","token","onFetchSuggestions","onSuggestionSelected","tokenStart","_restoreCaret","handleChangeSpoilerText","onChangeSpoilerText","setAutosuggestTextarea","c","handleEmojiPick","data","position","selectionStart","emojiChar","native","onPickEmoji","prototype","componentWillReceiveProps","nextProps","is_uploading","componentDidUpdate","prevProps","focusDate","selectionEnd","preselectDate","search","setSelectionRange","focus","is_submitting","render","_props","onPaste","showSearch","anyMedia","disabled","spoiler_text","join","disabledButton","trim","publishText","privacy","className","isVisible","spoiler","fullHeight","style","display","onKeyDown","a","createElement","ref","suggestions","autoFocus","window","innerWidth","max","onClick","block","propTypes","object","isRequired","string","suggestion_token","list","bool","instanceOf","Date","func","defaultProps","303","CharacterCounter","__WEBPACK_IMPORTED_MODULE_5_stringz__","_React$PureComponent","checkRemainingText","diff","PureComponent","304","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__actions_compose__","__WEBPACK_IMPORTED_MODULE_2__selectors__","__WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__","getIn","onCancel","305","ReplyIndicator","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","__WEBPACK_IMPORTED_MODULE_7__components_avatar__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9__components_display_name__","__WEBPACK_IMPORTED_MODULE_10_react_intl__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__rtl__","cancel","handleClick","handleAccountClick","button","preventDefault","context","history","push","content","__html","direction","title","icon","href","size","dangerouslySetInnerHTML","contextTypes","map","306","AutosuggestTextarea","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__","__WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__rtl__","__WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__","__WEBPACK_IMPORTED_MODULE_13_classnames__","__WEBPACK_IMPORTED_MODULE_13_classnames___default","textAtCursorMatchesToken","str","caretPosition","word","left","slice","right","indexOf","toLowerCase","suggestionsHidden","selectedSuggestion","lastToken","_textAtCursorMatchesT","setState","_this$props","_this$state","key","Math","min","stopPropagation","defaultPrevented","onKeyUp","document","querySelector","parentElement","onBlur","onSuggestionClick","suggestion","currentTarget","getAttribute","setTextarea","clipboardData","files","renderSuggestion","i","inner","emoji","role","tabIndex","data-index","selected","onMouseDown","inputRef","aria-autocomplete","isEmpty","307","__WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__","getAccount","308","AutosuggestAccount","__WEBPACK_IMPORTED_MODULE_5__components_avatar__","__WEBPACK_IMPORTED_MODULE_6__components_display_name__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","309","process","AutosuggestEmoji","__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__","__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default","assetHost","env","CDN_HOST","url","custom","imageUrl","mapping","replace","filename","src","alt","colons","310","_extends","assign","source","hasOwnProperty","_inheritsLoose","subClass","superClass","create","constructor","__proto__","_objectWithoutProperties","excluded","sourceKeys","keys","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","calculateNodeHeight","uiTextNode","uid","useCache","minRows","maxRows","hiddenTextarea","parentNode","body","appendChild","nodeStyling","calculateNodeStyling","paddingSize","borderSize","boxSizing","sizingStyle","forEach","HIDDEN_TEXTAREA_STYLE","setProperty","minHeight","Infinity","maxHeight","height","scrollHeight","singleRowHeight","rowCount","floor","node","computedStyleCache","getComputedStyle","SIZING_STYLE","reduce","obj","getPropertyValue","isIE","width","parseFloat","nodeInfo","__WEBPACK_IMPORTED_MODULE_0_react__","__WEBPACK_IMPORTED_MODULE_0_react___default","__WEBPACK_IMPORTED_MODULE_1_prop_types__","isBrowser","documentElement","currentStyle","min-height","max-height","visibility","overflow","z-index","top","purgeCache","seed","noop","requestAnimationFrame","cancelAnimationFrame","setTimeout","clearTimeout","onNextFrame","clearNextFrameAction","TextareaAutosize","_React$Component","_resizeLock","_onRootDOMNode","_rootDOMNode","_onChange","event","_controlled","_resizeComponent","callback","nodeHeight","_uid","useCacheForDOMMeasurements","_proto","onHeightChange","componentDidMount","_this2","_resizeListener","addEventListener","_this3","_clearNextFrame","_onNextFrameActionId","prevState","componentWillUnmount","removeEventListener","Component","311","__WEBPACK_IMPORTED_MODULE_1__components_upload_button__","__WEBPACK_IMPORTED_MODULE_2__actions_compose__","mapStateToProps","some","m","resetFileKey","onSelectFile","312","UploadButton","_dec","__WEBPACK_IMPORTED_MODULE_5__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8_react_redux__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default","upload","acceptContentTypes","iconStyle","lineHeight","fileElement","click","setRef","inverted","multiple","accept","toArray","number","listOf","313","__WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default","Collapsable","children","defaultStyle","opacity","_ref2","314","__WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","marked","unmarked","label","active","ariaControls","315","TextIconButton","aria-label","aria-expanded","aria-controls","316","__WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__","__WEBPACK_IMPORTED_MODULE_3__actions_modal__","__WEBPACK_IMPORTED_MODULE_4__is_mobile__","isModalOpen","modalType","isUserTouching","onModalOpen","onModalClose","317","PrivacyDropdown","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__","__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default","__WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_10_detect_passive_events__","__WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default","__WEBPACK_IMPORTED_MODULE_11_classnames__","__WEBPACK_IMPORTED_MODULE_11_classnames___default","public_short","public_long","unlisted_short","unlisted_long","private_short","private_long","direct_short","direct_long","change_privacy","listenerOptions","hasSupport","passive","PrivacyDropdownMenu","handleDocumentClick","contains","onClose","items","scaleX","scaleY","damping","stiffness","transform","item","meta","_React$PureComponent2","_ret2","_len2","_key2","open","handleToggle","actions","options","option","handleModalActionClick","handleClose","componentWillMount","_props2","valueOption","find","expanded","show","placement","318","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_classnames__","__WEBPACK_IMPORTED_MODULE_6_classnames___default","__WEBPACK_IMPORTED_MODULE_7__components_icon_button__","__WEBPACK_IMPORTED_MODULE_8__actions_compose__","__WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_11_react_intl__","visible","SensitiveButton","scale","compose-form__sensitive-button--visible","319","__WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","__WEBPACK_IMPORTED_MODULE_3_reselect__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5__actions_emojis__","DEFAULTS","getFrequentlyUsedEmojis","emojiCounters","emojis","keySeq","sort","b","reverse","perLine","getCustomEmojis","filter","aShort","bShort","custom_emojis","skinTone","frequentlyUsedEmojis","onSkinTone","320","EmojiPickerDropdown","_class3","_class4","_temp4","_class5","__WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__","__WEBPACK_IMPORTED_MODULE_8_classnames__","__WEBPACK_IMPORTED_MODULE_8_classnames___default","__WEBPACK_IMPORTED_MODULE_9_detect_passive_events__","__WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default","__WEBPACK_IMPORTED_MODULE_10__emoji_emoji__","emoji_search","emoji_not_found","recent","search_results","people","nature","food","activity","travel","objects","symbols","flags","EmojiPicker","Emoji","backgroundImageFn","categoriesSort","ModifierPickerMenu","onSelect","attachListeners","removeListeners","set","sheetSize","skin","ModifierPicker","onOpen","handleSelect","modifier","EmojiPickerMenu","_React$PureComponent3","_temp3","_ret3","_len3","_key3","modifierOpen","getI18n","notfound","categories","foods","places","onPick","handleModifierOpen","handleModifierClose","handleModifierChange","loading","selecting","emojiSize","color","i18n","include","showPreview","emojiTooltip","_React$PureComponent4","_temp5","_this4","_ret4","_len4","_key4","dropdown","onShowDropdown","then","EmojiMart","Picker","catch","onHideDropdown","onToggle","setTargetRef","findTarget","_props3","_state","pulse-loading","321","__WEBPACK_IMPORTED_MODULE_1__components_upload_form__","mediaIds","322","UploadForm","__WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_8__containers_upload_container__","323","__WEBPACK_IMPORTED_MODULE_1__components_upload_progress__","progress","324","UploadProgress","__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default","325","__WEBPACK_IMPORTED_MODULE_1__components_upload__","onUndo","onDescriptionChange","description","onOpenFocalPoint","326","Upload","__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default","hovered","focused","dirtyDescription","handleUndoClick","handleFocalPointClick","handleInputChange","handleMouseEnter","handleMouseLeave","handleInputFocus","handleInputBlur","focusX","focusY","x","y","onMouseEnter","onMouseLeave","backgroundImage","backgroundPosition","maxLength","onFocus","327","__WEBPACK_IMPORTED_MODULE_3__components_warning__","__WEBPACK_IMPORTED_MODULE_4_react_intl__","__WEBPACK_IMPORTED_MODULE_5__initial_state__","APPROX_HASHTAG_RE","needsLockWarning","hashtagWarning","test","directMessageWarning","WarningWrapper","locked","328","Warning","329","countableText","inputText","__WEBPACK_IMPORTED_MODULE_0__url_regex__","urlPlaceholder","330","urlRegex","regexen","regexSupplant","regex","global","ignoreCase","multiline","RegExp","match","newRegex","stringSupplant","spaces_group","invalid_chars_group","punct","validUrlPrecedingChars","invalidDomainChars","validDomainChars","validSubdomain","validDomainName","validGTLD","validCCTLD","validPunycode","validSpecialCCTLD","validDomain","validPortNumber","pd","validGeneralUrlPathChars","validUrlBalancedParens","validUrlPathEndingChars","validUrlPath","validUrlQueryChars","validUrlQueryEndingChars","validUrl","331","__WEBPACK_IMPORTED_MODULE_1__components_compose_form__","accountId","checked","804","defineProperty","Compose","__WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__","__WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__","__WEBPACK_IMPORTED_MODULE_7_react_redux__","__WEBPACK_IMPORTED_MODULE_9_react_router_dom__","__WEBPACK_IMPORTED_MODULE_11__containers_search_container__","__WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__","start","home_timeline","notifications","public","community","preferences","logout","columns","multiColumn","header","to","column","data-method","843","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","unfollowConfirm","onFollow","onMuteNotifications","844","Account","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","hidingNotificationsButton","869","NavigationBar","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9__components_permalink__","870","Search","__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__","__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default","SearchPopout","extraInformation","handleClear","submitted","onClear","handleFocus","onShow","handleBlur","hasValue","951","__WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__","__WEBPACK_IMPORTED_MODULE_2__initial_state__","952","__WEBPACK_IMPORTED_MODULE_1__actions_search__","__WEBPACK_IMPORTED_MODULE_2__components_search__","953","__WEBPACK_IMPORTED_MODULE_1__components_search_results__","results","954","SearchResults","__WEBPACK_IMPORTED_MODULE_6_react_intl__","__WEBPACK_IMPORTED_MODULE_7__containers_account_container__","__WEBPACK_IMPORTED_MODULE_8__containers_status_container__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","accounts","statuses","hashtags","count","statusId","hashtag"],"mappings":"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","file":"features/compose.js","sourcesContent":["webpackJsonp([2],{\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 302:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ComposeForm; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__character_counter__ = __webpack_require__(303);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_button__ = __webpack_require__(99);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__ = __webpack_require__(304);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__ = __webpack_require__(306);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__ = __webpack_require__(311);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_collapsable__ = __webpack_require__(313);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__ = __webpack_require__(314);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__ = __webpack_require__(316);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__ = __webpack_require__(318);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__ = __webpack_require__(319);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__ = __webpack_require__(321);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__containers_warning_container__ = __webpack_require__(327);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__is_mobile__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22_stringz__ = __webpack_require__(98);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22_stringz___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_22_stringz__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__util_counter__ = __webpack_require__(329);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n placeholder: {\n 'id': 'compose_form.placeholder',\n 'defaultMessage': 'What is on your mind?'\n },\n spoiler_placeholder: {\n 'id': 'compose_form.spoiler_placeholder',\n 'defaultMessage': 'Write your warning here'\n },\n publish: {\n 'id': 'compose_form.publish',\n 'defaultMessage': 'Toot'\n },\n publishLoud: {\n 'id': 'compose_form.publish_loud',\n 'defaultMessage': '{publish}!'\n }\n});\n\nvar ComposeForm = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ComposeForm, _ImmutablePureCompone);\n\n function ComposeForm() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ComposeForm);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(e.target.value);\n }, _this.handleKeyDown = function (e) {\n if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n _this.handleSubmit();\n }\n }, _this.handleSubmit = function () {\n if (_this.props.text !== _this.autosuggestTextarea.textarea.value) {\n // Something changed the text inside the textarea (e.g. browser extensions like Grammarly)\n // Update the state to match the current text\n _this.props.onChange(_this.autosuggestTextarea.textarea.value);\n }\n\n _this.props.onSubmit();\n }, _this.onSuggestionsClearRequested = function () {\n _this.props.onClearSuggestions();\n }, _this.onSuggestionsFetchRequested = function (token) {\n _this.props.onFetchSuggestions(token);\n }, _this.onSuggestionSelected = function (tokenStart, token, value) {\n _this._restoreCaret = null;\n _this.props.onSuggestionSelected(tokenStart, token, value);\n }, _this.handleChangeSpoilerText = function (e) {\n _this.props.onChangeSpoilerText(e.target.value);\n }, _this.setAutosuggestTextarea = function (c) {\n _this.autosuggestTextarea = c;\n }, _this.handleEmojiPick = function (data) {\n var position = _this.autosuggestTextarea.textarea.selectionStart;\n var emojiChar = data.native;\n _this._restoreCaret = position + emojiChar.length + 1;\n _this.props.onPickEmoji(position, data);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ComposeForm.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n // If this is the update where we've finished uploading,\n // save the last caret position so we can restore it below!\n if (!nextProps.is_uploading && this.props.is_uploading) {\n this._restoreCaret = this.autosuggestTextarea.textarea.selectionStart;\n }\n };\n\n ComposeForm.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n // This statement does several things:\n // - If we're beginning a reply, and,\n // - Replying to zero or one users, places the cursor at the end of the textbox.\n // - Replying to more than one user, selects any usernames past the first;\n // this provides a convenient shortcut to drop everyone else from the conversation.\n // - If we've just finished uploading an image, and have a saved caret position,\n // restores the cursor to that position after the text changes!\n if (this.props.focusDate !== prevProps.focusDate || prevProps.is_uploading && !this.props.is_uploading && typeof this._restoreCaret === 'number') {\n var selectionEnd = void 0,\n selectionStart = void 0;\n\n if (this.props.preselectDate !== prevProps.preselectDate) {\n selectionEnd = this.props.text.length;\n selectionStart = this.props.text.search(/\\s/) + 1;\n } else if (typeof this._restoreCaret === 'number') {\n selectionStart = this._restoreCaret;\n selectionEnd = this._restoreCaret;\n } else {\n selectionEnd = this.props.text.length;\n selectionStart = selectionEnd;\n }\n\n this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);\n this.autosuggestTextarea.textarea.focus();\n } else if (prevProps.is_submitting && !this.props.is_submitting) {\n this.autosuggestTextarea.textarea.focus();\n }\n };\n\n ComposeForm.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n onPaste = _props.onPaste,\n showSearch = _props.showSearch,\n anyMedia = _props.anyMedia;\n\n var disabled = this.props.is_submitting;\n var text = [this.props.spoiler_text, Object(__WEBPACK_IMPORTED_MODULE_23__util_counter__[\"a\" /* countableText */])(this.props.text)].join('');\n var disabledButton = disabled || this.props.is_uploading || Object(__WEBPACK_IMPORTED_MODULE_22_stringz__[\"length\"])(text) > __WEBPACK_IMPORTED_MODULE_24__initial_state__[\"c\" /* charLimit */] || text.length !== 0 && text.trim().length === 0 && !anyMedia;\n var publishText = '';\n\n if (this.props.privacy === 'private' || this.props.privacy === 'direct') {\n publishText = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'compose-form__publish-private'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n }), ' ', intl.formatMessage(messages.publish));\n } else {\n publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_19__containers_warning_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_collapsable__[\"a\" /* default */], {\n isVisible: this.props.spoiler,\n fullHeight: 50\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'spoiler-input'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.spoiler_placeholder)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n placeholder: intl.formatMessage(messages.spoiler_placeholder),\n value: this.props.spoiler_text,\n onChange: this.handleChangeSpoilerText,\n onKeyDown: this.handleKeyDown,\n type: 'text',\n className: 'spoiler-input__input',\n id: 'cw-spoiler-input'\n })))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__autosuggest-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__[\"a\" /* default */], {\n ref: this.setAutosuggestTextarea,\n placeholder: intl.formatMessage(messages.placeholder),\n disabled: disabled,\n value: this.props.text,\n onChange: this.handleChange,\n suggestions: this.props.suggestions,\n onKeyDown: this.handleKeyDown,\n onSuggestionsFetchRequested: this.onSuggestionsFetchRequested,\n onSuggestionsClearRequested: this.onSuggestionsClearRequested,\n onSuggestionSelected: this.onSuggestionSelected,\n onPaste: onPaste,\n autoFocus: !showSearch && !Object(__WEBPACK_IMPORTED_MODULE_20__is_mobile__[\"b\" /* isMobile */])(window.innerWidth)\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__[\"a\" /* default */], {\n onPickEmoji: this.handleEmojiPick\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__modifiers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__buttons-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__buttons'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'character-counter__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__character_counter__[\"a\" /* default */], {\n max: __WEBPACK_IMPORTED_MODULE_24__initial_state__[\"c\" /* charLimit */],\n text: text\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__publish'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__publish-button-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_button__[\"a\" /* default */], {\n text: publishText,\n onClick: this.handleSubmit,\n disabled: disabledButton,\n block: true\n }))));\n };\n\n return ComposeForm;\n}(__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default.a), _class2.propTypes = {\n intl: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object.isRequired,\n text: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string.isRequired,\n suggestion_token: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n suggestions: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n spoiler: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n privacy: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n spoiler_text: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n focusDate: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.instanceOf(Date),\n preselectDate: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.instanceOf(Date),\n is_submitting: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n is_uploading: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n onChange: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onSubmit: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onClearSuggestions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onFetchSuggestions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onSuggestionSelected: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onChangeSpoilerText: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onPaste: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onPickEmoji: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n showSearch: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n anyMedia: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool\n}, _class2.defaultProps = {\n showSearch: false\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 303:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return CharacterCounter; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_stringz__ = __webpack_require__(98);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_stringz___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_stringz__);\n\n\n\n\n\n\n\n\nvar CharacterCounter = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(CharacterCounter, _React$PureComponent);\n\n function CharacterCounter() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, CharacterCounter);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n CharacterCounter.prototype.checkRemainingText = function checkRemainingText(diff) {\n if (diff < 0) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'character-counter character-counter--over'\n }, void 0, diff);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'character-counter'\n }, void 0, diff);\n };\n\n CharacterCounter.prototype.render = function render() {\n var diff = this.props.max - Object(__WEBPACK_IMPORTED_MODULE_5_stringz__[\"length\"])(this.props.text);\n return this.checkRemainingText(diff);\n };\n\n return CharacterCounter;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 304:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__ = __webpack_require__(305);\n\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_2__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state) {\n return {\n status: getStatus(state, state.getIn(['compose', 'in_reply_to']))\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onCancel: function onCancel() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_compose__[\"E\" /* cancelReplyCompose */])());\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 305:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ReplyIndicator; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__rtl__ = __webpack_require__(97);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n cancel: {\n 'id': 'reply_indicator.cancel',\n 'defaultMessage': 'Cancel'\n }\n});\n\nvar ReplyIndicator = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ReplyIndicator, _ImmutablePureCompone);\n\n function ReplyIndicator() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ReplyIndicator);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onCancel();\n }, _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.status.getIn(['account', 'id']));\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ReplyIndicator.prototype.render = function render() {\n var _props = this.props,\n status = _props.status,\n intl = _props.intl;\n\n\n if (!status) {\n return null;\n }\n\n var content = { __html: status.get('contentHtml') };\n var style = {\n direction: Object(__WEBPACK_IMPORTED_MODULE_12__rtl__[\"a\" /* isRtl */])(status.get('search_index')) ? 'rtl' : 'ltr'\n };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator__header'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator__cancel'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.cancel),\n icon: 'times',\n onClick: this.handleClick\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: status.getIn(['account', 'url']),\n onClick: this.handleAccountClick,\n className: 'reply-indicator__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n account: status.get('account'),\n size: 24\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_display_name__[\"a\" /* default */], {\n account: status.get('account')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator__content',\n style: style,\n dangerouslySetInnerHTML: content\n }));\n };\n\n return ReplyIndicator;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _class2.propTypes = {\n status: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onCancel: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 306:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestTextarea; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__ = __webpack_require__(307);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__ = __webpack_require__(309);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__rtl__ = __webpack_require__(97);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__ = __webpack_require__(310);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_classnames__);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar textAtCursorMatchesToken = function textAtCursorMatchesToken(str, caretPosition) {\n var word = void 0;\n\n var left = str.slice(0, caretPosition).search(/\\S+$/);\n var right = str.slice(caretPosition).search(/\\s/);\n\n if (right < 0) {\n word = str.slice(left);\n } else {\n word = str.slice(left, right + caretPosition);\n }\n\n if (!word || word.trim().length < 3 || ['@', ':', '#'].indexOf(word[0]) === -1) {\n return [null, null];\n }\n\n word = word.trim().toLowerCase();\n\n if (word.length > 0) {\n return [left + 1, word];\n } else {\n return [null, null];\n }\n};\n\nvar AutosuggestTextarea = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(AutosuggestTextarea, _ImmutablePureCompone);\n\n function AutosuggestTextarea() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestTextarea);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n suggestionsHidden: false,\n selectedSuggestion: 0,\n lastToken: null,\n tokenStart: 0\n }, _this.onChange = function (e) {\n var _textAtCursorMatchesT = textAtCursorMatchesToken(e.target.value, e.target.selectionStart),\n tokenStart = _textAtCursorMatchesT[0],\n token = _textAtCursorMatchesT[1];\n\n if (token !== null && _this.state.lastToken !== token) {\n _this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart: tokenStart });\n _this.props.onSuggestionsFetchRequested(token);\n } else if (token === null) {\n _this.setState({ lastToken: null });\n _this.props.onSuggestionsClearRequested();\n }\n\n _this.props.onChange(e);\n }, _this.onKeyDown = function (e) {\n var _this$props = _this.props,\n suggestions = _this$props.suggestions,\n disabled = _this$props.disabled;\n var _this$state = _this.state,\n selectedSuggestion = _this$state.selectedSuggestion,\n suggestionsHidden = _this$state.suggestionsHidden;\n\n\n if (disabled) {\n e.preventDefault();\n return;\n }\n\n switch (e.key) {\n case 'Escape':\n if (!suggestionsHidden) {\n e.preventDefault();\n _this.setState({ suggestionsHidden: true });\n }\n\n break;\n case 'ArrowDown':\n if (suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n _this.setState({ selectedSuggestion: Math.min(selectedSuggestion + 1, suggestions.size - 1) });\n }\n\n break;\n case 'ArrowUp':\n if (suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n _this.setState({ selectedSuggestion: Math.max(selectedSuggestion - 1, 0) });\n }\n\n break;\n case 'Enter':\n case 'Tab':\n // Select suggestion\n if (_this.state.lastToken !== null && suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n e.stopPropagation();\n _this.props.onSuggestionSelected(_this.state.tokenStart, _this.state.lastToken, suggestions.get(selectedSuggestion));\n }\n\n break;\n }\n\n if (e.defaultPrevented || !_this.props.onKeyDown) {\n return;\n }\n\n _this.props.onKeyDown(e);\n }, _this.onKeyUp = function (e) {\n if (e.key === 'Escape' && _this.state.suggestionsHidden) {\n document.querySelector('.ui').parentElement.focus();\n }\n\n if (_this.props.onKeyUp) {\n _this.props.onKeyUp(e);\n }\n }, _this.onBlur = function () {\n _this.setState({ suggestionsHidden: true });\n }, _this.onSuggestionClick = function (e) {\n var suggestion = _this.props.suggestions.get(e.currentTarget.getAttribute('data-index'));\n e.preventDefault();\n _this.props.onSuggestionSelected(_this.state.tokenStart, _this.state.lastToken, suggestion);\n _this.textarea.focus();\n }, _this.setTextarea = function (c) {\n _this.textarea = c;\n }, _this.onPaste = function (e) {\n if (e.clipboardData && e.clipboardData.files.length === 1) {\n _this.props.onPaste(e.clipboardData.files);\n e.preventDefault();\n }\n }, _this.renderSuggestion = function (suggestion, i) {\n var selectedSuggestion = _this.state.selectedSuggestion;\n\n var inner = void 0,\n key = void 0;\n\n if ((typeof suggestion === 'undefined' ? 'undefined' : __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default()(suggestion)) === 'object') {\n inner = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__[\"a\" /* default */], {\n emoji: suggestion\n });\n key = suggestion.id;\n } else if (suggestion[0] === '#') {\n inner = suggestion;\n key = suggestion;\n } else {\n inner = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__[\"a\" /* default */], {\n id: suggestion\n });\n key = suggestion;\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n 'data-index': i,\n className: __WEBPACK_IMPORTED_MODULE_13_classnames___default()('autosuggest-textarea__suggestions__item', { selected: i === selectedSuggestion }),\n onMouseDown: _this.onSuggestionClick\n }, key, inner);\n }, _temp), __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n AutosuggestTextarea.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.suggestions !== this.props.suggestions && nextProps.suggestions.size > 0 && this.state.suggestionsHidden) {\n this.setState({ suggestionsHidden: false });\n }\n };\n\n AutosuggestTextarea.prototype.render = function render() {\n var _props = this.props,\n value = _props.value,\n suggestions = _props.suggestions,\n disabled = _props.disabled,\n placeholder = _props.placeholder,\n autoFocus = _props.autoFocus;\n var suggestionsHidden = this.state.suggestionsHidden;\n\n var style = { direction: 'ltr' };\n\n if (Object(__WEBPACK_IMPORTED_MODULE_10__rtl__[\"a\" /* isRtl */])(value)) {\n style.direction = 'rtl';\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-textarea'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, placeholder), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__[\"a\" /* default */], {\n inputRef: this.setTextarea,\n className: 'autosuggest-textarea__textarea',\n disabled: disabled,\n placeholder: placeholder,\n autoFocus: autoFocus,\n value: value,\n onChange: this.onChange,\n onKeyDown: this.onKeyDown,\n onKeyUp: this.onKeyUp,\n onBlur: this.onBlur,\n onPaste: this.onPaste,\n style: style,\n 'aria-autocomplete': 'list'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-textarea__suggestions ' + (suggestionsHidden || suggestions.isEmpty() ? '' : 'autosuggest-textarea__suggestions--visible')\n }, void 0, suggestions.map(this.renderSuggestion)));\n };\n\n return AutosuggestTextarea;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n value: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n suggestions: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list,\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n placeholder: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onSuggestionSelected: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n onSuggestionsClearRequested: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n onSuggestionsFetchRequested: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n onChange: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n onKeyUp: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onKeyDown: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onPaste: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n autoFocus: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool\n}, _class.defaultProps = {\n autoFocus: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 307:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__ = __webpack_require__(308);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__selectors__ = __webpack_require__(66);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_2__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var id = _ref.id;\n return {\n account: getAccount(state, id)\n };\n };\n\n return mapStateToProps;\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 308:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestAccount; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\nvar AutosuggestAccount = (_temp = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AutosuggestAccount, _ImmutablePureCompone);\n\n function AutosuggestAccount() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestAccount);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n AutosuggestAccount.prototype.render = function render() {\n var account = this.props.account;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-account-icon'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__components_avatar__[\"a\" /* default */], {\n account: account,\n size: 18\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_display_name__[\"a\" /* default */], {\n account: account\n }));\n };\n\n return AutosuggestAccount;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.map.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 309:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestEmoji; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__ = __webpack_require__(156);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__);\n\n\n\n\n\n\n\n\nvar assetHost = process.env.CDN_HOST || '';\n\nvar AutosuggestEmoji = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AutosuggestEmoji, _React$PureComponent);\n\n function AutosuggestEmoji() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestEmoji);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n AutosuggestEmoji.prototype.render = function render() {\n var emoji = this.props.emoji;\n\n var url = void 0;\n\n if (emoji.custom) {\n url = emoji.imageUrl;\n } else {\n var mapping = __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default.a[emoji.native] || __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default.a[emoji.native.replace(/\\uFE0F$/, '')];\n\n if (!mapping) {\n return null;\n }\n\n url = assetHost + '/emoji/' + mapping.filename + '.svg';\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-emoji'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n className: 'emojione',\n src: url,\n alt: emoji.native || emoji.colons\n }), emoji.colons);\n };\n\n return AutosuggestEmoji;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(36)))\n\n/***/ }),\n\n/***/ 310:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);\n\n\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nvar isIE = isBrowser ? !!document.documentElement.currentStyle : false;\nvar hiddenTextarea = isBrowser && document.createElement('textarea');\nvar HIDDEN_TEXTAREA_STYLE = {\n 'min-height': '0',\n 'max-height': 'none',\n height: '0',\n visibility: 'hidden',\n overflow: 'hidden',\n position: 'absolute',\n 'z-index': '-1000',\n top: '0',\n right: '0'\n};\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'font-family', 'font-weight', 'font-size', 'font-style', 'tab-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', 'box-sizing'];\nvar computedStyleCache = {};\nfunction calculateNodeHeight(uiTextNode, uid, useCache, minRows, maxRows) {\n if (useCache === void 0) {\n useCache = false;\n }\n\n if (minRows === void 0) {\n minRows = null;\n }\n\n if (maxRows === void 0) {\n maxRows = null;\n }\n\n if (hiddenTextarea.parentNode === null) {\n document.body.appendChild(hiddenTextarea);\n } // Copy all CSS properties that have an impact on the height of the content in\n // the textbox\n\n\n var nodeStyling = calculateNodeStyling(uiTextNode, uid, useCache);\n\n if (nodeStyling === null) {\n return null;\n }\n\n var paddingSize = nodeStyling.paddingSize,\n borderSize = nodeStyling.borderSize,\n boxSizing = nodeStyling.boxSizing,\n sizingStyle = nodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n // text-lines will not calculated properly as the shadow will technically be\n // narrower for content\n\n Object.keys(sizingStyle).forEach(function (key) {\n hiddenTextarea.style[key] = sizingStyle[key];\n });\n Object.keys(HIDDEN_TEXTAREA_STYLE).forEach(function (key) {\n hiddenTextarea.style.setProperty(key, HIDDEN_TEXTAREA_STYLE[key], 'important');\n });\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || 'x';\n var minHeight = -Infinity;\n var maxHeight = Infinity;\n var height = hiddenTextarea.scrollHeight;\n\n if (boxSizing === 'border-box') {\n // border-box: add border, since height = content + padding + border\n height = height + borderSize;\n } else if (boxSizing === 'content-box') {\n // remove padding, since height = content\n height = height - paddingSize;\n } // measure height of a textarea with a single row\n\n\n hiddenTextarea.value = 'x';\n var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n if (minRows !== null || maxRows !== null) {\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows;\n\n if (boxSizing === 'border-box') {\n minHeight = minHeight + paddingSize + borderSize;\n }\n\n height = Math.max(minHeight, height);\n }\n\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows;\n\n if (boxSizing === 'border-box') {\n maxHeight = maxHeight + paddingSize + borderSize;\n }\n\n height = Math.min(maxHeight, height);\n }\n }\n\n var rowCount = Math.floor(height / singleRowHeight);\n return {\n height: height,\n minHeight: minHeight,\n maxHeight: maxHeight,\n rowCount: rowCount\n };\n}\n\nfunction calculateNodeStyling(node, uid, useCache) {\n if (useCache === void 0) {\n useCache = false;\n }\n\n if (useCache && computedStyleCache[uid]) {\n return computedStyleCache[uid];\n }\n\n var style = window.getComputedStyle(node);\n\n if (style === null) {\n return null;\n }\n\n var sizingStyle = SIZING_STYLE.reduce(function (obj, name) {\n obj[name] = style.getPropertyValue(name);\n return obj;\n }, {});\n var boxSizing = sizingStyle['box-sizing']; // IE (Edge has already correct behaviour) returns content width as computed width\n // so we need to add manually padding and border widths\n\n if (isIE && boxSizing === 'border-box') {\n sizingStyle.width = parseFloat(sizingStyle.width) + parseFloat(style['border-right-width']) + parseFloat(style['border-left-width']) + parseFloat(style['padding-right']) + parseFloat(style['padding-left']) + 'px';\n }\n\n var paddingSize = parseFloat(sizingStyle['padding-bottom']) + parseFloat(sizingStyle['padding-top']);\n var borderSize = parseFloat(sizingStyle['border-bottom-width']) + parseFloat(sizingStyle['border-top-width']);\n var nodeInfo = {\n sizingStyle: sizingStyle,\n paddingSize: paddingSize,\n borderSize: borderSize,\n boxSizing: boxSizing\n };\n\n if (useCache) {\n computedStyleCache[uid] = nodeInfo;\n }\n\n return nodeInfo;\n}\n\nvar purgeCache = function purgeCache(uid) {\n return delete computedStyleCache[uid];\n};\n\nfunction autoInc(seed) {\n if (seed === void 0) {\n seed = 0;\n }\n\n return function () {\n return ++seed;\n };\n}\n\nvar uid = autoInc();\n\n/**\n * <TextareaAutosize />\n */\nvar noop = function noop() {}; // IE11 has a problem with eval source maps, can be reproduced with:\n// eval('\"use strict\"; var onNextFrame = window.cancelAnimationFrame; onNextFrame(4);')\n// so we bind window as context in dev modes\n\n\nvar _ref = isBrowser && window.requestAnimationFrame ? true ? [window.requestAnimationFrame, window.cancelAnimationFrame] : [window.requestAnimationFrame.bind(window), window.cancelAnimationFrame.bind(window)] : [setTimeout, clearTimeout];\nvar onNextFrame = _ref[0];\nvar clearNextFrameAction = _ref[1];\n\nvar TextareaAutosize =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(TextareaAutosize, _React$Component);\n\n function TextareaAutosize(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n _this._resizeLock = false;\n\n _this._onRootDOMNode = function (node) {\n _this._rootDOMNode = node;\n\n if (_this.props.inputRef) {\n _this.props.inputRef(node);\n }\n };\n\n _this._onChange = function (event) {\n if (!_this._controlled) {\n _this._resizeComponent();\n }\n\n _this.props.onChange(event);\n };\n\n _this._resizeComponent = function (callback) {\n if (callback === void 0) {\n callback = noop;\n }\n\n if (typeof _this._rootDOMNode === 'undefined') {\n callback();\n return;\n }\n\n var nodeHeight = calculateNodeHeight(_this._rootDOMNode, _this._uid, _this.props.useCacheForDOMMeasurements, _this.props.minRows, _this.props.maxRows);\n\n if (nodeHeight === null) {\n callback();\n return;\n }\n\n var height = nodeHeight.height,\n minHeight = nodeHeight.minHeight,\n maxHeight = nodeHeight.maxHeight,\n rowCount = nodeHeight.rowCount;\n _this.rowCount = rowCount;\n\n if (_this.state.height !== height || _this.state.minHeight !== minHeight || _this.state.maxHeight !== maxHeight) {\n _this.setState({\n height: height,\n minHeight: minHeight,\n maxHeight: maxHeight\n }, callback);\n\n return;\n }\n\n callback();\n };\n\n _this.state = {\n height: props.style && props.style.height || 0,\n minHeight: -Infinity,\n maxHeight: Infinity\n };\n _this._uid = uid();\n _this._controlled = typeof props.value === 'string';\n return _this;\n }\n\n var _proto = TextareaAutosize.prototype;\n\n _proto.render = function render() {\n var _props = this.props,\n _minRows = _props.minRows,\n _maxRows = _props.maxRows,\n _onHeightChange = _props.onHeightChange,\n _useCacheForDOMMeasurements = _props.useCacheForDOMMeasurements,\n _inputRef = _props.inputRef,\n props = _objectWithoutProperties(_props, [\"minRows\", \"maxRows\", \"onHeightChange\", \"useCacheForDOMMeasurements\", \"inputRef\"]);\n props.style = _extends({}, props.style, {\n height: this.state.height\n });\n var maxHeight = Math.max(props.style.maxHeight || Infinity, this.state.maxHeight);\n\n if (maxHeight < this.state.height) {\n props.style.overflow = 'hidden';\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement(\"textarea\", _extends({}, props, {\n onChange: this._onChange,\n ref: this._onRootDOMNode\n }));\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n this._resizeComponent(); // Working around Firefox bug which runs resize listeners even when other JS is running at the same moment\n // causing competing rerenders (due to setState in the listener) in React.\n // More can be found here - facebook/react#6324\n\n\n this._resizeListener = function () {\n if (_this2._resizeLock) {\n return;\n }\n\n _this2._resizeLock = true;\n\n _this2._resizeComponent(function () {\n return _this2._resizeLock = false;\n });\n };\n\n window.addEventListener('resize', this._resizeListener);\n };\n\n _proto.componentWillReceiveProps = function componentWillReceiveProps() {\n var _this3 = this;\n\n this._clearNextFrame();\n\n this._onNextFrameActionId = onNextFrame(function () {\n return _this3._resizeComponent();\n });\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (this.state.height !== prevState.height) {\n this.props.onHeightChange(this.state.height, this);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this._clearNextFrame();\n\n window.removeEventListener('resize', this._resizeListener);\n purgeCache(this._uid);\n };\n\n _proto._clearNextFrame = function _clearNextFrame() {\n clearNextFrameAction(this._onNextFrameActionId);\n };\n\n return TextareaAutosize;\n}(__WEBPACK_IMPORTED_MODULE_0_react___default.a.Component);\n\nTextareaAutosize.defaultProps = {\n onChange: noop,\n onHeightChange: noop,\n useCacheForDOMMeasurements: false\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (TextareaAutosize);\n\n/***/ }),\n\n/***/ 311:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_button__ = __webpack_require__(312);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n disabled: state.getIn(['compose', 'is_uploading']) || state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(function (m) {\n return m.get('type') === 'video';\n }),\n resetFileKey: state.getIn(['compose', 'resetFileKey'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onSelectFile: function onSelectFile(files) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Z\" /* uploadCompose */])(files));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_button__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 312:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n upload: {\n 'id': 'upload_button.label',\n 'defaultMessage': 'Add media'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var mapStateToProps = function mapStateToProps(state) {\n return {\n acceptContentTypes: state.getIn(['media_attachments', 'accept_content_types'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar iconStyle = {\n height: null,\n lineHeight: '27px'\n};\n\nvar UploadButton = (_dec = Object(__WEBPACK_IMPORTED_MODULE_8_react_redux__[\"connect\"])(makeMapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadButton, _ImmutablePureCompone);\n\n function UploadButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleChange = function (e) {\n if (e.target.files.length > 0) {\n _this.props.onSelectFile(e.target.files);\n }\n }, _this.handleClick = function () {\n _this.fileElement.click();\n }, _this.setRef = function (c) {\n _this.fileElement = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n UploadButton.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n resetFileKey = _props.resetFileKey,\n disabled = _props.disabled,\n acceptContentTypes = _props.acceptContentTypes;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__upload-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__components_icon_button__[\"a\" /* default */], {\n icon: 'camera',\n title: intl.formatMessage(messages.upload),\n disabled: disabled,\n onClick: this.handleClick,\n className: 'compose-form__upload-button-icon',\n size: 18,\n inverted: true,\n style: iconStyle\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.upload)), __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement('input', {\n key: resetFileKey,\n ref: this.setRef,\n type: 'file',\n multiple: false,\n accept: acceptContentTypes.toArray().join(','),\n onChange: this.handleChange,\n disabled: disabled,\n style: { display: 'none' }\n })));\n };\n\n return UploadButton;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool,\n onSelectFile: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n style: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object,\n resetFileKey: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.number,\n acceptContentTypes: __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default.a.listOf(__WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string).isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 313:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__);\n\n\n\n\n\n\nvar Collapsable = function Collapsable(_ref) {\n var fullHeight = _ref.fullHeight,\n isVisible = _ref.isVisible,\n children = _ref.children;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { opacity: !isVisible ? 0 : 100, height: isVisible ? fullHeight : 0 },\n style: { opacity: __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default()(!isVisible ? 0 : 100), height: __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default()(!isVisible ? 0 : fullHeight) }\n }, void 0, function (_ref2) {\n var opacity = _ref2.opacity,\n height = _ref2.height;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n style: { height: height + 'px', overflow: 'hidden', opacity: opacity / 100, display: Math.floor(opacity) === 0 ? 'none' : 'block' }\n }, void 0, children);\n });\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Collapsable);\n\n/***/ }),\n\n/***/ 314:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__ = __webpack_require__(315);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n marked: {\n 'id': 'compose_form.spoiler.marked',\n 'defaultMessage': 'Text is hidden behind warning'\n },\n unmarked: {\n 'id': 'compose_form.spoiler.unmarked',\n 'defaultMessage': 'Text is not hidden'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n var intl = _ref.intl;\n return {\n label: 'CW',\n title: intl.formatMessage(state.getIn(['compose', 'spoiler']) ? messages.marked : messages.unmarked),\n active: state.getIn(['compose', 'spoiler']),\n ariaControls: 'cw-spoiler-input'\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onClick: function onClick() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"I\" /* changeComposeSpoilerness */])());\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 315:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return TextIconButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar TextIconButton = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(TextIconButton, _React$PureComponent);\n\n function TextIconButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, TextIconButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function (e) {\n e.preventDefault();\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n TextIconButton.prototype.render = function render() {\n var _props = this.props,\n label = _props.label,\n title = _props.title,\n active = _props.active,\n ariaControls = _props.ariaControls;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n title: title,\n 'aria-label': title,\n className: 'text-icon-button ' + (active ? 'active' : ''),\n 'aria-expanded': active,\n onClick: this.handleClick,\n 'aria-controls': ariaControls\n }, void 0, label);\n };\n\n return TextIconButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 316:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__ = __webpack_require__(317);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n isModalOpen: state.get('modal').modalType === 'ACTIONS',\n value: state.getIn(['compose', 'privacy'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(value) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"J\" /* changeComposeVisibility */])(value));\n },\n\n\n isUserTouching: __WEBPACK_IMPORTED_MODULE_4__is_mobile__[\"c\" /* isUserTouching */],\n onModalOpen: function onModalOpen(props) {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"d\" /* openModal */])('ACTIONS', props));\n },\n onModalClose: function onModalClose() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"c\" /* closeModal */])());\n }\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 317:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return PrivacyDropdown; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__ = __webpack_require__(96);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_detect_passive_events__ = __webpack_require__(46);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_detect_passive_events__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__);\n\n\n\n\n\nvar _class2;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n public_short: {\n 'id': 'privacy.public.short',\n 'defaultMessage': 'Public'\n },\n public_long: {\n 'id': 'privacy.public.long',\n 'defaultMessage': 'Post to public timelines'\n },\n unlisted_short: {\n 'id': 'privacy.unlisted.short',\n 'defaultMessage': 'Unlisted'\n },\n unlisted_long: {\n 'id': 'privacy.unlisted.long',\n 'defaultMessage': 'Do not show in public timelines'\n },\n private_short: {\n 'id': 'privacy.private.short',\n 'defaultMessage': 'Followers-only'\n },\n private_long: {\n 'id': 'privacy.private.long',\n 'defaultMessage': 'Post to followers only'\n },\n direct_short: {\n 'id': 'privacy.direct.short',\n 'defaultMessage': 'Direct'\n },\n direct_long: {\n 'id': 'privacy.direct.long',\n 'defaultMessage': 'Post to mentioned users only'\n },\n change_privacy: {\n 'id': 'privacy.change',\n 'defaultMessage': 'Adjust status privacy'\n }\n});\n\nvar listenerOptions = __WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default.a.hasSupport ? { passive: true } : false;\n\nvar PrivacyDropdownMenu = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PrivacyDropdownMenu, _React$PureComponent);\n\n function PrivacyDropdownMenu() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PrivacyDropdownMenu);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleDocumentClick = function (e) {\n if (_this.node && !_this.node.contains(e.target)) {\n _this.props.onClose();\n }\n }, _this.handleClick = function (e) {\n if (e.key === 'Escape') {\n _this.props.onClose();\n } else if (!e.key || e.key === 'Enter') {\n var value = e.currentTarget.getAttribute('data-index');\n\n e.preventDefault();\n\n _this.props.onClose();\n _this.props.onChange(value);\n }\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n PrivacyDropdownMenu.prototype.componentDidMount = function componentDidMount() {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n PrivacyDropdownMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n PrivacyDropdownMenu.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n style = _props.style,\n items = _props.items,\n value = _props.value;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n style: { opacity: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n }, void 0, function (_ref) {\n var opacity = _ref.opacity,\n scaleX = _ref.scaleX,\n scaleY = _ref.scaleY;\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: 'privacy-dropdown__dropdown', style: Object.assign({}, style, { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }), ref: _this2.setRef },\n items.map(function (item) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n 'data-index': item.value,\n onKeyDown: _this2.handleClick,\n onClick: _this2.handleClick,\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown__option', { active: item.value === value })\n }, item.value, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'privacy-dropdown__option__icon'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + item.icon\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'privacy-dropdown__option__content'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, item.text), item.meta));\n })\n );\n });\n };\n\n return PrivacyDropdownMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar PrivacyDropdown = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class2 = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PrivacyDropdown, _React$PureComponent2);\n\n function PrivacyDropdown() {\n var _temp2, _this3, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PrivacyDropdown);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this3 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this3), _this3.state = {\n open: false\n }, _this3.handleToggle = function () {\n if (_this3.props.isUserTouching()) {\n if (_this3.state.open) {\n _this3.props.onModalClose();\n } else {\n _this3.props.onModalOpen({\n actions: _this3.options.map(function (option) {\n return Object.assign({}, option, { active: option.value === _this3.props.value });\n }),\n onClick: _this3.handleModalActionClick\n });\n }\n } else {\n _this3.setState({ open: !_this3.state.open });\n }\n }, _this3.handleModalActionClick = function (e) {\n e.preventDefault();\n\n var value = _this3.options[e.currentTarget.getAttribute('data-index')].value;\n\n _this3.props.onModalClose();\n _this3.props.onChange(value);\n }, _this3.handleKeyDown = function (e) {\n switch (e.key) {\n case 'Enter':\n _this3.handleToggle();\n break;\n case 'Escape':\n _this3.handleClose();\n break;\n }\n }, _this3.handleClose = function () {\n _this3.setState({ open: false });\n }, _this3.handleChange = function (value) {\n _this3.props.onChange(value);\n }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this3, _ret2);\n }\n\n PrivacyDropdown.prototype.componentWillMount = function componentWillMount() {\n var formatMessage = this.props.intl.formatMessage;\n\n\n this.options = [{ icon: 'globe', value: 'public', text: formatMessage(messages.public_short), meta: formatMessage(messages.public_long) }, { icon: 'unlock-alt', value: 'unlisted', text: formatMessage(messages.unlisted_short), meta: formatMessage(messages.unlisted_long) }, { icon: 'lock', value: 'private', text: formatMessage(messages.private_short), meta: formatMessage(messages.private_long) }, { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) }];\n };\n\n PrivacyDropdown.prototype.render = function render() {\n var _props2 = this.props,\n value = _props2.value,\n intl = _props2.intl;\n var open = this.state.open;\n\n\n var valueOption = this.options.find(function (item) {\n return item.value === value;\n });\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown', { active: open }),\n onKeyDown: this.handleKeyDown\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown__value', { active: this.options.indexOf(valueOption) === 0 })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n className: 'privacy-dropdown__value-icon',\n icon: valueOption.icon,\n title: intl.formatMessage(messages.change_privacy),\n size: 18,\n expanded: open,\n active: open,\n inverted: true,\n onClick: this.handleToggle,\n style: { height: null, lineHeight: '27px' }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default.a, {\n show: open,\n placement: 'bottom',\n target: this\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(PrivacyDropdownMenu, {\n items: this.options,\n value: value,\n onClose: this.handleClose,\n onChange: this.handleChange\n })));\n };\n\n return PrivacyDropdown;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 318:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n marked: {\n 'id': 'compose_form.sensitive.marked',\n 'defaultMessage': 'Media is marked as sensitive'\n },\n unmarked: {\n 'id': 'compose_form.sensitive.unmarked',\n 'defaultMessage': 'Media is not marked as sensitive'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n visible: state.getIn(['compose', 'media_attachments']).size > 0,\n active: state.getIn(['compose', 'sensitive']),\n disabled: state.getIn(['compose', 'spoiler'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onClick: function onClick() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"G\" /* changeComposeSensitivity */])());\n }\n };\n};\n\nvar SensitiveButton = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SensitiveButton, _React$PureComponent);\n\n function SensitiveButton() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SensitiveButton);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n SensitiveButton.prototype.render = function render() {\n var _props = this.props,\n visible = _props.visible,\n active = _props.active,\n disabled = _props.disabled,\n onClick = _props.onClick,\n intl = _props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { scale: 0.87 },\n style: { scale: __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default()(visible ? 1 : 0.87, { stiffness: 200, damping: 3 }) }\n }, void 0, function (_ref) {\n var scale = _ref.scale;\n\n var icon = active ? 'eye-slash' : 'eye';\n var className = __WEBPACK_IMPORTED_MODULE_6_classnames___default()('compose-form__sensitive-button', {\n 'compose-form__sensitive-button--visible': visible\n });\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: className,\n style: { transform: 'scale(' + scale + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_icon_button__[\"a\" /* default */], {\n className: 'compose-form__sensitive-button__icon',\n title: intl.formatMessage(active ? messages.marked : messages.unmarked),\n icon: icon,\n onClick: onClick,\n size: 18,\n active: active,\n disabled: disabled,\n style: { lineHeight: null, height: null },\n inverted: true\n }));\n });\n };\n\n return SensitiveButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(SensitiveButton)));\n\n/***/ }),\n\n/***/ 319:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__ = __webpack_require__(320);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(57);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_emojis__ = __webpack_require__(100);\n\n\n\n\n\n\n\nvar perLine = 8;\nvar lines = 2;\n\nvar DEFAULTS = ['+1', 'grinning', 'kissing_heart', 'heart_eyes', 'laughing', 'stuck_out_tongue_winking_eye', 'sweat_smile', 'joy', 'yum', 'disappointed', 'thinking_face', 'weary', 'sob', 'sunglasses', 'heart', 'ok_hand'];\n\nvar getFrequentlyUsedEmojis = Object(__WEBPACK_IMPORTED_MODULE_3_reselect__[\"createSelector\"])([function (state) {\n return state.getIn(['settings', 'frequentlyUsedEmojis'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n}], function (emojiCounters) {\n var emojis = emojiCounters.keySeq().sort(function (a, b) {\n return emojiCounters.get(a) - emojiCounters.get(b);\n }).reverse().slice(0, perLine * lines).toArray();\n\n if (emojis.length < DEFAULTS.length) {\n emojis = emojis.concat(DEFAULTS.slice(0, DEFAULTS.length - emojis.length));\n }\n\n return emojis;\n});\n\nvar getCustomEmojis = Object(__WEBPACK_IMPORTED_MODULE_3_reselect__[\"createSelector\"])([function (state) {\n return state.get('custom_emojis');\n}], function (emojis) {\n return emojis.filter(function (e) {\n return e.get('visible_in_picker');\n }).sort(function (a, b) {\n var aShort = a.get('shortcode').toLowerCase();\n var bShort = b.get('shortcode').toLowerCase();\n\n if (aShort < bShort) {\n return -1;\n } else if (aShort > bShort) {\n return 1;\n } else {\n return 0;\n }\n });\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n custom_emojis: getCustomEmojis(state),\n skinTone: state.getIn(['settings', 'skinTone']),\n frequentlyUsedEmojis: getFrequentlyUsedEmojis(state)\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var _onPickEmoji = _ref.onPickEmoji;\n return {\n onSkinTone: function onSkinTone(skinTone) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['skinTone'], skinTone));\n },\n\n onPickEmoji: function onPickEmoji(emoji) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_emojis__[\"b\" /* useEmoji */])(emoji));\n\n if (_onPickEmoji) {\n _onPickEmoji(emoji);\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 320:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return EmojiPickerDropdown; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__ = __webpack_require__(58);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__ = __webpack_require__(96);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_detect_passive_events__ = __webpack_require__(46);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_detect_passive_events__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__emoji_emoji__ = __webpack_require__(71);\n\n\n\n\n\nvar _class3, _class4, _temp4, _class5;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n emoji: {\n 'id': 'emoji_button.label',\n 'defaultMessage': 'Insert emoji'\n },\n emoji_search: {\n 'id': 'emoji_button.search',\n 'defaultMessage': 'Search...'\n },\n emoji_not_found: {\n 'id': 'emoji_button.not_found',\n 'defaultMessage': 'No emojos!! (\\u256F\\xB0\\u25A1\\xB0\\uFF09\\u256F\\uFE35 \\u253B\\u2501\\u253B'\n },\n custom: {\n 'id': 'emoji_button.custom',\n 'defaultMessage': 'Custom'\n },\n recent: {\n 'id': 'emoji_button.recent',\n 'defaultMessage': 'Frequently used'\n },\n search_results: {\n 'id': 'emoji_button.search_results',\n 'defaultMessage': 'Search results'\n },\n people: {\n 'id': 'emoji_button.people',\n 'defaultMessage': 'People'\n },\n nature: {\n 'id': 'emoji_button.nature',\n 'defaultMessage': 'Nature'\n },\n food: {\n 'id': 'emoji_button.food',\n 'defaultMessage': 'Food & Drink'\n },\n activity: {\n 'id': 'emoji_button.activity',\n 'defaultMessage': 'Activity'\n },\n travel: {\n 'id': 'emoji_button.travel',\n 'defaultMessage': 'Travel & Places'\n },\n objects: {\n 'id': 'emoji_button.objects',\n 'defaultMessage': 'Objects'\n },\n symbols: {\n 'id': 'emoji_button.symbols',\n 'defaultMessage': 'Symbols'\n },\n flags: {\n 'id': 'emoji_button.flags',\n 'defaultMessage': 'Flags'\n }\n});\n\nvar assetHost = process.env.CDN_HOST || '';\nvar EmojiPicker = void 0,\n Emoji = void 0; // load asynchronously\n\nvar backgroundImageFn = function backgroundImageFn() {\n return assetHost + '/emoji/sheet.png';\n};\nvar listenerOptions = __WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default.a.hasSupport ? { passive: true } : false;\n\nvar categoriesSort = ['recent', 'custom', 'people', 'nature', 'foods', 'activity', 'places', 'objects', 'symbols', 'flags'];\n\nvar ModifierPickerMenu = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ModifierPickerMenu, _React$PureComponent);\n\n function ModifierPickerMenu() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ModifierPickerMenu);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function (e) {\n _this.props.onSelect(e.currentTarget.getAttribute('data-index') * 1);\n }, _this.handleDocumentClick = function (e) {\n if (_this.node && !_this.node.contains(e.target)) {\n _this.props.onClose();\n }\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ModifierPickerMenu.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.active) {\n this.attachListeners();\n } else {\n this.removeListeners();\n }\n };\n\n ModifierPickerMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n this.removeListeners();\n };\n\n ModifierPickerMenu.prototype.attachListeners = function attachListeners() {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n ModifierPickerMenu.prototype.removeListeners = function removeListeners() {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n ModifierPickerMenu.prototype.render = function render() {\n var active = this.props.active;\n\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: 'emoji-picker-dropdown__modifiers__menu', style: { display: active ? 'block' : 'none' }, ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 1\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 1,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 2\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 2,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 3\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 3,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 4\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 4,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 5\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 5,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 6\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 6,\n backgroundImageFn: backgroundImageFn\n }))\n );\n };\n\n return ModifierPickerMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar ModifierPicker = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ModifierPicker, _React$PureComponent2);\n\n function ModifierPicker() {\n var _temp2, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ModifierPicker);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.handleClick = function () {\n if (_this2.props.active) {\n _this2.props.onClose();\n } else {\n _this2.props.onOpen();\n }\n }, _this2.handleSelect = function (modifier) {\n _this2.props.onChange(modifier);\n _this2.props.onClose();\n }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n ModifierPicker.prototype.render = function render() {\n var _props = this.props,\n active = _props.active,\n modifier = _props.modifier;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'emoji-picker-dropdown__modifiers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: modifier,\n onClick: this.handleClick,\n backgroundImageFn: backgroundImageFn\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(ModifierPickerMenu, {\n active: active,\n onSelect: this.handleSelect,\n onClose: this.props.onClose\n }));\n };\n\n return ModifierPicker;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar EmojiPickerMenu = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class3 = (_temp4 = _class4 = function (_React$PureComponent3) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(EmojiPickerMenu, _React$PureComponent3);\n\n function EmojiPickerMenu() {\n var _temp3, _this3, _ret3;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, EmojiPickerMenu);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent3.call.apply(_React$PureComponent3, [this].concat(args))), _this3), _this3.state = {\n modifierOpen: false\n }, _this3.handleDocumentClick = function (e) {\n if (_this3.node && !_this3.node.contains(e.target)) {\n _this3.props.onClose();\n }\n }, _this3.setRef = function (c) {\n _this3.node = c;\n }, _this3.getI18n = function () {\n var intl = _this3.props.intl;\n\n\n return {\n search: intl.formatMessage(messages.emoji_search),\n notfound: intl.formatMessage(messages.emoji_not_found),\n categories: {\n search: intl.formatMessage(messages.search_results),\n recent: intl.formatMessage(messages.recent),\n people: intl.formatMessage(messages.people),\n nature: intl.formatMessage(messages.nature),\n foods: intl.formatMessage(messages.food),\n activity: intl.formatMessage(messages.activity),\n places: intl.formatMessage(messages.travel),\n objects: intl.formatMessage(messages.objects),\n symbols: intl.formatMessage(messages.symbols),\n flags: intl.formatMessage(messages.flags),\n custom: intl.formatMessage(messages.custom)\n }\n };\n }, _this3.handleClick = function (emoji) {\n if (!emoji.native) {\n emoji.native = emoji.colons;\n }\n\n _this3.props.onClose();\n _this3.props.onPick(emoji);\n }, _this3.handleModifierOpen = function () {\n _this3.setState({ modifierOpen: true });\n }, _this3.handleModifierClose = function () {\n _this3.setState({ modifierOpen: false });\n }, _this3.handleModifierChange = function (modifier) {\n _this3.props.onSkinTone(modifier);\n }, _temp3), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this3, _ret3);\n }\n\n EmojiPickerMenu.prototype.componentDidMount = function componentDidMount() {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n EmojiPickerMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n EmojiPickerMenu.prototype.render = function render() {\n var _props2 = this.props,\n loading = _props2.loading,\n style = _props2.style,\n intl = _props2.intl,\n custom_emojis = _props2.custom_emojis,\n skinTone = _props2.skinTone,\n frequentlyUsedEmojis = _props2.frequentlyUsedEmojis;\n\n\n if (loading) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n style: { width: 299 }\n });\n }\n\n var title = intl.formatMessage(messages.emoji);\n var modifierOpen = this.state.modifierOpen;\n\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('emoji-picker-dropdown__menu', { selecting: modifierOpen }), style: style, ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(EmojiPicker, {\n perLine: 8,\n emojiSize: 22,\n sheetSize: 32,\n custom: Object(__WEBPACK_IMPORTED_MODULE_10__emoji_emoji__[\"buildCustomEmojis\"])(custom_emojis),\n color: '',\n emoji: '',\n set: 'twitter',\n title: title,\n i18n: this.getI18n(),\n onClick: this.handleClick,\n include: categoriesSort,\n recent: frequentlyUsedEmojis,\n skin: skinTone,\n showPreview: false,\n backgroundImageFn: backgroundImageFn,\n emojiTooltip: true\n }),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(ModifierPicker, {\n active: modifierOpen,\n modifier: skinTone,\n onOpen: this.handleModifierOpen,\n onClose: this.handleModifierClose,\n onChange: this.handleModifierChange\n })\n );\n };\n\n return EmojiPickerMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class4.defaultProps = {\n style: {},\n loading: true,\n placement: 'bottom',\n frequentlyUsedEmojis: []\n}, _temp4)) || _class3;\n\nvar EmojiPickerDropdown = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class5 = function (_React$PureComponent4) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(EmojiPickerDropdown, _React$PureComponent4);\n\n function EmojiPickerDropdown() {\n var _temp5, _this4, _ret4;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, EmojiPickerDropdown);\n\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _ret4 = (_temp5 = (_this4 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent4.call.apply(_React$PureComponent4, [this].concat(args))), _this4), _this4.state = {\n active: false,\n loading: false\n }, _this4.setRef = function (c) {\n _this4.dropdown = c;\n }, _this4.onShowDropdown = function () {\n _this4.setState({ active: true });\n\n if (!EmojiPicker) {\n _this4.setState({ loading: true });\n\n Object(__WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__[\"f\" /* EmojiPicker */])().then(function (EmojiMart) {\n EmojiPicker = EmojiMart.Picker;\n Emoji = EmojiMart.Emoji;\n\n _this4.setState({ loading: false });\n }).catch(function () {\n _this4.setState({ loading: false });\n });\n }\n }, _this4.onHideDropdown = function () {\n _this4.setState({ active: false });\n }, _this4.onToggle = function (e) {\n if (!_this4.state.loading && (!e.key || e.key === 'Enter')) {\n if (_this4.state.active) {\n _this4.onHideDropdown();\n } else {\n _this4.onShowDropdown();\n }\n }\n }, _this4.handleKeyDown = function (e) {\n if (e.key === 'Escape') {\n _this4.onHideDropdown();\n }\n }, _this4.setTargetRef = function (c) {\n _this4.target = c;\n }, _this4.findTarget = function () {\n return _this4.target;\n }, _temp5), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this4, _ret4);\n }\n\n EmojiPickerDropdown.prototype.render = function render() {\n var _props3 = this.props,\n intl = _props3.intl,\n onPickEmoji = _props3.onPickEmoji,\n onSkinTone = _props3.onSkinTone,\n skinTone = _props3.skinTone,\n frequentlyUsedEmojis = _props3.frequentlyUsedEmojis;\n\n var title = intl.formatMessage(messages.emoji);\n var _state = this.state,\n active = _state.active,\n loading = _state.loading;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'emoji-picker-dropdown',\n onKeyDown: this.handleKeyDown\n }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { ref: this.setTargetRef, className: 'emoji-button', title: title, 'aria-label': title, 'aria-expanded': active, role: 'button', onClick: this.onToggle, onKeyDown: this.onToggle, tabIndex: 0 },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('emojione', { 'pulse-loading': active && loading }),\n alt: '\\uD83D\\uDE42',\n src: assetHost + '/emoji/1f602.svg'\n })\n ), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default.a, {\n show: active,\n placement: 'bottom',\n target: this.findTarget\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(EmojiPickerMenu, {\n custom_emojis: this.props.custom_emojis,\n loading: loading,\n onClose: this.onHideDropdown,\n onPick: onPickEmoji,\n onSkinTone: onSkinTone,\n skinTone: skinTone,\n frequentlyUsedEmojis: frequentlyUsedEmojis\n })));\n };\n\n return EmojiPickerDropdown;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class5;\n\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(36)))\n\n/***/ }),\n\n/***/ 321:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_form__ = __webpack_require__(322);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n mediaIds: state.getIn(['compose', 'media_attachments']).map(function (item) {\n return item.get('id');\n })\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_form__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 322:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadForm; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__ = __webpack_require__(323);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_upload_container__ = __webpack_require__(325);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\nvar UploadForm = (_temp = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadForm, _ImmutablePureCompone);\n\n function UploadForm() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadForm);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n UploadForm.prototype.render = function render() {\n var mediaIds = this.props.mediaIds;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__upload-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__uploads-wrapper'\n }, void 0, mediaIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_upload_container__[\"a\" /* default */], {\n id: id\n }, id);\n })));\n };\n\n return UploadForm;\n}(__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default.a), _class.propTypes = {\n mediaIds: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.list.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 323:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_progress__ = __webpack_require__(324);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n active: state.getIn(['compose', 'is_uploading']),\n progress: state.getIn(['compose', 'progress'])\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_progress__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 324:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadProgress; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\n\n\nvar UploadProgress = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadProgress, _React$PureComponent);\n\n function UploadProgress() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadProgress);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n UploadProgress.prototype.render = function render() {\n var _props = this.props,\n active = _props.active,\n progress = _props.progress;\n\n\n if (!active) {\n return null;\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress__icon'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-upload'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'upload_progress.label',\n defaultMessage: 'Uploading...'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress__backdrop'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { width: 0 },\n style: { width: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(progress) }\n }, void 0, function (_ref) {\n var width = _ref.width;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress__tracker',\n style: { width: width + '%' }\n });\n }))));\n };\n\n return UploadProgress;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 325:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload__ = __webpack_require__(326);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_modal__ = __webpack_require__(26);\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n var id = _ref.id;\n return {\n media: state.getIn(['compose', 'media_attachments']).find(function (item) {\n return item.get('id') === id;\n })\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n\n onUndo: function onUndo(id) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"X\" /* undoUploadCompose */])(id));\n },\n\n onDescriptionChange: function onDescriptionChange(id, description) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"L\" /* changeUploadCompose */])(id, { description: description }));\n },\n\n onOpenFocalPoint: function onOpenFocalPoint(id) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"d\" /* openModal */])('FOCAL_POINT', { id: id }));\n }\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 326:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Upload; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n description: {\n 'id': 'upload_form.description',\n 'defaultMessage': 'Describe for the visually impaired'\n }\n});\n\nvar Upload = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Upload, _ImmutablePureCompone);\n\n function Upload() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Upload);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n hovered: false,\n focused: false,\n dirtyDescription: null\n }, _this.handleUndoClick = function () {\n _this.props.onUndo(_this.props.media.get('id'));\n }, _this.handleFocalPointClick = function () {\n _this.props.onOpenFocalPoint(_this.props.media.get('id'));\n }, _this.handleInputChange = function (e) {\n _this.setState({ dirtyDescription: e.target.value });\n }, _this.handleMouseEnter = function () {\n _this.setState({ hovered: true });\n }, _this.handleMouseLeave = function () {\n _this.setState({ hovered: false });\n }, _this.handleInputFocus = function () {\n _this.setState({ focused: true });\n }, _this.handleInputBlur = function () {\n var dirtyDescription = _this.state.dirtyDescription;\n\n\n _this.setState({ focused: false, dirtyDescription: null });\n\n if (dirtyDescription !== null) {\n _this.props.onDescriptionChange(_this.props.media.get('id'), dirtyDescription);\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Upload.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n intl = _props.intl,\n media = _props.media;\n\n var active = this.state.hovered || this.state.focused;\n var description = this.state.dirtyDescription || this.state.dirtyDescription !== '' && media.get('description') || '';\n var focusX = media.getIn(['meta', 'focus', 'x']);\n var focusY = media.getIn(['meta', 'focus', 'y']);\n var x = (focusX / 2 + .5) * 100;\n var y = (focusY / -2 + .5) * 100;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__upload',\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { scale: 0.8 },\n style: { scale: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { stiffness: 180, damping: 12 }) }\n }, void 0, function (_ref) {\n var scale = _ref.scale;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__upload-thumbnail',\n style: { transform: 'scale(' + scale + ')', backgroundImage: 'url(' + media.get('preview_url') + ')', backgroundPosition: x + '% ' + y + '%' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('compose-form__upload__actions', { active: active })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'icon-button',\n onClick: _this2.handleUndoClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-times'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'upload_form.undo',\n defaultMessage: 'Undo'\n })), media.get('type') === 'image' && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'icon-button',\n onClick: _this2.handleFocalPointClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-crosshairs'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'upload_form.focus',\n defaultMessage: 'Crop'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('compose-form__upload-description', { active: active })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.description)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n placeholder: intl.formatMessage(messages.description),\n type: 'text',\n value: description,\n maxLength: 420,\n onFocus: _this2.handleInputFocus,\n onChange: _this2.handleInputChange,\n onBlur: _this2.handleInputBlur\n }))));\n }));\n };\n\n return Upload;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n media: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n onUndo: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDescriptionChange: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onOpenFocalPoint: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 327:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_warning__ = __webpack_require__(328);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\nvar APPROX_HASHTAG_RE = /(?:^|[^\\/\\)\\w])#(\\w*[a-zA-Z·]\\w*)/i;\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n needsLockWarning: state.getIn(['compose', 'privacy']) === 'private' && !state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_5__initial_state__[\"g\" /* me */], 'locked']),\n hashtagWarning: state.getIn(['compose', 'privacy']) !== 'public' && APPROX_HASHTAG_RE.test(state.getIn(['compose', 'text'])),\n directMessageWarning: state.getIn(['compose', 'privacy']) === 'direct'\n };\n};\n\nvar WarningWrapper = function WarningWrapper(_ref) {\n var needsLockWarning = _ref.needsLockWarning,\n hashtagWarning = _ref.hashtagWarning,\n directMessageWarning = _ref.directMessageWarning;\n\n if (needsLockWarning) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'compose_form.lock_disclaimer',\n defaultMessage: 'Your account is not {locked}. Anyone can follow you to view your follower-only posts.',\n values: { locked: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: '/settings/profile'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'compose_form.lock_disclaimer.lock',\n defaultMessage: 'locked'\n })) }\n })\n });\n }\n if (hashtagWarning) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'compose_form.hashtag_warning',\n defaultMessage: 'This toot won\\'t be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.'\n })\n });\n }\n if (directMessageWarning) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'compose_form.direct_message_warning',\n defaultMessage: 'This toot will only be visible to all the mentioned users.'\n })\n });\n }\n\n return null;\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(mapStateToProps)(WarningWrapper));\n\n/***/ }),\n\n/***/ 328:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Warning; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__);\n\n\n\n\n\n\n\n\n\nvar Warning = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Warning, _React$PureComponent);\n\n function Warning() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Warning);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n Warning.prototype.render = function render() {\n var message = this.props.message;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n style: { opacity: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n }, void 0, function (_ref) {\n var opacity = _ref.opacity,\n scaleX = _ref.scaleX,\n scaleY = _ref.scaleY;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__warning',\n style: { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }\n }, void 0, message);\n });\n };\n\n return Warning;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 329:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = countableText;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__url_regex__ = __webpack_require__(330);\n\n\nvar urlPlaceholder = 'xxxxxxxxxxxxxxxxxxxxxxx';\n\nfunction countableText(inputText) {\n return inputText.replace(__WEBPACK_IMPORTED_MODULE_0__url_regex__[\"a\" /* urlRegex */], urlPlaceholder).replace(/(^|[^\\/\\w])@(([a-z0-9_]+)@[a-z0-9\\.\\-]+[a-z0-9]+)/ig, '$1@$3');\n};\n\n/***/ }),\n\n/***/ 330:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return urlRegex; });\nvar regexen = {};\n\nvar regexSupplant = function regexSupplant(regex, flags) {\n flags = flags || '';\n if (typeof regex !== 'string') {\n if (regex.global && flags.indexOf('g') < 0) {\n flags += 'g';\n }\n if (regex.ignoreCase && flags.indexOf('i') < 0) {\n flags += 'i';\n }\n if (regex.multiline && flags.indexOf('m') < 0) {\n flags += 'm';\n }\n\n regex = regex.source;\n }\n return new RegExp(regex.replace(/#\\{(\\w+)\\}/g, function (match, name) {\n var newRegex = regexen[name] || '';\n if (typeof newRegex !== 'string') {\n newRegex = newRegex.source;\n }\n return newRegex;\n }), flags);\n};\n\nvar stringSupplant = function stringSupplant(str, values) {\n return str.replace(/#\\{(\\w+)\\}/g, function (match, name) {\n return values[name] || '';\n });\n};\n\nvar urlRegex = function () {\n regexen.spaces_group = /\\x09-\\x0D\\x20\\x85\\xA0\\u1680\\u180E\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000/;\n regexen.invalid_chars_group = /\\uFFFE\\uFEFF\\uFFFF\\u202A-\\u202E/;\n regexen.punct = /\\!'#%&'\\(\\)*\\+,\\\\\\-\\.\\/:;<=>\\?@\\[\\]\\^_{|}~\\$/;\n regexen.validUrlPrecedingChars = regexSupplant(/(?:[^A-Za-z0-9@@$###{invalid_chars_group}]|^)/);\n regexen.invalidDomainChars = stringSupplant('#{punct}#{spaces_group}#{invalid_chars_group}', regexen);\n regexen.validDomainChars = regexSupplant(/[^#{invalidDomainChars}]/);\n regexen.validSubdomain = regexSupplant(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n regexen.validDomainName = regexSupplant(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n regexen.validGTLD = regexSupplant(RegExp('(?:(?:' + '삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|' + '政务|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|' + 'ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|' + 'بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|' + 'zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|' + 'yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|' + 'wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|' + 'website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|' + 'wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|' + 'vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|' + 'vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|' + 'university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|' + 'travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|' + 'toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|' + 'tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|' + 'tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|' + 'swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|' + 'stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|' + 'stada|srt|srl|spreadbetting|spot|spiegel|space|soy|sony|song|solutions|solar|sohu|software|' + 'softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|' + 'showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|' + 'sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|' + 'science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|' + 'sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|' + 'saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|' + 'rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|' + 'repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|' + 'realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|' + 'protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|' + 'pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|' + 'pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|' + 'pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|' + 'pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|' + 'onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|' + 'obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|' + 'nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|' + 'net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|' + 'msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|' + 'monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|' + 'miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|' + 'mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|' + 'makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|' + 'lotte|london|lol|loft|locus|locker|loans|loan|lixil|living|live|lipsy|link|linde|lincoln|limo|' + 'limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|' + 'lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|' + 'lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|' + 'komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|' + 'kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|' + 'jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|' + 'investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|' + 'industries|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|' + 'hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|' + 'honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|' + 'hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|' + 'hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|' + 'gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|' + 'globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|' + 'garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|' + 'ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|' + 'football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|' + 'fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|' + 'ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|' + 'extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|' + 'estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|' + 'email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|' + 'download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|' + 'direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|' + 'delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|' + 'cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|courses|' + 'coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|' + 'construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|' + 'college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|' + 'cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|' + 'chintai|cheap|chat|chase|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|' + 'catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|' + 'capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|' + 'bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|' + 'bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|' + 'boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|' + 'black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|' + 'beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|' + 'barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|' + 'autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|' + 'art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|' + 'amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|' + 'alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|' + 'afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|' + 'academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion' + ')(?=[^0-9a-zA-Z@]|$))'));\n regexen.validCCTLD = regexSupplant(RegExp('(?:(?:' + '한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|' + 'ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|' + 'بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ελ|' + 'zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|' + 'tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|' + 're|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|' + 'mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|' + 'ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|' + 'gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|' + 'do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|' + 'bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac' + ')(?=[^0-9a-zA-Z@]|$))'));\n regexen.validPunycode = /(?:xn--[0-9a-z]+)/;\n regexen.validSpecialCCTLD = /(?:(?:co|tv)(?=[^0-9a-zA-Z@]|$))/;\n regexen.validDomain = regexSupplant(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/);\n regexen.validPortNumber = /[0-9]+/;\n regexen.pd = /\\u002d\\u058a\\u05be\\u1400\\u1806\\u2010-\\u2015\\u2e17\\u2e1a\\u2e3a\\u2e40\\u301c\\u3030\\u30a0\\ufe31\\ufe58\\ufe63\\uff0d/;\n regexen.validGeneralUrlPathChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?]/i);\n // Allow URL paths to contain up to two nested levels of balanced parens\n // 1. Used in Wikipedia URLs like /Primer_(film)\n // 2. Used in IIS sessions like /S(dfd346)/\n // 3. Used in Rdio URLs like /track/We_Up_(Album_Version_(Edited))/\n regexen.validUrlBalancedParens = regexSupplant('\\\\(' + '(?:' + '#{validGeneralUrlPathChars}+' + '|' +\n // allow one nested level of balanced parentheses\n '(?:' + '#{validGeneralUrlPathChars}*' + '\\\\(' + '#{validGeneralUrlPathChars}+' + '\\\\)' + '#{validGeneralUrlPathChars}*' + ')' + ')' + '\\\\)', 'i');\n // Valid end-of-path chracters (so /foo. does not gobble the period).\n // 1. Allow =&# for empty URL parameters and other URL-join artifacts\n regexen.validUrlPathEndingChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?!\\*';:=\\,\\.\\$%\\[\\]#{pd}~&\\|@]|(?:#{validUrlBalancedParens})/i);\n // Allow @ in a url, but only in the middle. Catch things like http://example.com/@user/\n regexen.validUrlPath = regexSupplant('(?:' + '(?:' + '#{validGeneralUrlPathChars}*' + '(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*' + '#{validUrlPathEndingChars}' + ')|(?:@#{validGeneralUrlPathChars}+\\/)' + ')', 'i');\n regexen.validUrlQueryChars = /[a-z0-9!?\\*'@\\(\\);:&=\\+\\$\\/%#\\[\\]\\-_\\.,~|]/i;\n regexen.validUrlQueryEndingChars = /[a-z0-9_&=#\\/]/i;\n regexen.validUrl = regexSupplant('(' + // $1 URL\n '(https?:\\\\/\\\\/)' + // $2 Protocol\n '(#{validDomain})' + // $3 Domain(s)\n '(?::(#{validPortNumber}))?' + // $4 Port number (optional)\n '(\\\\/#{validUrlPath}*)?' + // $5 URL Path\n '(\\\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?' + // $6 Query String\n ')', 'gi');\n return regexen.validUrl;\n}();\n\n/***/ }),\n\n/***/ 331:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_compose_form__ = __webpack_require__(302);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n text: state.getIn(['compose', 'text']),\n suggestion_token: state.getIn(['compose', 'suggestion_token']),\n suggestions: state.getIn(['compose', 'suggestions']),\n spoiler: state.getIn(['compose', 'spoiler']),\n spoiler_text: state.getIn(['compose', 'spoiler_text']),\n privacy: state.getIn(['compose', 'privacy']),\n focusDate: state.getIn(['compose', 'focusDate']),\n preselectDate: state.getIn(['compose', 'preselectDate']),\n is_submitting: state.getIn(['compose', 'is_submitting']),\n is_uploading: state.getIn(['compose', 'is_uploading']),\n showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n anyMedia: state.getIn(['compose', 'media_attachments']).size > 0\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(text) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"F\" /* changeCompose */])(text));\n },\n onSubmit: function onSubmit() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"W\" /* submitCompose */])());\n },\n onClearSuggestions: function onClearSuggestions() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"M\" /* clearComposeSuggestions */])());\n },\n onFetchSuggestions: function onFetchSuggestions(token) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"O\" /* fetchComposeSuggestions */])(token));\n },\n onSuggestionSelected: function onSuggestionSelected(position, token, accountId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"V\" /* selectComposeSuggestion */])(position, token, accountId));\n },\n onChangeSpoilerText: function onChangeSpoilerText(checked) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"H\" /* changeComposeSpoilerText */])(checked));\n },\n onPaste: function onPaste(files) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Z\" /* uploadCompose */])(files));\n },\n onPickEmoji: function onPickEmoji(position, data) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Q\" /* insertEmojiCompose */])(position, data));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_compose_form__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 804:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Compose; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__ = __webpack_require__(331);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__ = __webpack_require__(951);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_search_container__ = __webpack_require__(952);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__ = __webpack_require__(953);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n start: {\n 'id': 'getting_started.heading',\n 'defaultMessage': 'Getting started'\n },\n home_timeline: {\n 'id': 'tabs_bar.home',\n 'defaultMessage': 'Home'\n },\n notifications: {\n 'id': 'tabs_bar.notifications',\n 'defaultMessage': 'Notifications'\n },\n public: {\n 'id': 'navigation_bar.public_timeline',\n 'defaultMessage': 'Federated timeline'\n },\n community: {\n 'id': 'navigation_bar.community_timeline',\n 'defaultMessage': 'Local timeline'\n },\n preferences: {\n 'id': 'navigation_bar.preferences',\n 'defaultMessage': 'Preferences'\n },\n logout: {\n 'id': 'navigation_bar.logout',\n 'defaultMessage': 'Logout'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n columns: state.getIn(['settings', 'columns']),\n showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden'])\n };\n};\n\nvar Compose = (_dec = Object(__WEBPACK_IMPORTED_MODULE_7_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Compose, _React$PureComponent);\n\n function Compose() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Compose);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onFocus = function () {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"K\" /* changeComposing */])(true));\n }, _this.onBlur = function () {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"K\" /* changeComposing */])(false));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Compose.prototype.componentDidMount = function componentDidMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"S\" /* mountCompose */])());\n };\n\n Compose.prototype.componentWillUnmount = function componentWillUnmount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"Y\" /* unmountCompose */])());\n };\n\n Compose.prototype.render = function render() {\n var _props = this.props,\n multiColumn = _props.multiColumn,\n showSearch = _props.showSearch,\n intl = _props.intl;\n\n\n var header = '';\n\n if (multiColumn) {\n var columns = this.props.columns;\n\n header = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('nav', {\n className: 'drawer__header'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/getting-started',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.start),\n 'aria-label': intl.formatMessage(messages.start)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-asterisk'\n })), !columns.some(function (column) {\n return column.get('id') === 'HOME';\n }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/timelines/home',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.home_timeline),\n 'aria-label': intl.formatMessage(messages.home_timeline)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-home'\n })), !columns.some(function (column) {\n return column.get('id') === 'NOTIFICATIONS';\n }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/notifications',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.notifications),\n 'aria-label': intl.formatMessage(messages.notifications)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-bell'\n })), !columns.some(function (column) {\n return column.get('id') === 'COMMUNITY';\n }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/timelines/public/local',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.community),\n 'aria-label': intl.formatMessage(messages.community)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-users'\n })), !columns.some(function (column) {\n return column.get('id') === 'PUBLIC';\n }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/timelines/public',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.public),\n 'aria-label': intl.formatMessage(messages.public)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-globe'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: '/user-settings',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.preferences),\n 'aria-label': intl.formatMessage(messages.preferences)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-cog'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: '/auth/sign_out',\n className: 'drawer__tab',\n 'data-method': 'delete',\n title: intl.formatMessage(messages.logout),\n 'aria-label': intl.formatMessage(messages.logout)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-sign-out'\n })));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer'\n }, void 0, header, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_search_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__pager'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner',\n onFocus: this.onFocus\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__[\"a\" /* default */], {\n onClose: this.onBlur\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__[\"a\" /* default */], {}), multiColumn && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner__mastodon'\n }, void 0)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { x: -100 },\n style: { x: __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default()(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }\n }, void 0, function (_ref) {\n var x = _ref.x;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner darker',\n style: { transform: 'translateX(' + x + '%)', visibility: x === -100 ? 'hidden' : 'visible' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__[\"a\" /* default */], {}));\n })));\n };\n\n return Compose;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 869:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return NavigationBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\n\n\n\nvar NavigationBar = (_temp = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(NavigationBar, _ImmutablePureCompone);\n\n function NavigationBar() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, NavigationBar);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n NavigationBar.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'navigation-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_permalink__[\"a\" /* default */], {\n href: this.props.account.get('url'),\n to: '/accounts/' + this.props.account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, this.props.account.get('acct')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n account: this.props.account,\n size: 40\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'navigation-bar__profile'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_permalink__[\"a\" /* default */], {\n href: this.props.account.get('url'),\n to: '/accounts/' + this.props.account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n className: 'navigation-bar__profile-account'\n }, void 0, '@', this.props.account.get('acct'))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: '/settings/profile',\n className: 'navigation-bar__profile-edit'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'navigation_bar.edit_profile',\n defaultMessage: 'Edit profile'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n title: '',\n icon: 'close',\n onClick: this.props.onClose\n }));\n };\n\n return NavigationBar;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n onClose: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func\n}, _temp);\n\n\n/***/ }),\n\n/***/ 870:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Search; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__ = __webpack_require__(96);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n placeholder: {\n 'id': 'search.placeholder',\n 'defaultMessage': 'Search'\n }\n});\n\nvar SearchPopout = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SearchPopout, _React$PureComponent);\n\n function SearchPopout() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SearchPopout);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n SearchPopout.prototype.render = function render() {\n var style = this.props.style;\n\n var extraInformation = __WEBPACK_IMPORTED_MODULE_9__initial_state__[\"i\" /* searchEnabled */] ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.full_text',\n defaultMessage: 'Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.'\n }) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.text',\n defaultMessage: 'Simple text returns matching display names, usernames and hashtags'\n });\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n style: Object.assign({}, style, { position: 'absolute', width: 315 })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n style: { opacity: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n }, void 0, function (_ref) {\n var opacity = _ref.opacity,\n scaleX = _ref.scaleX,\n scaleY = _ref.scaleY;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-popout',\n style: { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h4', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.search_format',\n defaultMessage: 'Advanced search format'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('ul', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, '#example'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.hashtag',\n defaultMessage: 'hashtag'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, '@username@domain'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.user',\n defaultMessage: 'user'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, 'URL'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.user',\n defaultMessage: 'user'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, 'URL'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.status',\n defaultMessage: 'status'\n }))), extraInformation);\n }));\n };\n\n return SearchPopout;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar Search = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Search, _React$PureComponent2);\n\n function Search() {\n var _temp, _this2, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Search);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.state = {\n expanded: false\n }, _this2.handleChange = function (e) {\n _this2.props.onChange(e.target.value);\n }, _this2.handleClear = function (e) {\n e.preventDefault();\n\n if (_this2.props.value.length > 0 || _this2.props.submitted) {\n _this2.props.onClear();\n }\n }, _this2.handleKeyDown = function (e) {\n if (e.key === 'Enter') {\n e.preventDefault();\n _this2.props.onSubmit();\n } else if (e.key === 'Escape') {\n document.querySelector('.ui').parentElement.focus();\n }\n }, _this2.handleFocus = function () {\n _this2.setState({ expanded: true });\n _this2.props.onShow();\n }, _this2.handleBlur = function () {\n _this2.setState({ expanded: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret);\n }\n\n Search.prototype.noop = function noop() {};\n\n Search.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n value = _props.value,\n submitted = _props.submitted;\n var expanded = this.state.expanded;\n\n var hasValue = value.length > 0 || submitted;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.placeholder)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'search__input',\n type: 'text',\n placeholder: intl.formatMessage(messages.placeholder),\n value: value,\n onChange: this.handleChange,\n onKeyUp: this.handleKeyDown,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n className: 'search__icon',\n onClick: this.handleClear\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-search ' + (hasValue ? '' : 'active')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n 'aria-label': intl.formatMessage(messages.placeholder),\n className: 'fa fa-times-circle ' + (hasValue ? 'active' : '')\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default.a, {\n show: expanded && !hasValue,\n placement: 'bottom',\n target: this\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(SearchPopout, {})));\n };\n\n return Search;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 951:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__ = __webpack_require__(869);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__initial_state__ = __webpack_require__(11);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n account: state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_2__initial_state__[\"g\" /* me */]])\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 952:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__actions_search__ = __webpack_require__(336);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_search__ = __webpack_require__(870);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n value: state.getIn(['search', 'value']),\n submitted: state.getIn(['search', 'submitted'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(value) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"e\" /* changeSearch */])(value));\n },\n onClear: function onClear() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"f\" /* clearSearch */])());\n },\n onSubmit: function onSubmit() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"h\" /* submitSearch */])());\n },\n onShow: function onShow() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"g\" /* showSearch */])());\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_search__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 953:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_search_results__ = __webpack_require__(954);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n results: state.getIn(['search', 'results'])\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_search_results__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 954:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SearchResults; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__containers_account_container__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\n\n\nvar SearchResults = (_temp = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SearchResults, _ImmutablePureCompone);\n\n function SearchResults() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SearchResults);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n SearchResults.prototype.render = function render() {\n var results = this.props.results;\n\n\n var accounts = void 0,\n statuses = void 0,\n hashtags = void 0;\n var count = 0;\n\n if (results.get('accounts') && results.get('accounts').size > 0) {\n count += results.get('accounts').size;\n accounts = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_results.accounts',\n defaultMessage: 'People'\n })), results.get('accounts').map(function (accountId) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_account_container__[\"a\" /* default */], {\n id: accountId\n }, accountId);\n }));\n }\n\n if (results.get('statuses') && results.get('statuses').size > 0) {\n count += results.get('statuses').size;\n statuses = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_results.statuses',\n defaultMessage: 'Toots'\n })), results.get('statuses').map(function (statusId) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_status_container__[\"a\" /* default */], {\n id: statusId\n }, statusId);\n }));\n }\n\n if (results.get('hashtags') && results.get('hashtags').size > 0) {\n count += results.get('hashtags').size;\n hashtags = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_results.hashtags',\n defaultMessage: 'Hashtags'\n })), results.get('hashtags').map(function (hashtag) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n className: 'search-results__hashtag',\n to: '/timelines/tag/' + hashtag\n }, hashtag, '#', hashtag);\n }));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results__header'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_results.total',\n defaultMessage: '{count, number} {count, plural, one {result} other {results}}',\n values: { count: count }\n })), accounts, statuses, hashtags);\n };\n\n return SearchResults;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n results: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/compose.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React from 'react';\nimport CharacterCounter from './character_counter';\nimport Button from '../../../components/button';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport ReplyIndicatorContainer from '../containers/reply_indicator_container';\nimport AutosuggestTextarea from '../../../components/autosuggest_textarea';\nimport UploadButtonContainer from '../containers/upload_button_container';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport Collapsable from '../../../components/collapsable';\nimport SpoilerButtonContainer from '../containers/spoiler_button_container';\nimport PrivacyDropdownContainer from '../containers/privacy_dropdown_container';\nimport SensitiveButtonContainer from '../containers/sensitive_button_container';\nimport EmojiPickerDropdown from '../containers/emoji_picker_dropdown_container';\nimport UploadFormContainer from '../containers/upload_form_container';\nimport WarningContainer from '../containers/warning_container';\nimport { isMobile } from '../../../is_mobile';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { length } from 'stringz';\nimport { countableText } from '../util/counter';\nimport { charLimit } from \"../../../initial_state\"\n\nconst messages = defineMessages({\n placeholder: { id: 'compose_form.placeholder', defaultMessage: 'What is on your mind?' },\n spoiler_placeholder: { id: 'compose_form.spoiler_placeholder', defaultMessage: 'Write your warning here' },\n publish: { id: 'compose_form.publish', defaultMessage: 'Toot' },\n publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' },\n});\n\n@injectIntl\nexport default class ComposeForm extends ImmutablePureComponent {\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n text: PropTypes.string.isRequired,\n suggestion_token: PropTypes.string,\n suggestions: ImmutablePropTypes.list,\n spoiler: PropTypes.bool,\n privacy: PropTypes.string,\n spoiler_text: PropTypes.string,\n focusDate: PropTypes.instanceOf(Date),\n preselectDate: PropTypes.instanceOf(Date),\n is_submitting: PropTypes.bool,\n is_uploading: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n onSubmit: PropTypes.func.isRequired,\n onClearSuggestions: PropTypes.func.isRequired,\n onFetchSuggestions: PropTypes.func.isRequired,\n onSuggestionSelected: PropTypes.func.isRequired,\n onChangeSpoilerText: PropTypes.func.isRequired,\n onPaste: PropTypes.func.isRequired,\n onPickEmoji: PropTypes.func.isRequired,\n showSearch: PropTypes.bool,\n anyMedia: PropTypes.bool,\n };\n\n static defaultProps = {\n showSearch: false,\n };\n\n handleChange = (e) => {\n this.props.onChange(e.target.value);\n }\n\n handleKeyDown = (e) => {\n if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n this.handleSubmit();\n }\n }\n\n handleSubmit = () => {\n if (this.props.text !== this.autosuggestTextarea.textarea.value) {\n // Something changed the text inside the textarea (e.g. browser extensions like Grammarly)\n // Update the state to match the current text\n this.props.onChange(this.autosuggestTextarea.textarea.value);\n }\n\n this.props.onSubmit();\n }\n\n onSuggestionsClearRequested = () => {\n this.props.onClearSuggestions();\n }\n\n onSuggestionsFetchRequested = (token) => {\n this.props.onFetchSuggestions(token);\n }\n\n onSuggestionSelected = (tokenStart, token, value) => {\n this._restoreCaret = null;\n this.props.onSuggestionSelected(tokenStart, token, value);\n }\n\n handleChangeSpoilerText = (e) => {\n this.props.onChangeSpoilerText(e.target.value);\n }\n\n componentWillReceiveProps (nextProps) {\n // If this is the update where we've finished uploading,\n // save the last caret position so we can restore it below!\n if (!nextProps.is_uploading && this.props.is_uploading) {\n this._restoreCaret = this.autosuggestTextarea.textarea.selectionStart;\n }\n }\n\n componentDidUpdate (prevProps) {\n // This statement does several things:\n // - If we're beginning a reply, and,\n // - Replying to zero or one users, places the cursor at the end of the textbox.\n // - Replying to more than one user, selects any usernames past the first;\n // this provides a convenient shortcut to drop everyone else from the conversation.\n // - If we've just finished uploading an image, and have a saved caret position,\n // restores the cursor to that position after the text changes!\n if (this.props.focusDate !== prevProps.focusDate || (prevProps.is_uploading && !this.props.is_uploading && typeof this._restoreCaret === 'number')) {\n let selectionEnd, selectionStart;\n\n if (this.props.preselectDate !== prevProps.preselectDate) {\n selectionEnd = this.props.text.length;\n selectionStart = this.props.text.search(/\\s/) + 1;\n } else if (typeof this._restoreCaret === 'number') {\n selectionStart = this._restoreCaret;\n selectionEnd = this._restoreCaret;\n } else {\n selectionEnd = this.props.text.length;\n selectionStart = selectionEnd;\n }\n\n this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);\n this.autosuggestTextarea.textarea.focus();\n } else if(prevProps.is_submitting && !this.props.is_submitting) {\n this.autosuggestTextarea.textarea.focus();\n }\n }\n\n setAutosuggestTextarea = (c) => {\n this.autosuggestTextarea = c;\n }\n\n handleEmojiPick = (data) => {\n const position = this.autosuggestTextarea.textarea.selectionStart;\n const emojiChar = data.native;\n this._restoreCaret = position + emojiChar.length + 1;\n this.props.onPickEmoji(position, data);\n }\n\n render () {\n const { intl, onPaste, showSearch, anyMedia } = this.props;\n const disabled = this.props.is_submitting;\n const text = [this.props.spoiler_text, countableText(this.props.text)].join('');\n const disabledButton = disabled || this.props.is_uploading || length(text) > charLimit || (text.length !== 0 && text.trim().length === 0 && !anyMedia);\n let publishText = '';\n\n if (this.props.privacy === 'private' || this.props.privacy === 'direct') {\n publishText = <span className='compose-form__publish-private'><i className='fa fa-lock' /> {intl.formatMessage(messages.publish)}</span>;\n } else {\n publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish);\n }\n\n return (\n <div className='compose-form'>\n <WarningContainer />\n\n <Collapsable isVisible={this.props.spoiler} fullHeight={50}>\n <div className='spoiler-input'>\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.spoiler_placeholder)}</span>\n <input placeholder={intl.formatMessage(messages.spoiler_placeholder)} value={this.props.spoiler_text} onChange={this.handleChangeSpoilerText} onKeyDown={this.handleKeyDown} type='text' className='spoiler-input__input' id='cw-spoiler-input' />\n </label>\n </div>\n </Collapsable>\n\n <ReplyIndicatorContainer />\n\n <div className='compose-form__autosuggest-wrapper'>\n <AutosuggestTextarea\n ref={this.setAutosuggestTextarea}\n placeholder={intl.formatMessage(messages.placeholder)}\n disabled={disabled}\n value={this.props.text}\n onChange={this.handleChange}\n suggestions={this.props.suggestions}\n onKeyDown={this.handleKeyDown}\n onSuggestionsFetchRequested={this.onSuggestionsFetchRequested}\n onSuggestionsClearRequested={this.onSuggestionsClearRequested}\n onSuggestionSelected={this.onSuggestionSelected}\n onPaste={onPaste}\n autoFocus={!showSearch && !isMobile(window.innerWidth)}\n />\n\n <EmojiPickerDropdown onPickEmoji={this.handleEmojiPick} />\n </div>\n\n <div className='compose-form__modifiers'>\n <UploadFormContainer />\n </div>\n\n <div className='compose-form__buttons-wrapper'>\n <div className='compose-form__buttons'>\n <UploadButtonContainer />\n <PrivacyDropdownContainer />\n <SensitiveButtonContainer />\n <SpoilerButtonContainer />\n </div>\n <div className='character-counter__wrapper'><CharacterCounter max={charLimit} text={text} /></div>\n </div>\n\n <div className='compose-form__publish'>\n <div className='compose-form__publish-button-wrapper'><Button text={publishText} onClick={this.handleSubmit} disabled={disabledButton} block /></div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/compose_form.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { length } from 'stringz';\n\nexport default class CharacterCounter extends React.PureComponent {\n\n static propTypes = {\n text: PropTypes.string.isRequired,\n max: PropTypes.number.isRequired,\n };\n\n checkRemainingText (diff) {\n if (diff < 0) {\n return <span className='character-counter character-counter--over'>{diff}</span>;\n }\n\n return <span className='character-counter'>{diff}</span>;\n }\n\n render () {\n const diff = this.props.max - length(this.props.text);\n return this.checkRemainingText(diff);\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/character_counter.js","import { connect } from 'react-redux';\nimport { cancelReplyCompose } from '../../../actions/compose';\nimport { makeGetStatus } from '../../../selectors';\nimport ReplyIndicator from '../components/reply_indicator';\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = state => ({\n status: getStatus(state, state.getIn(['compose', 'in_reply_to'])),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = dispatch => ({\n\n onCancel () {\n dispatch(cancelReplyCompose());\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(ReplyIndicator);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/reply_indicator_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from '../../../components/avatar';\nimport IconButton from '../../../components/icon_button';\nimport DisplayName from '../../../components/display_name';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { isRtl } from '../../../rtl';\n\nconst messages = defineMessages({\n cancel: { id: 'reply_indicator.cancel', defaultMessage: 'Cancel' },\n});\n\n@injectIntl\nexport default class ReplyIndicator extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n status: ImmutablePropTypes.map,\n onCancel: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleClick = () => {\n this.props.onCancel();\n }\n\n handleAccountClick = (e) => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`);\n }\n }\n\n render () {\n const { status, intl } = this.props;\n\n if (!status) {\n return null;\n }\n\n const content = { __html: status.get('contentHtml') };\n const style = {\n direction: isRtl(status.get('search_index')) ? 'rtl' : 'ltr',\n };\n\n return (\n <div className='reply-indicator'>\n <div className='reply-indicator__header'>\n <div className='reply-indicator__cancel'><IconButton title={intl.formatMessage(messages.cancel)} icon='times' onClick={this.handleClick} /></div>\n\n <a href={status.getIn(['account', 'url'])} onClick={this.handleAccountClick} className='reply-indicator__display-name'>\n <div className='reply-indicator__display-avatar'><Avatar account={status.get('account')} size={24} /></div>\n <DisplayName account={status.get('account')} />\n </a>\n </div>\n\n <div className='reply-indicator__content' style={style} dangerouslySetInnerHTML={content} />\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/reply_indicator.js","import React from 'react';\nimport AutosuggestAccountContainer from '../features/compose/containers/autosuggest_account_container';\nimport AutosuggestEmoji from './autosuggest_emoji';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { isRtl } from '../rtl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Textarea from 'react-textarea-autosize';\nimport classNames from 'classnames';\n\nconst textAtCursorMatchesToken = (str, caretPosition) => {\n let word;\n\n let left = str.slice(0, caretPosition).search(/\\S+$/);\n let right = str.slice(caretPosition).search(/\\s/);\n\n if (right < 0) {\n word = str.slice(left);\n } else {\n word = str.slice(left, right + caretPosition);\n }\n\n if (!word || word.trim().length < 3 || ['@', ':', '#'].indexOf(word[0]) === -1) {\n return [null, null];\n }\n\n word = word.trim().toLowerCase();\n\n if (word.length > 0) {\n return [left + 1, word];\n } else {\n return [null, null];\n }\n};\n\nexport default class AutosuggestTextarea extends ImmutablePureComponent {\n\n static propTypes = {\n value: PropTypes.string,\n suggestions: ImmutablePropTypes.list,\n disabled: PropTypes.bool,\n placeholder: PropTypes.string,\n onSuggestionSelected: PropTypes.func.isRequired,\n onSuggestionsClearRequested: PropTypes.func.isRequired,\n onSuggestionsFetchRequested: PropTypes.func.isRequired,\n onChange: PropTypes.func.isRequired,\n onKeyUp: PropTypes.func,\n onKeyDown: PropTypes.func,\n onPaste: PropTypes.func.isRequired,\n autoFocus: PropTypes.bool,\n };\n\n static defaultProps = {\n autoFocus: true,\n };\n\n state = {\n suggestionsHidden: false,\n selectedSuggestion: 0,\n lastToken: null,\n tokenStart: 0,\n };\n\n onChange = (e) => {\n const [ tokenStart, token ] = textAtCursorMatchesToken(e.target.value, e.target.selectionStart);\n\n if (token !== null && this.state.lastToken !== token) {\n this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart });\n this.props.onSuggestionsFetchRequested(token);\n } else if (token === null) {\n this.setState({ lastToken: null });\n this.props.onSuggestionsClearRequested();\n }\n\n this.props.onChange(e);\n }\n\n onKeyDown = (e) => {\n const { suggestions, disabled } = this.props;\n const { selectedSuggestion, suggestionsHidden } = this.state;\n\n if (disabled) {\n e.preventDefault();\n return;\n }\n\n switch(e.key) {\n case 'Escape':\n if (!suggestionsHidden) {\n e.preventDefault();\n this.setState({ suggestionsHidden: true });\n }\n\n break;\n case 'ArrowDown':\n if (suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n this.setState({ selectedSuggestion: Math.min(selectedSuggestion + 1, suggestions.size - 1) });\n }\n\n break;\n case 'ArrowUp':\n if (suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n this.setState({ selectedSuggestion: Math.max(selectedSuggestion - 1, 0) });\n }\n\n break;\n case 'Enter':\n case 'Tab':\n // Select suggestion\n if (this.state.lastToken !== null && suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n e.stopPropagation();\n this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestions.get(selectedSuggestion));\n }\n\n break;\n }\n\n if (e.defaultPrevented || !this.props.onKeyDown) {\n return;\n }\n\n this.props.onKeyDown(e);\n }\n\n onKeyUp = e => {\n if (e.key === 'Escape' && this.state.suggestionsHidden) {\n document.querySelector('.ui').parentElement.focus();\n }\n\n if (this.props.onKeyUp) {\n this.props.onKeyUp(e);\n }\n }\n\n onBlur = () => {\n this.setState({ suggestionsHidden: true });\n }\n\n onSuggestionClick = (e) => {\n const suggestion = this.props.suggestions.get(e.currentTarget.getAttribute('data-index'));\n e.preventDefault();\n this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestion);\n this.textarea.focus();\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.suggestions !== this.props.suggestions && nextProps.suggestions.size > 0 && this.state.suggestionsHidden) {\n this.setState({ suggestionsHidden: false });\n }\n }\n\n setTextarea = (c) => {\n this.textarea = c;\n }\n\n onPaste = (e) => {\n if (e.clipboardData && e.clipboardData.files.length === 1) {\n this.props.onPaste(e.clipboardData.files);\n e.preventDefault();\n }\n }\n\n renderSuggestion = (suggestion, i) => {\n const { selectedSuggestion } = this.state;\n let inner, key;\n\n if (typeof suggestion === 'object') {\n inner = <AutosuggestEmoji emoji={suggestion} />;\n key = suggestion.id;\n } else if (suggestion[0] === '#') {\n inner = suggestion;\n key = suggestion;\n } else {\n inner = <AutosuggestAccountContainer id={suggestion} />;\n key = suggestion;\n }\n\n return (\n <div role='button' tabIndex='0' key={key} data-index={i} className={classNames('autosuggest-textarea__suggestions__item', { selected: i === selectedSuggestion })} onMouseDown={this.onSuggestionClick}>\n {inner}\n </div>\n );\n }\n\n render () {\n const { value, suggestions, disabled, placeholder, autoFocus } = this.props;\n const { suggestionsHidden } = this.state;\n const style = { direction: 'ltr' };\n\n if (isRtl(value)) {\n style.direction = 'rtl';\n }\n\n return (\n <div className='autosuggest-textarea'>\n <label>\n <span style={{ display: 'none' }}>{placeholder}</span>\n\n <Textarea\n inputRef={this.setTextarea}\n className='autosuggest-textarea__textarea'\n disabled={disabled}\n placeholder={placeholder}\n autoFocus={autoFocus}\n value={value}\n onChange={this.onChange}\n onKeyDown={this.onKeyDown}\n onKeyUp={this.onKeyUp}\n onBlur={this.onBlur}\n onPaste={this.onPaste}\n style={style}\n aria-autocomplete='list'\n />\n </label>\n\n <div className={`autosuggest-textarea__suggestions ${suggestionsHidden || suggestions.isEmpty() ? '' : 'autosuggest-textarea__suggestions--visible'}`}>\n {suggestions.map(this.renderSuggestion)}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/autosuggest_textarea.js","import { connect } from 'react-redux';\nimport AutosuggestAccount from '../components/autosuggest_account';\nimport { makeGetAccount } from '../../../selectors';\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { id }) => ({\n account: getAccount(state, id),\n });\n\n return mapStateToProps;\n};\n\nexport default connect(makeMapStateToProps)(AutosuggestAccount);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/autosuggest_account_container.js","import React from 'react';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class AutosuggestAccount extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n render () {\n const { account } = this.props;\n\n return (\n <div className='autosuggest-account'>\n <div className='autosuggest-account-icon'><Avatar account={account} size={18} /></div>\n <DisplayName account={account} />\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/autosuggest_account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport unicodeMapping from '../features/emoji/emoji_unicode_mapping_light';\n\nconst assetHost = process.env.CDN_HOST || '';\n\nexport default class AutosuggestEmoji extends React.PureComponent {\n\n static propTypes = {\n emoji: PropTypes.object.isRequired,\n };\n\n render () {\n const { emoji } = this.props;\n let url;\n\n if (emoji.custom) {\n url = emoji.imageUrl;\n } else {\n const mapping = unicodeMapping[emoji.native] || unicodeMapping[emoji.native.replace(/\\uFE0F$/, '')];\n\n if (!mapping) {\n return null;\n }\n\n url = `${assetHost}/emoji/${mapping.filename}.svg`;\n }\n\n return (\n <div className='autosuggest-emoji'>\n <img\n className='emojione'\n src={url}\n alt={emoji.native || emoji.colons}\n />\n\n {emoji.colons}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/autosuggest_emoji.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nvar isIE = isBrowser ? !!document.documentElement.currentStyle : false;\nvar hiddenTextarea = isBrowser && document.createElement('textarea');\nvar HIDDEN_TEXTAREA_STYLE = {\n 'min-height': '0',\n 'max-height': 'none',\n height: '0',\n visibility: 'hidden',\n overflow: 'hidden',\n position: 'absolute',\n 'z-index': '-1000',\n top: '0',\n right: '0'\n};\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'font-family', 'font-weight', 'font-size', 'font-style', 'tab-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', 'box-sizing'];\nvar computedStyleCache = {};\nfunction calculateNodeHeight(uiTextNode, uid, useCache, minRows, maxRows) {\n if (useCache === void 0) {\n useCache = false;\n }\n\n if (minRows === void 0) {\n minRows = null;\n }\n\n if (maxRows === void 0) {\n maxRows = null;\n }\n\n if (hiddenTextarea.parentNode === null) {\n document.body.appendChild(hiddenTextarea);\n } // Copy all CSS properties that have an impact on the height of the content in\n // the textbox\n\n\n var nodeStyling = calculateNodeStyling(uiTextNode, uid, useCache);\n\n if (nodeStyling === null) {\n return null;\n }\n\n var paddingSize = nodeStyling.paddingSize,\n borderSize = nodeStyling.borderSize,\n boxSizing = nodeStyling.boxSizing,\n sizingStyle = nodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n // text-lines will not calculated properly as the shadow will technically be\n // narrower for content\n\n Object.keys(sizingStyle).forEach(function (key) {\n hiddenTextarea.style[key] = sizingStyle[key];\n });\n Object.keys(HIDDEN_TEXTAREA_STYLE).forEach(function (key) {\n hiddenTextarea.style.setProperty(key, HIDDEN_TEXTAREA_STYLE[key], 'important');\n });\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || 'x';\n var minHeight = -Infinity;\n var maxHeight = Infinity;\n var height = hiddenTextarea.scrollHeight;\n\n if (boxSizing === 'border-box') {\n // border-box: add border, since height = content + padding + border\n height = height + borderSize;\n } else if (boxSizing === 'content-box') {\n // remove padding, since height = content\n height = height - paddingSize;\n } // measure height of a textarea with a single row\n\n\n hiddenTextarea.value = 'x';\n var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n if (minRows !== null || maxRows !== null) {\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows;\n\n if (boxSizing === 'border-box') {\n minHeight = minHeight + paddingSize + borderSize;\n }\n\n height = Math.max(minHeight, height);\n }\n\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows;\n\n if (boxSizing === 'border-box') {\n maxHeight = maxHeight + paddingSize + borderSize;\n }\n\n height = Math.min(maxHeight, height);\n }\n }\n\n var rowCount = Math.floor(height / singleRowHeight);\n return {\n height: height,\n minHeight: minHeight,\n maxHeight: maxHeight,\n rowCount: rowCount\n };\n}\n\nfunction calculateNodeStyling(node, uid, useCache) {\n if (useCache === void 0) {\n useCache = false;\n }\n\n if (useCache && computedStyleCache[uid]) {\n return computedStyleCache[uid];\n }\n\n var style = window.getComputedStyle(node);\n\n if (style === null) {\n return null;\n }\n\n var sizingStyle = SIZING_STYLE.reduce(function (obj, name) {\n obj[name] = style.getPropertyValue(name);\n return obj;\n }, {});\n var boxSizing = sizingStyle['box-sizing']; // IE (Edge has already correct behaviour) returns content width as computed width\n // so we need to add manually padding and border widths\n\n if (isIE && boxSizing === 'border-box') {\n sizingStyle.width = parseFloat(sizingStyle.width) + parseFloat(style['border-right-width']) + parseFloat(style['border-left-width']) + parseFloat(style['padding-right']) + parseFloat(style['padding-left']) + 'px';\n }\n\n var paddingSize = parseFloat(sizingStyle['padding-bottom']) + parseFloat(sizingStyle['padding-top']);\n var borderSize = parseFloat(sizingStyle['border-bottom-width']) + parseFloat(sizingStyle['border-top-width']);\n var nodeInfo = {\n sizingStyle: sizingStyle,\n paddingSize: paddingSize,\n borderSize: borderSize,\n boxSizing: boxSizing\n };\n\n if (useCache) {\n computedStyleCache[uid] = nodeInfo;\n }\n\n return nodeInfo;\n}\n\nvar purgeCache = function purgeCache(uid) {\n return delete computedStyleCache[uid];\n};\n\nfunction autoInc(seed) {\n if (seed === void 0) {\n seed = 0;\n }\n\n return function () {\n return ++seed;\n };\n}\n\nvar uid = autoInc();\n\n/**\n * <TextareaAutosize />\n */\nvar noop = function noop() {}; // IE11 has a problem with eval source maps, can be reproduced with:\n// eval('\"use strict\"; var onNextFrame = window.cancelAnimationFrame; onNextFrame(4);')\n// so we bind window as context in dev modes\n\n\nvar _ref = isBrowser && window.requestAnimationFrame ? process.env.NODE_ENV !== 'development' ? [window.requestAnimationFrame, window.cancelAnimationFrame] : [window.requestAnimationFrame.bind(window), window.cancelAnimationFrame.bind(window)] : [setTimeout, clearTimeout];\nvar onNextFrame = _ref[0];\nvar clearNextFrameAction = _ref[1];\n\nvar TextareaAutosize =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(TextareaAutosize, _React$Component);\n\n function TextareaAutosize(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n _this._resizeLock = false;\n\n _this._onRootDOMNode = function (node) {\n _this._rootDOMNode = node;\n\n if (_this.props.inputRef) {\n _this.props.inputRef(node);\n }\n };\n\n _this._onChange = function (event) {\n if (!_this._controlled) {\n _this._resizeComponent();\n }\n\n _this.props.onChange(event);\n };\n\n _this._resizeComponent = function (callback) {\n if (callback === void 0) {\n callback = noop;\n }\n\n if (typeof _this._rootDOMNode === 'undefined') {\n callback();\n return;\n }\n\n var nodeHeight = calculateNodeHeight(_this._rootDOMNode, _this._uid, _this.props.useCacheForDOMMeasurements, _this.props.minRows, _this.props.maxRows);\n\n if (nodeHeight === null) {\n callback();\n return;\n }\n\n var height = nodeHeight.height,\n minHeight = nodeHeight.minHeight,\n maxHeight = nodeHeight.maxHeight,\n rowCount = nodeHeight.rowCount;\n _this.rowCount = rowCount;\n\n if (_this.state.height !== height || _this.state.minHeight !== minHeight || _this.state.maxHeight !== maxHeight) {\n _this.setState({\n height: height,\n minHeight: minHeight,\n maxHeight: maxHeight\n }, callback);\n\n return;\n }\n\n callback();\n };\n\n _this.state = {\n height: props.style && props.style.height || 0,\n minHeight: -Infinity,\n maxHeight: Infinity\n };\n _this._uid = uid();\n _this._controlled = typeof props.value === 'string';\n return _this;\n }\n\n var _proto = TextareaAutosize.prototype;\n\n _proto.render = function render() {\n var _props = this.props,\n _minRows = _props.minRows,\n _maxRows = _props.maxRows,\n _onHeightChange = _props.onHeightChange,\n _useCacheForDOMMeasurements = _props.useCacheForDOMMeasurements,\n _inputRef = _props.inputRef,\n props = _objectWithoutProperties(_props, [\"minRows\", \"maxRows\", \"onHeightChange\", \"useCacheForDOMMeasurements\", \"inputRef\"]);\n props.style = _extends({}, props.style, {\n height: this.state.height\n });\n var maxHeight = Math.max(props.style.maxHeight || Infinity, this.state.maxHeight);\n\n if (maxHeight < this.state.height) {\n props.style.overflow = 'hidden';\n }\n\n return React.createElement(\"textarea\", _extends({}, props, {\n onChange: this._onChange,\n ref: this._onRootDOMNode\n }));\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n this._resizeComponent(); // Working around Firefox bug which runs resize listeners even when other JS is running at the same moment\n // causing competing rerenders (due to setState in the listener) in React.\n // More can be found here - facebook/react#6324\n\n\n this._resizeListener = function () {\n if (_this2._resizeLock) {\n return;\n }\n\n _this2._resizeLock = true;\n\n _this2._resizeComponent(function () {\n return _this2._resizeLock = false;\n });\n };\n\n window.addEventListener('resize', this._resizeListener);\n };\n\n _proto.componentWillReceiveProps = function componentWillReceiveProps() {\n var _this3 = this;\n\n this._clearNextFrame();\n\n this._onNextFrameActionId = onNextFrame(function () {\n return _this3._resizeComponent();\n });\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (this.state.height !== prevState.height) {\n this.props.onHeightChange(this.state.height, this);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this._clearNextFrame();\n\n window.removeEventListener('resize', this._resizeListener);\n purgeCache(this._uid);\n };\n\n _proto._clearNextFrame = function _clearNextFrame() {\n clearNextFrameAction(this._onNextFrameActionId);\n };\n\n return TextareaAutosize;\n}(React.Component);\n\nTextareaAutosize.propTypes = {\n value: PropTypes.string,\n onChange: PropTypes.func,\n onHeightChange: PropTypes.func,\n useCacheForDOMMeasurements: PropTypes.bool,\n minRows: PropTypes.number,\n maxRows: PropTypes.number,\n inputRef: PropTypes.func\n};\nTextareaAutosize.defaultProps = {\n onChange: noop,\n onHeightChange: noop,\n useCacheForDOMMeasurements: false\n};\n\nexport default TextareaAutosize;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-textarea-autosize/es/index.js","import { connect } from 'react-redux';\nimport UploadButton from '../components/upload_button';\nimport { uploadCompose } from '../../../actions/compose';\n\nconst mapStateToProps = state => ({\n disabled: state.getIn(['compose', 'is_uploading']) || (state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(m => m.get('type') === 'video')),\n resetFileKey: state.getIn(['compose', 'resetFileKey']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onSelectFile (files) {\n dispatch(uploadCompose(files));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(UploadButton);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_button_container.js","import React from 'react';\nimport IconButton from '../../../components/icon_button';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { connect } from 'react-redux';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nconst messages = defineMessages({\n upload: { id: 'upload_button.label', defaultMessage: 'Add media' },\n});\n\nconst makeMapStateToProps = () => {\n const mapStateToProps = state => ({\n acceptContentTypes: state.getIn(['media_attachments', 'accept_content_types']),\n });\n\n return mapStateToProps;\n};\n\nconst iconStyle = {\n height: null,\n lineHeight: '27px',\n};\n\n@connect(makeMapStateToProps)\n@injectIntl\nexport default class UploadButton extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n onSelectFile: PropTypes.func.isRequired,\n style: PropTypes.object,\n resetFileKey: PropTypes.number,\n acceptContentTypes: ImmutablePropTypes.listOf(PropTypes.string).isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleChange = (e) => {\n if (e.target.files.length > 0) {\n this.props.onSelectFile(e.target.files);\n }\n }\n\n handleClick = () => {\n this.fileElement.click();\n }\n\n setRef = (c) => {\n this.fileElement = c;\n }\n\n render () {\n\n const { intl, resetFileKey, disabled, acceptContentTypes } = this.props;\n\n return (\n <div className='compose-form__upload-button'>\n <IconButton icon='camera' title={intl.formatMessage(messages.upload)} disabled={disabled} onClick={this.handleClick} className='compose-form__upload-button-icon' size={18} inverted style={iconStyle} />\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.upload)}</span>\n <input\n key={resetFileKey}\n ref={this.setRef}\n type='file'\n multiple={false}\n accept={acceptContentTypes.toArray().join(',')}\n onChange={this.handleChange}\n disabled={disabled}\n style={{ display: 'none' }}\n />\n </label>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_button.js","import React from 'react';\nimport Motion from '../features/ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport PropTypes from 'prop-types';\n\nconst Collapsable = ({ fullHeight, isVisible, children }) => (\n <Motion defaultStyle={{ opacity: !isVisible ? 0 : 100, height: isVisible ? fullHeight : 0 }} style={{ opacity: spring(!isVisible ? 0 : 100), height: spring(!isVisible ? 0 : fullHeight) }}>\n {({ opacity, height }) => (\n <div style={{ height: `${height}px`, overflow: 'hidden', opacity: opacity / 100, display: Math.floor(opacity) === 0 ? 'none' : 'block' }}>\n {children}\n </div>\n )}\n </Motion>\n);\n\nCollapsable.propTypes = {\n fullHeight: PropTypes.number.isRequired,\n isVisible: PropTypes.bool.isRequired,\n children: PropTypes.node.isRequired,\n};\n\nexport default Collapsable;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/collapsable.js","import { connect } from 'react-redux';\nimport TextIconButton from '../components/text_icon_button';\nimport { changeComposeSpoilerness } from '../../../actions/compose';\nimport { injectIntl, defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n marked: { id: 'compose_form.spoiler.marked', defaultMessage: 'Text is hidden behind warning' },\n unmarked: { id: 'compose_form.spoiler.unmarked', defaultMessage: 'Text is not hidden' },\n});\n\nconst mapStateToProps = (state, { intl }) => ({\n label: 'CW',\n title: intl.formatMessage(state.getIn(['compose', 'spoiler']) ? messages.marked : messages.unmarked),\n active: state.getIn(['compose', 'spoiler']),\n ariaControls: 'cw-spoiler-input',\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onClick () {\n dispatch(changeComposeSpoilerness());\n },\n\n});\n\nexport default injectIntl(connect(mapStateToProps, mapDispatchToProps)(TextIconButton));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/spoiler_button_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nexport default class TextIconButton extends React.PureComponent {\n\n static propTypes = {\n label: PropTypes.string.isRequired,\n title: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func.isRequired,\n ariaControls: PropTypes.string,\n };\n\n handleClick = (e) => {\n e.preventDefault();\n this.props.onClick();\n }\n\n render () {\n const { label, title, active, ariaControls } = this.props;\n\n return (\n <button title={title} aria-label={title} className={`text-icon-button ${active ? 'active' : ''}`} aria-expanded={active} onClick={this.handleClick} aria-controls={ariaControls}>\n {label}\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/text_icon_button.js","import { connect } from 'react-redux';\nimport PrivacyDropdown from '../components/privacy_dropdown';\nimport { changeComposeVisibility } from '../../../actions/compose';\nimport { openModal, closeModal } from '../../../actions/modal';\nimport { isUserTouching } from '../../../is_mobile';\n\nconst mapStateToProps = state => ({\n isModalOpen: state.get('modal').modalType === 'ACTIONS',\n value: state.getIn(['compose', 'privacy']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (value) {\n dispatch(changeComposeVisibility(value));\n },\n\n isUserTouching,\n onModalOpen: props => dispatch(openModal('ACTIONS', props)),\n onModalClose: () => dispatch(closeModal()),\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PrivacyDropdown);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/privacy_dropdown_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { injectIntl, defineMessages } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport detectPassiveEvents from 'detect-passive-events';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n public_short: { id: 'privacy.public.short', defaultMessage: 'Public' },\n public_long: { id: 'privacy.public.long', defaultMessage: 'Post to public timelines' },\n unlisted_short: { id: 'privacy.unlisted.short', defaultMessage: 'Unlisted' },\n unlisted_long: { id: 'privacy.unlisted.long', defaultMessage: 'Do not show in public timelines' },\n private_short: { id: 'privacy.private.short', defaultMessage: 'Followers-only' },\n private_long: { id: 'privacy.private.long', defaultMessage: 'Post to followers only' },\n direct_short: { id: 'privacy.direct.short', defaultMessage: 'Direct' },\n direct_long: { id: 'privacy.direct.long', defaultMessage: 'Post to mentioned users only' },\n change_privacy: { id: 'privacy.change', defaultMessage: 'Adjust status privacy' },\n});\n\nconst listenerOptions = detectPassiveEvents.hasSupport ? { passive: true } : false;\n\nclass PrivacyDropdownMenu extends React.PureComponent {\n\n static propTypes = {\n style: PropTypes.object,\n items: PropTypes.array.isRequired,\n value: PropTypes.string.isRequired,\n onClose: PropTypes.func.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n handleDocumentClick = e => {\n if (this.node && !this.node.contains(e.target)) {\n this.props.onClose();\n }\n }\n\n handleClick = e => {\n if (e.key === 'Escape') {\n this.props.onClose();\n } else if (!e.key || e.key === 'Enter') {\n const value = e.currentTarget.getAttribute('data-index');\n\n e.preventDefault();\n\n this.props.onClose();\n this.props.onChange(value);\n }\n }\n\n componentDidMount () {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n componentWillUnmount () {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { style, items, value } = this.props;\n\n return (\n <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n {({ opacity, scaleX, scaleY }) => (\n <div className='privacy-dropdown__dropdown' style={{ ...style, opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }} ref={this.setRef}>\n {items.map(item => (\n <div role='button' tabIndex='0' key={item.value} data-index={item.value} onKeyDown={this.handleClick} onClick={this.handleClick} className={classNames('privacy-dropdown__option', { active: item.value === value })}>\n <div className='privacy-dropdown__option__icon'>\n <i className={`fa fa-fw fa-${item.icon}`} />\n </div>\n\n <div className='privacy-dropdown__option__content'>\n <strong>{item.text}</strong>\n {item.meta}\n </div>\n </div>\n ))}\n </div>\n )}\n </Motion>\n );\n }\n\n}\n\n@injectIntl\nexport default class PrivacyDropdown extends React.PureComponent {\n\n static propTypes = {\n isUserTouching: PropTypes.func,\n isModalOpen: PropTypes.bool.isRequired,\n onModalOpen: PropTypes.func,\n onModalClose: PropTypes.func,\n value: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n state = {\n open: false,\n };\n\n handleToggle = () => {\n if (this.props.isUserTouching()) {\n if (this.state.open) {\n this.props.onModalClose();\n } else {\n this.props.onModalOpen({\n actions: this.options.map(option => ({ ...option, active: option.value === this.props.value })),\n onClick: this.handleModalActionClick,\n });\n }\n } else {\n this.setState({ open: !this.state.open });\n }\n }\n\n handleModalActionClick = (e) => {\n e.preventDefault();\n\n const { value } = this.options[e.currentTarget.getAttribute('data-index')];\n\n this.props.onModalClose();\n this.props.onChange(value);\n }\n\n handleKeyDown = e => {\n switch(e.key) {\n case 'Enter':\n this.handleToggle();\n break;\n case 'Escape':\n this.handleClose();\n break;\n }\n }\n\n handleClose = () => {\n this.setState({ open: false });\n }\n\n handleChange = value => {\n this.props.onChange(value);\n }\n\n componentWillMount () {\n const { intl: { formatMessage } } = this.props;\n\n this.options = [\n { icon: 'globe', value: 'public', text: formatMessage(messages.public_short), meta: formatMessage(messages.public_long) },\n { icon: 'unlock-alt', value: 'unlisted', text: formatMessage(messages.unlisted_short), meta: formatMessage(messages.unlisted_long) },\n { icon: 'lock', value: 'private', text: formatMessage(messages.private_short), meta: formatMessage(messages.private_long) },\n { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) },\n ];\n }\n\n render () {\n const { value, intl } = this.props;\n const { open } = this.state;\n\n const valueOption = this.options.find(item => item.value === value);\n\n return (\n <div className={classNames('privacy-dropdown', { active: open })} onKeyDown={this.handleKeyDown}>\n <div className={classNames('privacy-dropdown__value', { active: this.options.indexOf(valueOption) === 0 })}>\n <IconButton\n className='privacy-dropdown__value-icon'\n icon={valueOption.icon}\n title={intl.formatMessage(messages.change_privacy)}\n size={18}\n expanded={open}\n active={open}\n inverted\n onClick={this.handleToggle}\n style={{ height: null, lineHeight: '27px' }}\n />\n </div>\n\n <Overlay show={open} placement='bottom' target={this}>\n <PrivacyDropdownMenu\n items={this.options}\n value={value}\n onClose={this.handleClose}\n onChange={this.handleChange}\n />\n </Overlay>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/privacy_dropdown.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport IconButton from '../../../components/icon_button';\nimport { changeComposeSensitivity } from '../../../actions/compose';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { injectIntl, defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n marked: { id: 'compose_form.sensitive.marked', defaultMessage: 'Media is marked as sensitive' },\n unmarked: { id: 'compose_form.sensitive.unmarked', defaultMessage: 'Media is not marked as sensitive' },\n});\n\nconst mapStateToProps = state => ({\n visible: state.getIn(['compose', 'media_attachments']).size > 0,\n active: state.getIn(['compose', 'sensitive']),\n disabled: state.getIn(['compose', 'spoiler']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onClick () {\n dispatch(changeComposeSensitivity());\n },\n\n});\n\nclass SensitiveButton extends React.PureComponent {\n\n static propTypes = {\n visible: PropTypes.bool,\n active: PropTypes.bool,\n disabled: PropTypes.bool,\n onClick: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { visible, active, disabled, onClick, intl } = this.props;\n\n return (\n <Motion defaultStyle={{ scale: 0.87 }} style={{ scale: spring(visible ? 1 : 0.87, { stiffness: 200, damping: 3 }) }}>\n {({ scale }) => {\n const icon = active ? 'eye-slash' : 'eye';\n const className = classNames('compose-form__sensitive-button', {\n 'compose-form__sensitive-button--visible': visible,\n });\n return (\n <div className={className} style={{ transform: `scale(${scale})` }}>\n <IconButton\n className='compose-form__sensitive-button__icon'\n title={intl.formatMessage(active ? messages.marked : messages.unmarked)}\n icon={icon}\n onClick={onClick}\n size={18}\n active={active}\n disabled={disabled}\n style={{ lineHeight: null, height: null }}\n inverted\n />\n </div>\n );\n }}\n </Motion>\n );\n }\n\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(injectIntl(SensitiveButton));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/sensitive_button_container.js","import { connect } from 'react-redux';\nimport EmojiPickerDropdown from '../components/emoji_picker_dropdown';\nimport { changeSetting } from '../../../actions/settings';\nimport { createSelector } from 'reselect';\nimport { Map as ImmutableMap } from 'immutable';\nimport { useEmoji } from '../../../actions/emojis';\n\nconst perLine = 8;\nconst lines = 2;\n\nconst DEFAULTS = [\n '+1',\n 'grinning',\n 'kissing_heart',\n 'heart_eyes',\n 'laughing',\n 'stuck_out_tongue_winking_eye',\n 'sweat_smile',\n 'joy',\n 'yum',\n 'disappointed',\n 'thinking_face',\n 'weary',\n 'sob',\n 'sunglasses',\n 'heart',\n 'ok_hand',\n];\n\nconst getFrequentlyUsedEmojis = createSelector([\n state => state.getIn(['settings', 'frequentlyUsedEmojis'], ImmutableMap()),\n], emojiCounters => {\n let emojis = emojiCounters\n .keySeq()\n .sort((a, b) => emojiCounters.get(a) - emojiCounters.get(b))\n .reverse()\n .slice(0, perLine * lines)\n .toArray();\n\n if (emojis.length < DEFAULTS.length) {\n emojis = emojis.concat(DEFAULTS.slice(0, DEFAULTS.length - emojis.length));\n }\n\n return emojis;\n});\n\nconst getCustomEmojis = createSelector([\n state => state.get('custom_emojis'),\n], emojis => emojis.filter(e => e.get('visible_in_picker')).sort((a, b) => {\n const aShort = a.get('shortcode').toLowerCase();\n const bShort = b.get('shortcode').toLowerCase();\n\n if (aShort < bShort) {\n return -1;\n } else if (aShort > bShort ) {\n return 1;\n } else {\n return 0;\n }\n}));\n\nconst mapStateToProps = state => ({\n custom_emojis: getCustomEmojis(state),\n skinTone: state.getIn(['settings', 'skinTone']),\n frequentlyUsedEmojis: getFrequentlyUsedEmojis(state),\n});\n\nconst mapDispatchToProps = (dispatch, { onPickEmoji }) => ({\n onSkinTone: skinTone => {\n dispatch(changeSetting(['skinTone'], skinTone));\n },\n\n onPickEmoji: emoji => {\n dispatch(useEmoji(emoji));\n\n if (onPickEmoji) {\n onPickEmoji(emoji);\n }\n },\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(EmojiPickerDropdown);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { EmojiPicker as EmojiPickerAsync } from '../../ui/util/async-components';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport classNames from 'classnames';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport detectPassiveEvents from 'detect-passive-events';\nimport { buildCustomEmojis } from '../../emoji/emoji';\n\nconst messages = defineMessages({\n emoji: { id: 'emoji_button.label', defaultMessage: 'Insert emoji' },\n emoji_search: { id: 'emoji_button.search', defaultMessage: 'Search...' },\n emoji_not_found: { id: 'emoji_button.not_found', defaultMessage: 'No emojos!! (╯°□°)╯︵ ┻━┻' },\n custom: { id: 'emoji_button.custom', defaultMessage: 'Custom' },\n recent: { id: 'emoji_button.recent', defaultMessage: 'Frequently used' },\n search_results: { id: 'emoji_button.search_results', defaultMessage: 'Search results' },\n people: { id: 'emoji_button.people', defaultMessage: 'People' },\n nature: { id: 'emoji_button.nature', defaultMessage: 'Nature' },\n food: { id: 'emoji_button.food', defaultMessage: 'Food & Drink' },\n activity: { id: 'emoji_button.activity', defaultMessage: 'Activity' },\n travel: { id: 'emoji_button.travel', defaultMessage: 'Travel & Places' },\n objects: { id: 'emoji_button.objects', defaultMessage: 'Objects' },\n symbols: { id: 'emoji_button.symbols', defaultMessage: 'Symbols' },\n flags: { id: 'emoji_button.flags', defaultMessage: 'Flags' },\n});\n\nconst assetHost = process.env.CDN_HOST || '';\nlet EmojiPicker, Emoji; // load asynchronously\n\nconst backgroundImageFn = () => `${assetHost}/emoji/sheet.png`;\nconst listenerOptions = detectPassiveEvents.hasSupport ? { passive: true } : false;\n\nconst categoriesSort = [\n 'recent',\n 'custom',\n 'people',\n 'nature',\n 'foods',\n 'activity',\n 'places',\n 'objects',\n 'symbols',\n 'flags',\n];\n\nclass ModifierPickerMenu extends React.PureComponent {\n\n static propTypes = {\n active: PropTypes.bool,\n onSelect: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n };\n\n handleClick = e => {\n this.props.onSelect(e.currentTarget.getAttribute('data-index') * 1);\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.active) {\n this.attachListeners();\n } else {\n this.removeListeners();\n }\n }\n\n componentWillUnmount () {\n this.removeListeners();\n }\n\n handleDocumentClick = e => {\n if (this.node && !this.node.contains(e.target)) {\n this.props.onClose();\n }\n }\n\n attachListeners () {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n removeListeners () {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { active } = this.props;\n\n return (\n <div className='emoji-picker-dropdown__modifiers__menu' style={{ display: active ? 'block' : 'none' }} ref={this.setRef}>\n <button onClick={this.handleClick} data-index={1}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={1} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={2}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={2} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={3}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={3} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={4}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={4} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={5}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={5} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={6}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={6} backgroundImageFn={backgroundImageFn} /></button>\n </div>\n );\n }\n\n}\n\nclass ModifierPicker extends React.PureComponent {\n\n static propTypes = {\n active: PropTypes.bool,\n modifier: PropTypes.number,\n onChange: PropTypes.func,\n onClose: PropTypes.func,\n onOpen: PropTypes.func,\n };\n\n handleClick = () => {\n if (this.props.active) {\n this.props.onClose();\n } else {\n this.props.onOpen();\n }\n }\n\n handleSelect = modifier => {\n this.props.onChange(modifier);\n this.props.onClose();\n }\n\n render () {\n const { active, modifier } = this.props;\n\n return (\n <div className='emoji-picker-dropdown__modifiers'>\n <Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={modifier} onClick={this.handleClick} backgroundImageFn={backgroundImageFn} />\n <ModifierPickerMenu active={active} onSelect={this.handleSelect} onClose={this.props.onClose} />\n </div>\n );\n }\n\n}\n\n@injectIntl\nclass EmojiPickerMenu extends React.PureComponent {\n\n static propTypes = {\n custom_emojis: ImmutablePropTypes.list,\n frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.string),\n loading: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onPick: PropTypes.func.isRequired,\n style: PropTypes.object,\n placement: PropTypes.string,\n arrowOffsetLeft: PropTypes.string,\n arrowOffsetTop: PropTypes.string,\n intl: PropTypes.object.isRequired,\n skinTone: PropTypes.number.isRequired,\n onSkinTone: PropTypes.func.isRequired,\n };\n\n static defaultProps = {\n style: {},\n loading: true,\n placement: 'bottom',\n frequentlyUsedEmojis: [],\n };\n\n state = {\n modifierOpen: false,\n };\n\n handleDocumentClick = e => {\n if (this.node && !this.node.contains(e.target)) {\n this.props.onClose();\n }\n }\n\n componentDidMount () {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n componentWillUnmount () {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n setRef = c => {\n this.node = c;\n }\n\n getI18n = () => {\n const { intl } = this.props;\n\n return {\n search: intl.formatMessage(messages.emoji_search),\n notfound: intl.formatMessage(messages.emoji_not_found),\n categories: {\n search: intl.formatMessage(messages.search_results),\n recent: intl.formatMessage(messages.recent),\n people: intl.formatMessage(messages.people),\n nature: intl.formatMessage(messages.nature),\n foods: intl.formatMessage(messages.food),\n activity: intl.formatMessage(messages.activity),\n places: intl.formatMessage(messages.travel),\n objects: intl.formatMessage(messages.objects),\n symbols: intl.formatMessage(messages.symbols),\n flags: intl.formatMessage(messages.flags),\n custom: intl.formatMessage(messages.custom),\n },\n };\n }\n\n handleClick = emoji => {\n if (!emoji.native) {\n emoji.native = emoji.colons;\n }\n\n this.props.onClose();\n this.props.onPick(emoji);\n }\n\n handleModifierOpen = () => {\n this.setState({ modifierOpen: true });\n }\n\n handleModifierClose = () => {\n this.setState({ modifierOpen: false });\n }\n\n handleModifierChange = modifier => {\n this.props.onSkinTone(modifier);\n }\n\n render () {\n const { loading, style, intl, custom_emojis, skinTone, frequentlyUsedEmojis } = this.props;\n\n if (loading) {\n return <div style={{ width: 299 }} />;\n }\n\n const title = intl.formatMessage(messages.emoji);\n const { modifierOpen } = this.state;\n\n return (\n <div className={classNames('emoji-picker-dropdown__menu', { selecting: modifierOpen })} style={style} ref={this.setRef}>\n <EmojiPicker\n perLine={8}\n emojiSize={22}\n sheetSize={32}\n custom={buildCustomEmojis(custom_emojis)}\n color=''\n emoji=''\n set='twitter'\n title={title}\n i18n={this.getI18n()}\n onClick={this.handleClick}\n include={categoriesSort}\n recent={frequentlyUsedEmojis}\n skin={skinTone}\n showPreview={false}\n backgroundImageFn={backgroundImageFn}\n emojiTooltip\n />\n\n <ModifierPicker\n active={modifierOpen}\n modifier={skinTone}\n onOpen={this.handleModifierOpen}\n onClose={this.handleModifierClose}\n onChange={this.handleModifierChange}\n />\n </div>\n );\n }\n\n}\n\n@injectIntl\nexport default class EmojiPickerDropdown extends React.PureComponent {\n\n static propTypes = {\n custom_emojis: ImmutablePropTypes.list,\n frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.string),\n intl: PropTypes.object.isRequired,\n onPickEmoji: PropTypes.func.isRequired,\n onSkinTone: PropTypes.func.isRequired,\n skinTone: PropTypes.number.isRequired,\n };\n\n state = {\n active: false,\n loading: false,\n };\n\n setRef = (c) => {\n this.dropdown = c;\n }\n\n onShowDropdown = () => {\n this.setState({ active: true });\n\n if (!EmojiPicker) {\n this.setState({ loading: true });\n\n EmojiPickerAsync().then(EmojiMart => {\n EmojiPicker = EmojiMart.Picker;\n Emoji = EmojiMart.Emoji;\n\n this.setState({ loading: false });\n }).catch(() => {\n this.setState({ loading: false });\n });\n }\n }\n\n onHideDropdown = () => {\n this.setState({ active: false });\n }\n\n onToggle = (e) => {\n if (!this.state.loading && (!e.key || e.key === 'Enter')) {\n if (this.state.active) {\n this.onHideDropdown();\n } else {\n this.onShowDropdown();\n }\n }\n }\n\n handleKeyDown = e => {\n if (e.key === 'Escape') {\n this.onHideDropdown();\n }\n }\n\n setTargetRef = c => {\n this.target = c;\n }\n\n findTarget = () => {\n return this.target;\n }\n\n render () {\n const { intl, onPickEmoji, onSkinTone, skinTone, frequentlyUsedEmojis } = this.props;\n const title = intl.formatMessage(messages.emoji);\n const { active, loading } = this.state;\n\n return (\n <div className='emoji-picker-dropdown' onKeyDown={this.handleKeyDown}>\n <div ref={this.setTargetRef} className='emoji-button' title={title} aria-label={title} aria-expanded={active} role='button' onClick={this.onToggle} onKeyDown={this.onToggle} tabIndex={0}>\n <img\n className={classNames('emojione', { 'pulse-loading': active && loading })}\n alt='🙂'\n src={`${assetHost}/emoji/1f602.svg`}\n />\n </div>\n\n <Overlay show={active} placement='bottom' target={this.findTarget}>\n <EmojiPickerMenu\n custom_emojis={this.props.custom_emojis}\n loading={loading}\n onClose={this.onHideDropdown}\n onPick={onPickEmoji}\n onSkinTone={onSkinTone}\n skinTone={skinTone}\n frequentlyUsedEmojis={frequentlyUsedEmojis}\n />\n </Overlay>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js","import { connect } from 'react-redux';\nimport UploadForm from '../components/upload_form';\n\nconst mapStateToProps = state => ({\n mediaIds: state.getIn(['compose', 'media_attachments']).map(item => item.get('id')),\n});\n\nexport default connect(mapStateToProps)(UploadForm);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_form_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport UploadProgressContainer from '../containers/upload_progress_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport UploadContainer from '../containers/upload_container';\n\nexport default class UploadForm extends ImmutablePureComponent {\n\n static propTypes = {\n mediaIds: ImmutablePropTypes.list.isRequired,\n };\n\n render () {\n const { mediaIds } = this.props;\n\n return (\n <div className='compose-form__upload-wrapper'>\n <UploadProgressContainer />\n\n <div className='compose-form__uploads-wrapper'>\n {mediaIds.map(id => (\n <UploadContainer id={id} key={id} />\n ))}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_form.js","import { connect } from 'react-redux';\nimport UploadProgress from '../components/upload_progress';\n\nconst mapStateToProps = state => ({\n active: state.getIn(['compose', 'is_uploading']),\n progress: state.getIn(['compose', 'progress']),\n});\n\nexport default connect(mapStateToProps)(UploadProgress);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_progress_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { FormattedMessage } from 'react-intl';\n\nexport default class UploadProgress extends React.PureComponent {\n\n static propTypes = {\n active: PropTypes.bool,\n progress: PropTypes.number,\n };\n\n render () {\n const { active, progress } = this.props;\n\n if (!active) {\n return null;\n }\n\n return (\n <div className='upload-progress'>\n <div className='upload-progress__icon'>\n <i className='fa fa-upload' />\n </div>\n\n <div className='upload-progress__message'>\n <FormattedMessage id='upload_progress.label' defaultMessage='Uploading...' />\n\n <div className='upload-progress__backdrop'>\n <Motion defaultStyle={{ width: 0 }} style={{ width: spring(progress) }}>\n {({ width }) =>\n <div className='upload-progress__tracker' style={{ width: `${width}%` }} />\n }\n </Motion>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_progress.js","import { connect } from 'react-redux';\nimport Upload from '../components/upload';\nimport { undoUploadCompose, changeUploadCompose } from '../../../actions/compose';\nimport { openModal } from '../../../actions/modal';\n\nconst mapStateToProps = (state, { id }) => ({\n media: state.getIn(['compose', 'media_attachments']).find(item => item.get('id') === id),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onUndo: id => {\n dispatch(undoUploadCompose(id));\n },\n\n onDescriptionChange: (id, description) => {\n dispatch(changeUploadCompose(id, { description }));\n },\n\n onOpenFocalPoint: id => {\n dispatch(openModal('FOCAL_POINT', { id }));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Upload);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n description: { id: 'upload_form.description', defaultMessage: 'Describe for the visually impaired' },\n});\n\n@injectIntl\nexport default class Upload extends ImmutablePureComponent {\n\n static propTypes = {\n media: ImmutablePropTypes.map.isRequired,\n intl: PropTypes.object.isRequired,\n onUndo: PropTypes.func.isRequired,\n onDescriptionChange: PropTypes.func.isRequired,\n onOpenFocalPoint: PropTypes.func.isRequired,\n };\n\n state = {\n hovered: false,\n focused: false,\n dirtyDescription: null,\n };\n\n handleUndoClick = () => {\n this.props.onUndo(this.props.media.get('id'));\n }\n\n handleFocalPointClick = () => {\n this.props.onOpenFocalPoint(this.props.media.get('id'));\n }\n\n handleInputChange = e => {\n this.setState({ dirtyDescription: e.target.value });\n }\n\n handleMouseEnter = () => {\n this.setState({ hovered: true });\n }\n\n handleMouseLeave = () => {\n this.setState({ hovered: false });\n }\n\n handleInputFocus = () => {\n this.setState({ focused: true });\n }\n\n handleInputBlur = () => {\n const { dirtyDescription } = this.state;\n\n this.setState({ focused: false, dirtyDescription: null });\n\n if (dirtyDescription !== null) {\n this.props.onDescriptionChange(this.props.media.get('id'), dirtyDescription);\n }\n }\n\n render () {\n const { intl, media } = this.props;\n const active = this.state.hovered || this.state.focused;\n const description = this.state.dirtyDescription || (this.state.dirtyDescription !== '' && media.get('description')) || '';\n const focusX = media.getIn(['meta', 'focus', 'x']);\n const focusY = media.getIn(['meta', 'focus', 'y']);\n const x = ((focusX / 2) + .5) * 100;\n const y = ((focusY / -2) + .5) * 100;\n\n return (\n <div className='compose-form__upload' onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>\n <Motion defaultStyle={{ scale: 0.8 }} style={{ scale: spring(1, { stiffness: 180, damping: 12 }) }}>\n {({ scale }) => (\n <div className='compose-form__upload-thumbnail' style={{ transform: `scale(${scale})`, backgroundImage: `url(${media.get('preview_url')})`, backgroundPosition: `${x}% ${y}%` }}>\n <div className={classNames('compose-form__upload__actions', { active })}>\n <button className='icon-button' onClick={this.handleUndoClick}><i className='fa fa-times' /> <FormattedMessage id='upload_form.undo' defaultMessage='Undo' /></button>\n {media.get('type') === 'image' && <button className='icon-button' onClick={this.handleFocalPointClick}><i className='fa fa-crosshairs' /> <FormattedMessage id='upload_form.focus' defaultMessage='Crop' /></button>}\n </div>\n\n <div className={classNames('compose-form__upload-description', { active })}>\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.description)}</span>\n\n <input\n placeholder={intl.formatMessage(messages.description)}\n type='text'\n value={description}\n maxLength={420}\n onFocus={this.handleInputFocus}\n onChange={this.handleInputChange}\n onBlur={this.handleInputBlur}\n />\n </label>\n </div>\n </div>\n )}\n </Motion>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Warning from '../components/warning';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst APPROX_HASHTAG_RE = /(?:^|[^\\/\\)\\w])#(\\w*[a-zA-Z·]\\w*)/i;\n\nconst mapStateToProps = state => ({\n needsLockWarning: state.getIn(['compose', 'privacy']) === 'private' && !state.getIn(['accounts', me, 'locked']),\n hashtagWarning: state.getIn(['compose', 'privacy']) !== 'public' && APPROX_HASHTAG_RE.test(state.getIn(['compose', 'text'])),\n directMessageWarning: state.getIn(['compose', 'privacy']) === 'direct',\n});\n\nconst WarningWrapper = ({ needsLockWarning, hashtagWarning, directMessageWarning }) => {\n if (needsLockWarning) {\n return <Warning message={<FormattedMessage id='compose_form.lock_disclaimer' defaultMessage='Your account is not {locked}. Anyone can follow you to view your follower-only posts.' values={{ locked: <a href='/settings/profile'><FormattedMessage id='compose_form.lock_disclaimer.lock' defaultMessage='locked' /></a> }} />} />;\n }\n if (hashtagWarning) {\n return <Warning message={<FormattedMessage id='compose_form.hashtag_warning' defaultMessage=\"This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.\" />} />;\n }\n if (directMessageWarning) {\n return <Warning message={<FormattedMessage id='compose_form.direct_message_warning' defaultMessage='This toot will only be visible to all the mentioned users.' />} />;\n }\n\n return null;\n};\n\nWarningWrapper.propTypes = {\n needsLockWarning: PropTypes.bool,\n hashtagWarning: PropTypes.bool,\n directMessageWarning: PropTypes.bool,\n};\n\nexport default connect(mapStateToProps)(WarningWrapper);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/warning_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\n\nexport default class Warning extends React.PureComponent {\n\n static propTypes = {\n message: PropTypes.node.isRequired,\n };\n\n render () {\n const { message } = this.props;\n\n return (\n <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n {({ opacity, scaleX, scaleY }) => (\n <div className='compose-form__warning' style={{ opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }}>\n {message}\n </div>\n )}\n </Motion>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/warning.js","import { urlRegex } from './url_regex';\n\nconst urlPlaceholder = 'xxxxxxxxxxxxxxxxxxxxxxx';\n\nexport function countableText(inputText) {\n return inputText\n .replace(urlRegex, urlPlaceholder)\n .replace(/(^|[^\\/\\w])@(([a-z0-9_]+)@[a-z0-9\\.\\-]+[a-z0-9]+)/ig, '$1@$3');\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/util/counter.js","const regexen = {};\n\nconst regexSupplant = function(regex, flags) {\n flags = flags || '';\n if (typeof regex !== 'string') {\n if (regex.global && flags.indexOf('g') < 0) {\n flags += 'g';\n }\n if (regex.ignoreCase && flags.indexOf('i') < 0) {\n flags += 'i';\n }\n if (regex.multiline && flags.indexOf('m') < 0) {\n flags += 'm';\n }\n\n regex = regex.source;\n }\n return new RegExp(regex.replace(/#\\{(\\w+)\\}/g, function(match, name) {\n var newRegex = regexen[name] || '';\n if (typeof newRegex !== 'string') {\n newRegex = newRegex.source;\n }\n return newRegex;\n }), flags);\n};\n\nconst stringSupplant = function(str, values) {\n return str.replace(/#\\{(\\w+)\\}/g, function(match, name) {\n return values[name] || '';\n });\n};\n\nexport const urlRegex = (function() {\n regexen.spaces_group = /\\x09-\\x0D\\x20\\x85\\xA0\\u1680\\u180E\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000/;\n regexen.invalid_chars_group = /\\uFFFE\\uFEFF\\uFFFF\\u202A-\\u202E/;\n regexen.punct = /\\!'#%&'\\(\\)*\\+,\\\\\\-\\.\\/:;<=>\\?@\\[\\]\\^_{|}~\\$/;\n regexen.validUrlPrecedingChars = regexSupplant(/(?:[^A-Za-z0-9@@$###{invalid_chars_group}]|^)/);\n regexen.invalidDomainChars = stringSupplant('#{punct}#{spaces_group}#{invalid_chars_group}', regexen);\n regexen.validDomainChars = regexSupplant(/[^#{invalidDomainChars}]/);\n regexen.validSubdomain = regexSupplant(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n regexen.validDomainName = regexSupplant(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n regexen.validGTLD = regexSupplant(RegExp(\n '(?:(?:' +\n '삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|' +\n '政务|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|' +\n 'ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|' +\n 'بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|' +\n 'zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|' +\n 'yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|' +\n 'wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|' +\n 'website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|' +\n 'wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|' +\n 'vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|' +\n 'vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|' +\n 'university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|' +\n 'travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|' +\n 'toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|' +\n 'tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|' +\n 'tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|' +\n 'swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|' +\n 'stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|' +\n 'stada|srt|srl|spreadbetting|spot|spiegel|space|soy|sony|song|solutions|solar|sohu|software|' +\n 'softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|' +\n 'showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|' +\n 'sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|' +\n 'science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|' +\n 'sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|' +\n 'saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|' +\n 'rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|' +\n 'repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|' +\n 'realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|' +\n 'protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|' +\n 'pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|' +\n 'pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|' +\n 'pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|' +\n 'pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|' +\n 'onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|' +\n 'obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|' +\n 'nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|' +\n 'net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|' +\n 'msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|' +\n 'monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|' +\n 'miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|' +\n 'mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|' +\n 'makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|' +\n 'lotte|london|lol|loft|locus|locker|loans|loan|lixil|living|live|lipsy|link|linde|lincoln|limo|' +\n 'limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|' +\n 'lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|' +\n 'lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|' +\n 'komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|' +\n 'kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|' +\n 'jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|' +\n 'investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|' +\n 'industries|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|' +\n 'hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|' +\n 'honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|' +\n 'hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|' +\n 'hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|' +\n 'gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|' +\n 'globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|' +\n 'garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|' +\n 'ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|' +\n 'football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|' +\n 'fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|' +\n 'ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|' +\n 'extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|' +\n 'estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|' +\n 'email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|' +\n 'download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|' +\n 'direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|' +\n 'delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|' +\n 'cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|courses|' +\n 'coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|' +\n 'construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|' +\n 'college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|' +\n 'cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|' +\n 'chintai|cheap|chat|chase|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|' +\n 'catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|' +\n 'capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|' +\n 'bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|' +\n 'bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|' +\n 'boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|' +\n 'black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|' +\n 'beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|' +\n 'barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|' +\n 'autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|' +\n 'art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|' +\n 'amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|' +\n 'alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|' +\n 'afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|' +\n 'academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion' +\n ')(?=[^0-9a-zA-Z@]|$))'));\n regexen.validCCTLD = regexSupplant(RegExp(\n '(?:(?:' +\n '한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|' +\n 'ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|' +\n 'بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ελ|' +\n 'zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|' +\n 'tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|' +\n 're|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|' +\n 'mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|' +\n 'ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|' +\n 'gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|' +\n 'do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|' +\n 'bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac' +\n ')(?=[^0-9a-zA-Z@]|$))'));\n regexen.validPunycode = /(?:xn--[0-9a-z]+)/;\n regexen.validSpecialCCTLD = /(?:(?:co|tv)(?=[^0-9a-zA-Z@]|$))/;\n regexen.validDomain = regexSupplant(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/);\n regexen.validPortNumber = /[0-9]+/;\n regexen.pd = /\\u002d\\u058a\\u05be\\u1400\\u1806\\u2010-\\u2015\\u2e17\\u2e1a\\u2e3a\\u2e40\\u301c\\u3030\\u30a0\\ufe31\\ufe58\\ufe63\\uff0d/;\n regexen.validGeneralUrlPathChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?]/i);\n // Allow URL paths to contain up to two nested levels of balanced parens\n // 1. Used in Wikipedia URLs like /Primer_(film)\n // 2. Used in IIS sessions like /S(dfd346)/\n // 3. Used in Rdio URLs like /track/We_Up_(Album_Version_(Edited))/\n regexen.validUrlBalancedParens = regexSupplant(\n '\\\\(' +\n '(?:' +\n '#{validGeneralUrlPathChars}+' +\n '|' +\n // allow one nested level of balanced parentheses\n '(?:' +\n '#{validGeneralUrlPathChars}*' +\n '\\\\(' +\n '#{validGeneralUrlPathChars}+' +\n '\\\\)' +\n '#{validGeneralUrlPathChars}*' +\n ')' +\n ')' +\n '\\\\)',\n 'i');\n // Valid end-of-path chracters (so /foo. does not gobble the period).\n // 1. Allow =&# for empty URL parameters and other URL-join artifacts\n regexen.validUrlPathEndingChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?!\\*';:=\\,\\.\\$%\\[\\]#{pd}~&\\|@]|(?:#{validUrlBalancedParens})/i);\n // Allow @ in a url, but only in the middle. Catch things like http://example.com/@user/\n regexen.validUrlPath = regexSupplant('(?:' +\n '(?:' +\n '#{validGeneralUrlPathChars}*' +\n '(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*' +\n '#{validUrlPathEndingChars}'+\n ')|(?:@#{validGeneralUrlPathChars}+\\/)'+\n ')', 'i');\n regexen.validUrlQueryChars = /[a-z0-9!?\\*'@\\(\\);:&=\\+\\$\\/%#\\[\\]\\-_\\.,~|]/i;\n regexen.validUrlQueryEndingChars = /[a-z0-9_&=#\\/]/i;\n regexen.validUrl = regexSupplant(\n '(' + // $1 URL\n '(https?:\\\\/\\\\/)' + // $2 Protocol\n '(#{validDomain})' + // $3 Domain(s)\n '(?::(#{validPortNumber}))?' + // $4 Port number (optional)\n '(\\\\/#{validUrlPath}*)?' + // $5 URL Path\n '(\\\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?' + // $6 Query String\n ')',\n 'gi');\n return regexen.validUrl;\n}());\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/util/url_regex.js","import { connect } from 'react-redux';\nimport ComposeForm from '../components/compose_form';\nimport { uploadCompose } from '../../../actions/compose';\nimport {\n changeCompose,\n submitCompose,\n clearComposeSuggestions,\n fetchComposeSuggestions,\n selectComposeSuggestion,\n changeComposeSpoilerText,\n insertEmojiCompose,\n} from '../../../actions/compose';\n\nconst mapStateToProps = state => ({\n text: state.getIn(['compose', 'text']),\n suggestion_token: state.getIn(['compose', 'suggestion_token']),\n suggestions: state.getIn(['compose', 'suggestions']),\n spoiler: state.getIn(['compose', 'spoiler']),\n spoiler_text: state.getIn(['compose', 'spoiler_text']),\n privacy: state.getIn(['compose', 'privacy']),\n focusDate: state.getIn(['compose', 'focusDate']),\n preselectDate: state.getIn(['compose', 'preselectDate']),\n is_submitting: state.getIn(['compose', 'is_submitting']),\n is_uploading: state.getIn(['compose', 'is_uploading']),\n showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n anyMedia: state.getIn(['compose', 'media_attachments']).size > 0,\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onChange (text) {\n dispatch(changeCompose(text));\n },\n\n onSubmit () {\n dispatch(submitCompose());\n },\n\n onClearSuggestions () {\n dispatch(clearComposeSuggestions());\n },\n\n onFetchSuggestions (token) {\n dispatch(fetchComposeSuggestions(token));\n },\n\n onSuggestionSelected (position, token, accountId) {\n dispatch(selectComposeSuggestion(position, token, accountId));\n },\n\n onChangeSpoilerText (checked) {\n dispatch(changeComposeSpoilerText(checked));\n },\n\n onPaste (files) {\n dispatch(uploadCompose(files));\n },\n\n onPickEmoji (position, data) {\n dispatch(insertEmojiCompose(position, data));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ComposeForm);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/compose_form_container.js","import React from 'react';\nimport ComposeFormContainer from './containers/compose_form_container';\nimport NavigationContainer from './containers/navigation_container';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { connect } from 'react-redux';\nimport { mountCompose, unmountCompose } from '../../actions/compose';\nimport { Link } from 'react-router-dom';\nimport { injectIntl, defineMessages } from 'react-intl';\nimport SearchContainer from './containers/search_container';\nimport Motion from '../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport SearchResultsContainer from './containers/search_results_container';\nimport { changeComposing } from '../../actions/compose';\n\nconst messages = defineMessages({\n start: { id: 'getting_started.heading', defaultMessage: 'Getting started' },\n home_timeline: { id: 'tabs_bar.home', defaultMessage: 'Home' },\n notifications: { id: 'tabs_bar.notifications', defaultMessage: 'Notifications' },\n public: { id: 'navigation_bar.public_timeline', defaultMessage: 'Federated timeline' },\n community: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },\n preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },\n logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },\n});\n\nconst mapStateToProps = state => ({\n columns: state.getIn(['settings', 'columns']),\n showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Compose extends React.PureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n columns: ImmutablePropTypes.list.isRequired,\n multiColumn: PropTypes.bool,\n showSearch: PropTypes.bool,\n intl: PropTypes.object.isRequired,\n };\n\n componentDidMount () {\n this.props.dispatch(mountCompose());\n }\n\n componentWillUnmount () {\n this.props.dispatch(unmountCompose());\n }\n\n onFocus = () => {\n this.props.dispatch(changeComposing(true));\n }\n\n onBlur = () => {\n this.props.dispatch(changeComposing(false));\n }\n\n render () {\n const { multiColumn, showSearch, intl } = this.props;\n\n let header = '';\n\n if (multiColumn) {\n const { columns } = this.props;\n header = (\n <nav className='drawer__header'>\n <Link to='/getting-started' className='drawer__tab' title={intl.formatMessage(messages.start)} aria-label={intl.formatMessage(messages.start)}><i role='img' className='fa fa-fw fa-asterisk' /></Link>\n {!columns.some(column => column.get('id') === 'HOME') && (\n <Link to='/timelines/home' className='drawer__tab' title={intl.formatMessage(messages.home_timeline)} aria-label={intl.formatMessage(messages.home_timeline)}><i role='img' className='fa fa-fw fa-home' /></Link>\n )}\n {!columns.some(column => column.get('id') === 'NOTIFICATIONS') && (\n <Link to='/notifications' className='drawer__tab' title={intl.formatMessage(messages.notifications)} aria-label={intl.formatMessage(messages.notifications)}><i role='img' className='fa fa-fw fa-bell' /></Link>\n )}\n {!columns.some(column => column.get('id') === 'COMMUNITY') && (\n <Link to='/timelines/public/local' className='drawer__tab' title={intl.formatMessage(messages.community)} aria-label={intl.formatMessage(messages.community)}><i role='img' className='fa fa-fw fa-users' /></Link>\n )}\n {!columns.some(column => column.get('id') === 'PUBLIC') && (\n <Link to='/timelines/public' className='drawer__tab' title={intl.formatMessage(messages.public)} aria-label={intl.formatMessage(messages.public)}><i role='img' className='fa fa-fw fa-globe' /></Link>\n )}\n <a href='/user-settings' className='drawer__tab' title={intl.formatMessage(messages.preferences)} aria-label={intl.formatMessage(messages.preferences)}><i role='img' className='fa fa-fw fa-cog' /></a>\n <a href='/auth/sign_out' className='drawer__tab' data-method='delete' title={intl.formatMessage(messages.logout)} aria-label={intl.formatMessage(messages.logout)}><i role='img' className='fa fa-fw fa-sign-out' /></a>\n </nav>\n );\n }\n\n return (\n <div className='drawer'>\n {header}\n\n <SearchContainer />\n\n <div className='drawer__pager'>\n <div className='drawer__inner' onFocus={this.onFocus}>\n <NavigationContainer onClose={this.onBlur} />\n <ComposeFormContainer />\n {multiColumn && (\n <div className='drawer__inner__mastodon'>\n </div>\n )}\n </div>\n\n <Motion defaultStyle={{ x: -100 }} style={{ x: spring(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }}>\n {({ x }) => (\n <div className='drawer__inner darker' style={{ transform: `translateX(${x}%)`, visibility: x === -100 ? 'hidden' : 'visible' }}>\n <SearchResultsContainer />\n </div>\n )}\n </Motion>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Avatar from '../../../components/avatar';\nimport IconButton from '../../../components/icon_button';\nimport Permalink from '../../../components/permalink';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class NavigationBar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onClose: PropTypes.func,\n };\n\n render () {\n return (\n <div className='navigation-bar'>\n <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>\n <span style={{ display: 'none' }}>{this.props.account.get('acct')}</span>\n <Avatar account={this.props.account} size={40} />\n </Permalink>\n\n <div className='navigation-bar__profile'>\n <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>\n <strong className='navigation-bar__profile-account'>@{this.props.account.get('acct')}</strong>\n </Permalink>\n\n <a href='/settings/profile' className='navigation-bar__profile-edit'><FormattedMessage id='navigation_bar.edit_profile' defaultMessage='Edit profile' /></a>\n </div>\n\n <IconButton title='' icon='close' onClick={this.props.onClose} />\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/navigation_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { searchEnabled } from '../../../initial_state';\n\nconst messages = defineMessages({\n placeholder: { id: 'search.placeholder', defaultMessage: 'Search' },\n});\n\nclass SearchPopout extends React.PureComponent {\n\n static propTypes = {\n style: PropTypes.object,\n };\n\n render () {\n const { style } = this.props;\n const extraInformation = searchEnabled ? <FormattedMessage id='search_popout.tips.full_text' defaultMessage='Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.' /> : <FormattedMessage id='search_popout.tips.text' defaultMessage='Simple text returns matching display names, usernames and hashtags' />;\n return (\n <div style={{ ...style, position: 'absolute', width: 315 }}>\n <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n {({ opacity, scaleX, scaleY }) => (\n <div className='search-popout' style={{ opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }}>\n <h4><FormattedMessage id='search_popout.search_format' defaultMessage='Advanced search format' /></h4>\n\n <ul>\n <li><em>#example</em> <FormattedMessage id='search_popout.tips.hashtag' defaultMessage='hashtag' /></li>\n <li><em>@username@domain</em> <FormattedMessage id='search_popout.tips.user' defaultMessage='user' /></li>\n <li><em>URL</em> <FormattedMessage id='search_popout.tips.user' defaultMessage='user' /></li>\n <li><em>URL</em> <FormattedMessage id='search_popout.tips.status' defaultMessage='status' /></li>\n </ul>\n\n {extraInformation}\n </div>\n )}\n </Motion>\n </div>\n );\n }\n\n}\n\n@injectIntl\nexport default class Search extends React.PureComponent {\n\n static propTypes = {\n value: PropTypes.string.isRequired,\n submitted: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n onSubmit: PropTypes.func.isRequired,\n onClear: PropTypes.func.isRequired,\n onShow: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n state = {\n expanded: false,\n };\n\n handleChange = (e) => {\n this.props.onChange(e.target.value);\n }\n\n handleClear = (e) => {\n e.preventDefault();\n\n if (this.props.value.length > 0 || this.props.submitted) {\n this.props.onClear();\n }\n }\n\n handleKeyDown = (e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n this.props.onSubmit();\n } else if (e.key === 'Escape') {\n document.querySelector('.ui').parentElement.focus();\n }\n }\n\n noop () {\n\n }\n\n handleFocus = () => {\n this.setState({ expanded: true });\n this.props.onShow();\n }\n\n handleBlur = () => {\n this.setState({ expanded: false });\n }\n\n render () {\n const { intl, value, submitted } = this.props;\n const { expanded } = this.state;\n const hasValue = value.length > 0 || submitted;\n\n return (\n <div className='search'>\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.placeholder)}</span>\n <input\n className='search__input'\n type='text'\n placeholder={intl.formatMessage(messages.placeholder)}\n value={value}\n onChange={this.handleChange}\n onKeyUp={this.handleKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </label>\n\n <div role='button' tabIndex='0' className='search__icon' onClick={this.handleClear}>\n <i className={`fa fa-search ${hasValue ? '' : 'active'}`} />\n <i aria-label={intl.formatMessage(messages.placeholder)} className={`fa fa-times-circle ${hasValue ? 'active' : ''}`} />\n </div>\n\n <Overlay show={expanded && !hasValue} placement='bottom' target={this}>\n <SearchPopout />\n </Overlay>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/search.js","import { connect } from 'react-redux';\nimport NavigationBar from '../components/navigation_bar';\nimport { me } from '../../../initial_state';\n\nconst mapStateToProps = state => {\n return {\n account: state.getIn(['accounts', me]),\n };\n};\n\nexport default connect(mapStateToProps)(NavigationBar);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/navigation_container.js","import { connect } from 'react-redux';\nimport {\n changeSearch,\n clearSearch,\n submitSearch,\n showSearch,\n} from '../../../actions/search';\nimport Search from '../components/search';\n\nconst mapStateToProps = state => ({\n value: state.getIn(['search', 'value']),\n submitted: state.getIn(['search', 'submitted']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (value) {\n dispatch(changeSearch(value));\n },\n\n onClear () {\n dispatch(clearSearch());\n },\n\n onSubmit () {\n dispatch(submitSearch());\n },\n\n onShow () {\n dispatch(showSearch());\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Search);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/search_container.js","import { connect } from 'react-redux';\nimport SearchResults from '../components/search_results';\n\nconst mapStateToProps = state => ({\n results: state.getIn(['search', 'results']),\n});\n\nexport default connect(mapStateToProps)(SearchResults);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/search_results_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport AccountContainer from '../../../containers/account_container';\nimport StatusContainer from '../../../containers/status_container';\nimport { Link } from 'react-router-dom';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class SearchResults extends ImmutablePureComponent {\n\n static propTypes = {\n results: ImmutablePropTypes.map.isRequired,\n };\n\n render () {\n const { results } = this.props;\n\n let accounts, statuses, hashtags;\n let count = 0;\n\n if (results.get('accounts') && results.get('accounts').size > 0) {\n count += results.get('accounts').size;\n accounts = (\n <div className='search-results__section'>\n <h5><FormattedMessage id='search_results.accounts' defaultMessage='People' /></h5>\n\n {results.get('accounts').map(accountId => <AccountContainer key={accountId} id={accountId} />)}\n </div>\n );\n }\n\n if (results.get('statuses') && results.get('statuses').size > 0) {\n count += results.get('statuses').size;\n statuses = (\n <div className='search-results__section'>\n <h5><FormattedMessage id='search_results.statuses' defaultMessage='Toots' /></h5>\n\n {results.get('statuses').map(statusId => <StatusContainer key={statusId} id={statusId} />)}\n </div>\n );\n }\n\n if (results.get('hashtags') && results.get('hashtags').size > 0) {\n count += results.get('hashtags').size;\n hashtags = (\n <div className='search-results__section'>\n <h5><FormattedMessage id='search_results.hashtags' defaultMessage='Hashtags' /></h5>\n\n {results.get('hashtags').map(hashtag => (\n <Link key={hashtag} className='search-results__hashtag' to={`/timelines/tag/${hashtag}`}>\n #{hashtag}\n </Link>\n ))}\n </div>\n );\n }\n\n return (\n <div className='search-results'>\n <div className='search-results__header'>\n <FormattedMessage id='search_results.total' defaultMessage='{count, number} {count, plural, one {result} other {results}}' values={{ count }} />\n </div>\n\n {accounts}\n {statuses}\n {hashtags}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/search_results.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/compose.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/features/compose/components/compose_form.js","webpack:///./app/javascript/mastodon/features/compose/components/character_counter.js","webpack:///./app/javascript/mastodon/features/compose/containers/reply_indicator_container.js","webpack:///./app/javascript/mastodon/features/compose/components/reply_indicator.js","webpack:///./app/javascript/mastodon/components/autosuggest_textarea.js","webpack:///./app/javascript/mastodon/features/compose/containers/autosuggest_account_container.js","webpack:///./app/javascript/mastodon/features/compose/components/autosuggest_account.js","webpack:///./app/javascript/mastodon/components/autosuggest_emoji.js","webpack:///./node_modules/react-textarea-autosize/es/index.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_button_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_button.js","webpack:///./app/javascript/mastodon/components/collapsable.js","webpack:///./app/javascript/mastodon/features/compose/containers/spoiler_button_container.js","webpack:///./app/javascript/mastodon/features/compose/components/text_icon_button.js","webpack:///./app/javascript/mastodon/features/compose/containers/privacy_dropdown_container.js","webpack:///./app/javascript/mastodon/features/compose/components/privacy_dropdown.js","webpack:///./app/javascript/mastodon/features/compose/containers/sensitive_button_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js","webpack:///./app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_form_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_form.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_progress_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_progress.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload.js","webpack:///./app/javascript/mastodon/features/compose/containers/warning_container.js","webpack:///./app/javascript/mastodon/features/compose/components/warning.js","webpack:///./app/javascript/mastodon/features/compose/util/counter.js","webpack:///./app/javascript/mastodon/features/compose/util/url_regex.js","webpack:///./app/javascript/mastodon/features/compose/containers/compose_form_container.js","webpack:///./app/javascript/mastodon/features/compose/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/features/compose/components/navigation_bar.js","webpack:///./app/javascript/mastodon/features/compose/components/search.js","webpack:///./app/javascript/mastodon/features/compose/containers/navigation_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/search_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/search_results_container.js","webpack:///./app/javascript/mastodon/features/compose/components/search_results.js"],"names":["webpackJsonp","282","module","__webpack_exports__","__webpack_require__","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","id","defaultMessage","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","props","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","this","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","302","d","ComposeForm","_class","_class2","_temp2","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5__character_counter__","__WEBPACK_IMPORTED_MODULE_6__components_button__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8_prop_types__","__WEBPACK_IMPORTED_MODULE_8_prop_types___default","__WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__","__WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__","__WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__","__WEBPACK_IMPORTED_MODULE_13__components_collapsable__","__WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__","__WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__","__WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__","__WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__","__WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__","__WEBPACK_IMPORTED_MODULE_19__containers_warning_container__","__WEBPACK_IMPORTED_MODULE_20__is_mobile__","__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_22_stringz__","__WEBPACK_IMPORTED_MODULE_23__util_counter__","__WEBPACK_IMPORTED_MODULE_24__initial_state__","placeholder","spoiler_placeholder","publish","publishLoud","_ImmutablePureCompone","_temp","_this","_ret","_len","arguments","length","args","Array","_key","call","apply","concat","handleChange","onChange","target","value","handleKeyDown","keyCode","ctrlKey","metaKey","handleSubmit","text","autosuggestTextarea","textarea","onSubmit","onSuggestionsClearRequested","onClearSuggestions","onSuggestionsFetchRequested","token","onFetchSuggestions","onSuggestionSelected","tokenStart","_restoreCaret","handleChangeSpoilerText","onChangeSpoilerText","setAutosuggestTextarea","c","handleEmojiPick","data","position","selectionStart","emojiChar","native","onPickEmoji","prototype","componentWillReceiveProps","nextProps","is_uploading","componentDidUpdate","prevProps","focusDate","selectionEnd","preselectDate","search","setSelectionRange","focus","is_submitting","render","_props","onPaste","showSearch","anyMedia","disabled","spoiler_text","join","disabledButton","trim","publishText","privacy","className","isVisible","spoiler","fullHeight","style","display","onKeyDown","a","createElement","ref","suggestions","autoFocus","window","innerWidth","max","onClick","block","propTypes","object","isRequired","string","suggestion_token","list","bool","instanceOf","Date","func","defaultProps","303","CharacterCounter","__WEBPACK_IMPORTED_MODULE_5_stringz__","_React$PureComponent","checkRemainingText","diff","PureComponent","304","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__actions_compose__","__WEBPACK_IMPORTED_MODULE_2__selectors__","__WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__","getIn","onCancel","305","ReplyIndicator","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","__WEBPACK_IMPORTED_MODULE_7__components_avatar__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9__components_display_name__","__WEBPACK_IMPORTED_MODULE_10_react_intl__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__rtl__","cancel","handleClick","handleAccountClick","button","preventDefault","context","history","push","content","__html","direction","title","icon","href","size","dangerouslySetInnerHTML","contextTypes","map","306","AutosuggestTextarea","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__","__WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__rtl__","__WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__","__WEBPACK_IMPORTED_MODULE_13_classnames__","__WEBPACK_IMPORTED_MODULE_13_classnames___default","textAtCursorMatchesToken","str","caretPosition","word","left","slice","right","indexOf","toLowerCase","suggestionsHidden","selectedSuggestion","lastToken","_textAtCursorMatchesT","setState","_this$props","_this$state","key","Math","min","stopPropagation","defaultPrevented","onKeyUp","document","querySelector","parentElement","onBlur","onSuggestionClick","suggestion","currentTarget","getAttribute","setTextarea","clipboardData","files","renderSuggestion","i","inner","emoji","role","tabIndex","data-index","selected","onMouseDown","inputRef","aria-autocomplete","isEmpty","307","__WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__","getAccount","308","AutosuggestAccount","__WEBPACK_IMPORTED_MODULE_5__components_avatar__","__WEBPACK_IMPORTED_MODULE_6__components_display_name__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","309","process","AutosuggestEmoji","__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__","__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default","assetHost","env","CDN_HOST","url","custom","imageUrl","mapping","replace","filename","src","alt","colons","310","_extends","assign","source","hasOwnProperty","_inheritsLoose","subClass","superClass","create","constructor","__proto__","_objectWithoutProperties","excluded","sourceKeys","keys","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","calculateNodeHeight","uiTextNode","uid","useCache","minRows","maxRows","hiddenTextarea","parentNode","body","appendChild","nodeStyling","calculateNodeStyling","paddingSize","borderSize","boxSizing","sizingStyle","forEach","HIDDEN_TEXTAREA_STYLE","setProperty","minHeight","Infinity","maxHeight","height","scrollHeight","singleRowHeight","rowCount","floor","node","computedStyleCache","getComputedStyle","SIZING_STYLE","reduce","obj","getPropertyValue","isIE","width","parseFloat","nodeInfo","__WEBPACK_IMPORTED_MODULE_0_react__","__WEBPACK_IMPORTED_MODULE_0_react___default","__WEBPACK_IMPORTED_MODULE_1_prop_types__","isBrowser","documentElement","currentStyle","min-height","max-height","visibility","overflow","z-index","top","purgeCache","seed","noop","requestAnimationFrame","cancelAnimationFrame","setTimeout","clearTimeout","onNextFrame","clearNextFrameAction","TextareaAutosize","_React$Component","_resizeLock","_onRootDOMNode","_rootDOMNode","_onChange","event","_controlled","_resizeComponent","callback","nodeHeight","_uid","useCacheForDOMMeasurements","_proto","onHeightChange","componentDidMount","_this2","_resizeListener","addEventListener","_this3","_clearNextFrame","_onNextFrameActionId","prevState","componentWillUnmount","removeEventListener","Component","311","__WEBPACK_IMPORTED_MODULE_1__components_upload_button__","__WEBPACK_IMPORTED_MODULE_2__actions_compose__","mapStateToProps","some","m","resetFileKey","onSelectFile","312","UploadButton","_dec","__WEBPACK_IMPORTED_MODULE_5__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8_react_redux__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default","upload","acceptContentTypes","iconStyle","lineHeight","fileElement","click","setRef","inverted","multiple","accept","toArray","number","listOf","313","__WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default","Collapsable","children","defaultStyle","opacity","_ref2","314","__WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","marked","unmarked","label","active","ariaControls","315","TextIconButton","aria-label","aria-expanded","aria-controls","316","__WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__","__WEBPACK_IMPORTED_MODULE_3__actions_modal__","__WEBPACK_IMPORTED_MODULE_4__is_mobile__","isModalOpen","modalType","isUserTouching","onModalOpen","onModalClose","317","PrivacyDropdown","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__","__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default","__WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_10_detect_passive_events__","__WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default","__WEBPACK_IMPORTED_MODULE_11_classnames__","__WEBPACK_IMPORTED_MODULE_11_classnames___default","public_short","public_long","unlisted_short","unlisted_long","private_short","private_long","direct_short","direct_long","change_privacy","listenerOptions","hasSupport","passive","PrivacyDropdownMenu","handleDocumentClick","contains","onClose","items","scaleX","scaleY","damping","stiffness","transform","item","meta","_React$PureComponent2","_ret2","_len2","_key2","open","handleToggle","actions","options","option","handleModalActionClick","handleClose","componentWillMount","_props2","valueOption","find","expanded","show","placement","318","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_classnames__","__WEBPACK_IMPORTED_MODULE_6_classnames___default","__WEBPACK_IMPORTED_MODULE_7__components_icon_button__","__WEBPACK_IMPORTED_MODULE_8__actions_compose__","__WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_11_react_intl__","visible","SensitiveButton","scale","compose-form__sensitive-button--visible","319","__WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","__WEBPACK_IMPORTED_MODULE_3_reselect__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5__actions_emojis__","DEFAULTS","getFrequentlyUsedEmojis","emojiCounters","emojis","keySeq","sort","b","reverse","perLine","getCustomEmojis","filter","aShort","bShort","custom_emojis","skinTone","frequentlyUsedEmojis","onSkinTone","320","EmojiPickerDropdown","_class3","_class4","_temp4","_class5","__WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__","__WEBPACK_IMPORTED_MODULE_8_classnames__","__WEBPACK_IMPORTED_MODULE_8_classnames___default","__WEBPACK_IMPORTED_MODULE_9_detect_passive_events__","__WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default","__WEBPACK_IMPORTED_MODULE_10__emoji_emoji__","emoji_search","emoji_not_found","recent","search_results","people","nature","food","activity","travel","objects","symbols","flags","EmojiPicker","Emoji","backgroundImageFn","categoriesSort","ModifierPickerMenu","onSelect","attachListeners","removeListeners","set","sheetSize","skin","ModifierPicker","onOpen","handleSelect","modifier","EmojiPickerMenu","_React$PureComponent3","_temp3","_ret3","_len3","_key3","modifierOpen","getI18n","notfound","categories","foods","places","onPick","handleModifierOpen","handleModifierClose","handleModifierChange","loading","selecting","emojiSize","color","i18n","include","showPreview","emojiTooltip","_React$PureComponent4","_temp5","_this4","_ret4","_len4","_key4","dropdown","onShowDropdown","then","EmojiMart","Picker","catch","onHideDropdown","onToggle","setTargetRef","findTarget","_props3","_state","pulse-loading","321","__WEBPACK_IMPORTED_MODULE_1__components_upload_form__","mediaIds","322","UploadForm","__WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_8__containers_upload_container__","323","__WEBPACK_IMPORTED_MODULE_1__components_upload_progress__","progress","324","UploadProgress","__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default","325","__WEBPACK_IMPORTED_MODULE_1__components_upload__","onUndo","onDescriptionChange","description","onOpenFocalPoint","326","Upload","__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default","hovered","focused","dirtyDescription","handleUndoClick","handleFocalPointClick","handleInputChange","handleMouseEnter","handleMouseLeave","handleInputFocus","handleInputBlur","focusX","focusY","x","y","onMouseEnter","onMouseLeave","backgroundImage","backgroundPosition","maxLength","onFocus","327","__WEBPACK_IMPORTED_MODULE_3__components_warning__","__WEBPACK_IMPORTED_MODULE_4_react_intl__","__WEBPACK_IMPORTED_MODULE_5__initial_state__","APPROX_HASHTAG_RE","needsLockWarning","hashtagWarning","test","directMessageWarning","WarningWrapper","locked","328","Warning","329","countableText","inputText","__WEBPACK_IMPORTED_MODULE_0__url_regex__","urlPlaceholder","330","urlRegex","regexen","regexSupplant","regex","global","ignoreCase","multiline","RegExp","match","newRegex","stringSupplant","spaces_group","invalid_chars_group","punct","validUrlPrecedingChars","invalidDomainChars","validDomainChars","validSubdomain","validDomainName","validGTLD","validCCTLD","validPunycode","validSpecialCCTLD","validDomain","validPortNumber","pd","validGeneralUrlPathChars","validUrlBalancedParens","validUrlPathEndingChars","validUrlPath","validUrlQueryChars","validUrlQueryEndingChars","validUrl","331","__WEBPACK_IMPORTED_MODULE_1__components_compose_form__","accountId","checked","803","defineProperty","Compose","__WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__","__WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__","__WEBPACK_IMPORTED_MODULE_7_react_redux__","__WEBPACK_IMPORTED_MODULE_9_react_router_dom__","__WEBPACK_IMPORTED_MODULE_11__containers_search_container__","__WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__","start","home_timeline","notifications","public","community","preferences","logout","columns","multiColumn","header","to","column","data-method","841","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","unfollowConfirm","onFollow","onMuteNotifications","842","Account","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","hidingNotificationsButton","863","NavigationBar","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9__components_permalink__","864","Search","__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__","__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default","SearchPopout","extraInformation","handleClear","submitted","onClear","handleFocus","onShow","handleBlur","hasValue","949","__WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__","__WEBPACK_IMPORTED_MODULE_2__initial_state__","950","__WEBPACK_IMPORTED_MODULE_1__actions_search__","__WEBPACK_IMPORTED_MODULE_2__components_search__","951","__WEBPACK_IMPORTED_MODULE_1__components_search_results__","results","952","SearchResults","__WEBPACK_IMPORTED_MODULE_6_react_intl__","__WEBPACK_IMPORTED_MODULE_7__containers_account_container__","__WEBPACK_IMPORTED_MODULE_8__containers_status_container__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","accounts","statuses","hashtags","count","statusId","hashtag"],"mappings":"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","file":"features/compose.js","sourcesContent":["webpackJsonp([2],{\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 302:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ComposeForm; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__character_counter__ = __webpack_require__(303);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_button__ = __webpack_require__(101);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__ = __webpack_require__(304);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__ = __webpack_require__(306);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__ = __webpack_require__(311);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_collapsable__ = __webpack_require__(313);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__ = __webpack_require__(314);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__ = __webpack_require__(316);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__ = __webpack_require__(318);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__ = __webpack_require__(319);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__ = __webpack_require__(321);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__containers_warning_container__ = __webpack_require__(327);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__is_mobile__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22_stringz__ = __webpack_require__(98);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22_stringz___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_22_stringz__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__util_counter__ = __webpack_require__(329);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n placeholder: {\n 'id': 'compose_form.placeholder',\n 'defaultMessage': 'What is on your mind?'\n },\n spoiler_placeholder: {\n 'id': 'compose_form.spoiler_placeholder',\n 'defaultMessage': 'Write your warning here'\n },\n publish: {\n 'id': 'compose_form.publish',\n 'defaultMessage': 'Toot'\n },\n publishLoud: {\n 'id': 'compose_form.publish_loud',\n 'defaultMessage': '{publish}!'\n }\n});\n\nvar ComposeForm = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ComposeForm, _ImmutablePureCompone);\n\n function ComposeForm() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ComposeForm);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(e.target.value);\n }, _this.handleKeyDown = function (e) {\n if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n _this.handleSubmit();\n }\n }, _this.handleSubmit = function () {\n if (_this.props.text !== _this.autosuggestTextarea.textarea.value) {\n // Something changed the text inside the textarea (e.g. browser extensions like Grammarly)\n // Update the state to match the current text\n _this.props.onChange(_this.autosuggestTextarea.textarea.value);\n }\n\n _this.props.onSubmit();\n }, _this.onSuggestionsClearRequested = function () {\n _this.props.onClearSuggestions();\n }, _this.onSuggestionsFetchRequested = function (token) {\n _this.props.onFetchSuggestions(token);\n }, _this.onSuggestionSelected = function (tokenStart, token, value) {\n _this._restoreCaret = null;\n _this.props.onSuggestionSelected(tokenStart, token, value);\n }, _this.handleChangeSpoilerText = function (e) {\n _this.props.onChangeSpoilerText(e.target.value);\n }, _this.setAutosuggestTextarea = function (c) {\n _this.autosuggestTextarea = c;\n }, _this.handleEmojiPick = function (data) {\n var position = _this.autosuggestTextarea.textarea.selectionStart;\n var emojiChar = data.native;\n _this._restoreCaret = position + emojiChar.length + 1;\n _this.props.onPickEmoji(position, data);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ComposeForm.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n // If this is the update where we've finished uploading,\n // save the last caret position so we can restore it below!\n if (!nextProps.is_uploading && this.props.is_uploading) {\n this._restoreCaret = this.autosuggestTextarea.textarea.selectionStart;\n }\n };\n\n ComposeForm.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n // This statement does several things:\n // - If we're beginning a reply, and,\n // - Replying to zero or one users, places the cursor at the end of the textbox.\n // - Replying to more than one user, selects any usernames past the first;\n // this provides a convenient shortcut to drop everyone else from the conversation.\n // - If we've just finished uploading an image, and have a saved caret position,\n // restores the cursor to that position after the text changes!\n if (this.props.focusDate !== prevProps.focusDate || prevProps.is_uploading && !this.props.is_uploading && typeof this._restoreCaret === 'number') {\n var selectionEnd = void 0,\n selectionStart = void 0;\n\n if (this.props.preselectDate !== prevProps.preselectDate) {\n selectionEnd = this.props.text.length;\n selectionStart = this.props.text.search(/\\s/) + 1;\n } else if (typeof this._restoreCaret === 'number') {\n selectionStart = this._restoreCaret;\n selectionEnd = this._restoreCaret;\n } else {\n selectionEnd = this.props.text.length;\n selectionStart = selectionEnd;\n }\n\n this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);\n this.autosuggestTextarea.textarea.focus();\n } else if (prevProps.is_submitting && !this.props.is_submitting) {\n this.autosuggestTextarea.textarea.focus();\n }\n };\n\n ComposeForm.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n onPaste = _props.onPaste,\n showSearch = _props.showSearch,\n anyMedia = _props.anyMedia;\n\n var disabled = this.props.is_submitting;\n var text = [this.props.spoiler_text, Object(__WEBPACK_IMPORTED_MODULE_23__util_counter__[\"a\" /* countableText */])(this.props.text)].join('');\n var disabledButton = disabled || this.props.is_uploading || Object(__WEBPACK_IMPORTED_MODULE_22_stringz__[\"length\"])(text) > __WEBPACK_IMPORTED_MODULE_24__initial_state__[\"c\" /* charLimit */] || text.length !== 0 && text.trim().length === 0 && !anyMedia;\n var publishText = '';\n\n if (this.props.privacy === 'private' || this.props.privacy === 'direct') {\n publishText = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'compose-form__publish-private'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n }), ' ', intl.formatMessage(messages.publish));\n } else {\n publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_19__containers_warning_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_collapsable__[\"a\" /* default */], {\n isVisible: this.props.spoiler,\n fullHeight: 50\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'spoiler-input'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.spoiler_placeholder)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n placeholder: intl.formatMessage(messages.spoiler_placeholder),\n value: this.props.spoiler_text,\n onChange: this.handleChangeSpoilerText,\n onKeyDown: this.handleKeyDown,\n type: 'text',\n className: 'spoiler-input__input',\n id: 'cw-spoiler-input'\n })))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__autosuggest-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__[\"a\" /* default */], {\n ref: this.setAutosuggestTextarea,\n placeholder: intl.formatMessage(messages.placeholder),\n disabled: disabled,\n value: this.props.text,\n onChange: this.handleChange,\n suggestions: this.props.suggestions,\n onKeyDown: this.handleKeyDown,\n onSuggestionsFetchRequested: this.onSuggestionsFetchRequested,\n onSuggestionsClearRequested: this.onSuggestionsClearRequested,\n onSuggestionSelected: this.onSuggestionSelected,\n onPaste: onPaste,\n autoFocus: !showSearch && !Object(__WEBPACK_IMPORTED_MODULE_20__is_mobile__[\"b\" /* isMobile */])(window.innerWidth)\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__[\"a\" /* default */], {\n onPickEmoji: this.handleEmojiPick\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__modifiers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__buttons-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__buttons'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'character-counter__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__character_counter__[\"a\" /* default */], {\n max: __WEBPACK_IMPORTED_MODULE_24__initial_state__[\"c\" /* charLimit */],\n text: text\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__publish'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__publish-button-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_button__[\"a\" /* default */], {\n text: publishText,\n onClick: this.handleSubmit,\n disabled: disabledButton,\n block: true\n }))));\n };\n\n return ComposeForm;\n}(__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default.a), _class2.propTypes = {\n intl: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object.isRequired,\n text: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string.isRequired,\n suggestion_token: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n suggestions: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n spoiler: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n privacy: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n spoiler_text: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n focusDate: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.instanceOf(Date),\n preselectDate: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.instanceOf(Date),\n is_submitting: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n is_uploading: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n onChange: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onSubmit: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onClearSuggestions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onFetchSuggestions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onSuggestionSelected: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onChangeSpoilerText: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onPaste: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n onPickEmoji: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n showSearch: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n anyMedia: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool\n}, _class2.defaultProps = {\n showSearch: false\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 303:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return CharacterCounter; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_stringz__ = __webpack_require__(98);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_stringz___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_stringz__);\n\n\n\n\n\n\n\n\nvar CharacterCounter = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(CharacterCounter, _React$PureComponent);\n\n function CharacterCounter() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, CharacterCounter);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n CharacterCounter.prototype.checkRemainingText = function checkRemainingText(diff) {\n if (diff < 0) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'character-counter character-counter--over'\n }, void 0, diff);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'character-counter'\n }, void 0, diff);\n };\n\n CharacterCounter.prototype.render = function render() {\n var diff = this.props.max - Object(__WEBPACK_IMPORTED_MODULE_5_stringz__[\"length\"])(this.props.text);\n return this.checkRemainingText(diff);\n };\n\n return CharacterCounter;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 304:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__ = __webpack_require__(305);\n\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_2__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state) {\n return {\n status: getStatus(state, state.getIn(['compose', 'in_reply_to']))\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onCancel: function onCancel() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_compose__[\"E\" /* cancelReplyCompose */])());\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 305:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ReplyIndicator; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__rtl__ = __webpack_require__(97);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n cancel: {\n 'id': 'reply_indicator.cancel',\n 'defaultMessage': 'Cancel'\n }\n});\n\nvar ReplyIndicator = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ReplyIndicator, _ImmutablePureCompone);\n\n function ReplyIndicator() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ReplyIndicator);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onCancel();\n }, _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.status.getIn(['account', 'id']));\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ReplyIndicator.prototype.render = function render() {\n var _props = this.props,\n status = _props.status,\n intl = _props.intl;\n\n\n if (!status) {\n return null;\n }\n\n var content = { __html: status.get('contentHtml') };\n var style = {\n direction: Object(__WEBPACK_IMPORTED_MODULE_12__rtl__[\"a\" /* isRtl */])(status.get('search_index')) ? 'rtl' : 'ltr'\n };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator__header'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator__cancel'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.cancel),\n icon: 'times',\n onClick: this.handleClick\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: status.getIn(['account', 'url']),\n onClick: this.handleAccountClick,\n className: 'reply-indicator__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n account: status.get('account'),\n size: 24\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_display_name__[\"a\" /* default */], {\n account: status.get('account')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'reply-indicator__content',\n style: style,\n dangerouslySetInnerHTML: content\n }));\n };\n\n return ReplyIndicator;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _class2.propTypes = {\n status: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onCancel: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 306:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestTextarea; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__ = __webpack_require__(307);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__ = __webpack_require__(309);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__rtl__ = __webpack_require__(97);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__ = __webpack_require__(310);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_classnames__);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar textAtCursorMatchesToken = function textAtCursorMatchesToken(str, caretPosition) {\n var word = void 0;\n\n var left = str.slice(0, caretPosition).search(/\\S+$/);\n var right = str.slice(caretPosition).search(/\\s/);\n\n if (right < 0) {\n word = str.slice(left);\n } else {\n word = str.slice(left, right + caretPosition);\n }\n\n if (!word || word.trim().length < 3 || ['@', ':', '#'].indexOf(word[0]) === -1) {\n return [null, null];\n }\n\n word = word.trim().toLowerCase();\n\n if (word.length > 0) {\n return [left + 1, word];\n } else {\n return [null, null];\n }\n};\n\nvar AutosuggestTextarea = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(AutosuggestTextarea, _ImmutablePureCompone);\n\n function AutosuggestTextarea() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestTextarea);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n suggestionsHidden: false,\n selectedSuggestion: 0,\n lastToken: null,\n tokenStart: 0\n }, _this.onChange = function (e) {\n var _textAtCursorMatchesT = textAtCursorMatchesToken(e.target.value, e.target.selectionStart),\n tokenStart = _textAtCursorMatchesT[0],\n token = _textAtCursorMatchesT[1];\n\n if (token !== null && _this.state.lastToken !== token) {\n _this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart: tokenStart });\n _this.props.onSuggestionsFetchRequested(token);\n } else if (token === null) {\n _this.setState({ lastToken: null });\n _this.props.onSuggestionsClearRequested();\n }\n\n _this.props.onChange(e);\n }, _this.onKeyDown = function (e) {\n var _this$props = _this.props,\n suggestions = _this$props.suggestions,\n disabled = _this$props.disabled;\n var _this$state = _this.state,\n selectedSuggestion = _this$state.selectedSuggestion,\n suggestionsHidden = _this$state.suggestionsHidden;\n\n\n if (disabled) {\n e.preventDefault();\n return;\n }\n\n switch (e.key) {\n case 'Escape':\n if (!suggestionsHidden) {\n e.preventDefault();\n _this.setState({ suggestionsHidden: true });\n }\n\n break;\n case 'ArrowDown':\n if (suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n _this.setState({ selectedSuggestion: Math.min(selectedSuggestion + 1, suggestions.size - 1) });\n }\n\n break;\n case 'ArrowUp':\n if (suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n _this.setState({ selectedSuggestion: Math.max(selectedSuggestion - 1, 0) });\n }\n\n break;\n case 'Enter':\n case 'Tab':\n // Select suggestion\n if (_this.state.lastToken !== null && suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n e.stopPropagation();\n _this.props.onSuggestionSelected(_this.state.tokenStart, _this.state.lastToken, suggestions.get(selectedSuggestion));\n }\n\n break;\n }\n\n if (e.defaultPrevented || !_this.props.onKeyDown) {\n return;\n }\n\n _this.props.onKeyDown(e);\n }, _this.onKeyUp = function (e) {\n if (e.key === 'Escape' && _this.state.suggestionsHidden) {\n document.querySelector('.ui').parentElement.focus();\n }\n\n if (_this.props.onKeyUp) {\n _this.props.onKeyUp(e);\n }\n }, _this.onBlur = function () {\n _this.setState({ suggestionsHidden: true });\n }, _this.onSuggestionClick = function (e) {\n var suggestion = _this.props.suggestions.get(e.currentTarget.getAttribute('data-index'));\n e.preventDefault();\n _this.props.onSuggestionSelected(_this.state.tokenStart, _this.state.lastToken, suggestion);\n _this.textarea.focus();\n }, _this.setTextarea = function (c) {\n _this.textarea = c;\n }, _this.onPaste = function (e) {\n if (e.clipboardData && e.clipboardData.files.length === 1) {\n _this.props.onPaste(e.clipboardData.files);\n e.preventDefault();\n }\n }, _this.renderSuggestion = function (suggestion, i) {\n var selectedSuggestion = _this.state.selectedSuggestion;\n\n var inner = void 0,\n key = void 0;\n\n if ((typeof suggestion === 'undefined' ? 'undefined' : __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default()(suggestion)) === 'object') {\n inner = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__[\"a\" /* default */], {\n emoji: suggestion\n });\n key = suggestion.id;\n } else if (suggestion[0] === '#') {\n inner = suggestion;\n key = suggestion;\n } else {\n inner = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__[\"a\" /* default */], {\n id: suggestion\n });\n key = suggestion;\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n 'data-index': i,\n className: __WEBPACK_IMPORTED_MODULE_13_classnames___default()('autosuggest-textarea__suggestions__item', { selected: i === selectedSuggestion }),\n onMouseDown: _this.onSuggestionClick\n }, key, inner);\n }, _temp), __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n AutosuggestTextarea.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.suggestions !== this.props.suggestions && nextProps.suggestions.size > 0 && this.state.suggestionsHidden) {\n this.setState({ suggestionsHidden: false });\n }\n };\n\n AutosuggestTextarea.prototype.render = function render() {\n var _props = this.props,\n value = _props.value,\n suggestions = _props.suggestions,\n disabled = _props.disabled,\n placeholder = _props.placeholder,\n autoFocus = _props.autoFocus;\n var suggestionsHidden = this.state.suggestionsHidden;\n\n var style = { direction: 'ltr' };\n\n if (Object(__WEBPACK_IMPORTED_MODULE_10__rtl__[\"a\" /* isRtl */])(value)) {\n style.direction = 'rtl';\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-textarea'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, placeholder), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__[\"a\" /* default */], {\n inputRef: this.setTextarea,\n className: 'autosuggest-textarea__textarea',\n disabled: disabled,\n placeholder: placeholder,\n autoFocus: autoFocus,\n value: value,\n onChange: this.onChange,\n onKeyDown: this.onKeyDown,\n onKeyUp: this.onKeyUp,\n onBlur: this.onBlur,\n onPaste: this.onPaste,\n style: style,\n 'aria-autocomplete': 'list'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-textarea__suggestions ' + (suggestionsHidden || suggestions.isEmpty() ? '' : 'autosuggest-textarea__suggestions--visible')\n }, void 0, suggestions.map(this.renderSuggestion)));\n };\n\n return AutosuggestTextarea;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n value: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n suggestions: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list,\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n placeholder: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onSuggestionSelected: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n onSuggestionsClearRequested: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n onSuggestionsFetchRequested: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n onChange: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n onKeyUp: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onKeyDown: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onPaste: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n autoFocus: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool\n}, _class.defaultProps = {\n autoFocus: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 307:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__ = __webpack_require__(308);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__selectors__ = __webpack_require__(66);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_2__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var id = _ref.id;\n return {\n account: getAccount(state, id)\n };\n };\n\n return mapStateToProps;\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 308:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestAccount; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\nvar AutosuggestAccount = (_temp = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AutosuggestAccount, _ImmutablePureCompone);\n\n function AutosuggestAccount() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestAccount);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n AutosuggestAccount.prototype.render = function render() {\n var account = this.props.account;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-account-icon'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__components_avatar__[\"a\" /* default */], {\n account: account,\n size: 18\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_display_name__[\"a\" /* default */], {\n account: account\n }));\n };\n\n return AutosuggestAccount;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.map.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 309:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestEmoji; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__ = __webpack_require__(155);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__);\n\n\n\n\n\n\n\n\nvar assetHost = process.env.CDN_HOST || '';\n\nvar AutosuggestEmoji = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AutosuggestEmoji, _React$PureComponent);\n\n function AutosuggestEmoji() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestEmoji);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n AutosuggestEmoji.prototype.render = function render() {\n var emoji = this.props.emoji;\n\n var url = void 0;\n\n if (emoji.custom) {\n url = emoji.imageUrl;\n } else {\n var mapping = __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default.a[emoji.native] || __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default.a[emoji.native.replace(/\\uFE0F$/, '')];\n\n if (!mapping) {\n return null;\n }\n\n url = assetHost + '/emoji/' + mapping.filename + '.svg';\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'autosuggest-emoji'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n className: 'emojione',\n src: url,\n alt: emoji.native || emoji.colons\n }), emoji.colons);\n };\n\n return AutosuggestEmoji;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(36)))\n\n/***/ }),\n\n/***/ 310:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);\n\n\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nvar isIE = isBrowser ? !!document.documentElement.currentStyle : false;\nvar hiddenTextarea = isBrowser && document.createElement('textarea');\nvar HIDDEN_TEXTAREA_STYLE = {\n 'min-height': '0',\n 'max-height': 'none',\n height: '0',\n visibility: 'hidden',\n overflow: 'hidden',\n position: 'absolute',\n 'z-index': '-1000',\n top: '0',\n right: '0'\n};\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'font-family', 'font-weight', 'font-size', 'font-style', 'tab-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', 'box-sizing'];\nvar computedStyleCache = {};\nfunction calculateNodeHeight(uiTextNode, uid, useCache, minRows, maxRows) {\n if (useCache === void 0) {\n useCache = false;\n }\n\n if (minRows === void 0) {\n minRows = null;\n }\n\n if (maxRows === void 0) {\n maxRows = null;\n }\n\n if (hiddenTextarea.parentNode === null) {\n document.body.appendChild(hiddenTextarea);\n } // Copy all CSS properties that have an impact on the height of the content in\n // the textbox\n\n\n var nodeStyling = calculateNodeStyling(uiTextNode, uid, useCache);\n\n if (nodeStyling === null) {\n return null;\n }\n\n var paddingSize = nodeStyling.paddingSize,\n borderSize = nodeStyling.borderSize,\n boxSizing = nodeStyling.boxSizing,\n sizingStyle = nodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n // text-lines will not calculated properly as the shadow will technically be\n // narrower for content\n\n Object.keys(sizingStyle).forEach(function (key) {\n hiddenTextarea.style[key] = sizingStyle[key];\n });\n Object.keys(HIDDEN_TEXTAREA_STYLE).forEach(function (key) {\n hiddenTextarea.style.setProperty(key, HIDDEN_TEXTAREA_STYLE[key], 'important');\n });\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || 'x';\n var minHeight = -Infinity;\n var maxHeight = Infinity;\n var height = hiddenTextarea.scrollHeight;\n\n if (boxSizing === 'border-box') {\n // border-box: add border, since height = content + padding + border\n height = height + borderSize;\n } else if (boxSizing === 'content-box') {\n // remove padding, since height = content\n height = height - paddingSize;\n } // measure height of a textarea with a single row\n\n\n hiddenTextarea.value = 'x';\n var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n if (minRows !== null || maxRows !== null) {\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows;\n\n if (boxSizing === 'border-box') {\n minHeight = minHeight + paddingSize + borderSize;\n }\n\n height = Math.max(minHeight, height);\n }\n\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows;\n\n if (boxSizing === 'border-box') {\n maxHeight = maxHeight + paddingSize + borderSize;\n }\n\n height = Math.min(maxHeight, height);\n }\n }\n\n var rowCount = Math.floor(height / singleRowHeight);\n return {\n height: height,\n minHeight: minHeight,\n maxHeight: maxHeight,\n rowCount: rowCount\n };\n}\n\nfunction calculateNodeStyling(node, uid, useCache) {\n if (useCache === void 0) {\n useCache = false;\n }\n\n if (useCache && computedStyleCache[uid]) {\n return computedStyleCache[uid];\n }\n\n var style = window.getComputedStyle(node);\n\n if (style === null) {\n return null;\n }\n\n var sizingStyle = SIZING_STYLE.reduce(function (obj, name) {\n obj[name] = style.getPropertyValue(name);\n return obj;\n }, {});\n var boxSizing = sizingStyle['box-sizing']; // IE (Edge has already correct behaviour) returns content width as computed width\n // so we need to add manually padding and border widths\n\n if (isIE && boxSizing === 'border-box') {\n sizingStyle.width = parseFloat(sizingStyle.width) + parseFloat(style['border-right-width']) + parseFloat(style['border-left-width']) + parseFloat(style['padding-right']) + parseFloat(style['padding-left']) + 'px';\n }\n\n var paddingSize = parseFloat(sizingStyle['padding-bottom']) + parseFloat(sizingStyle['padding-top']);\n var borderSize = parseFloat(sizingStyle['border-bottom-width']) + parseFloat(sizingStyle['border-top-width']);\n var nodeInfo = {\n sizingStyle: sizingStyle,\n paddingSize: paddingSize,\n borderSize: borderSize,\n boxSizing: boxSizing\n };\n\n if (useCache) {\n computedStyleCache[uid] = nodeInfo;\n }\n\n return nodeInfo;\n}\n\nvar purgeCache = function purgeCache(uid) {\n return delete computedStyleCache[uid];\n};\n\nfunction autoInc(seed) {\n if (seed === void 0) {\n seed = 0;\n }\n\n return function () {\n return ++seed;\n };\n}\n\nvar uid = autoInc();\n\n/**\n * <TextareaAutosize />\n */\nvar noop = function noop() {}; // IE11 has a problem with eval source maps, can be reproduced with:\n// eval('\"use strict\"; var onNextFrame = window.cancelAnimationFrame; onNextFrame(4);')\n// so we bind window as context in dev modes\n\n\nvar _ref = isBrowser && window.requestAnimationFrame ? true ? [window.requestAnimationFrame, window.cancelAnimationFrame] : [window.requestAnimationFrame.bind(window), window.cancelAnimationFrame.bind(window)] : [setTimeout, clearTimeout];\nvar onNextFrame = _ref[0];\nvar clearNextFrameAction = _ref[1];\n\nvar TextareaAutosize =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(TextareaAutosize, _React$Component);\n\n function TextareaAutosize(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n _this._resizeLock = false;\n\n _this._onRootDOMNode = function (node) {\n _this._rootDOMNode = node;\n\n if (_this.props.inputRef) {\n _this.props.inputRef(node);\n }\n };\n\n _this._onChange = function (event) {\n if (!_this._controlled) {\n _this._resizeComponent();\n }\n\n _this.props.onChange(event);\n };\n\n _this._resizeComponent = function (callback) {\n if (callback === void 0) {\n callback = noop;\n }\n\n if (typeof _this._rootDOMNode === 'undefined') {\n callback();\n return;\n }\n\n var nodeHeight = calculateNodeHeight(_this._rootDOMNode, _this._uid, _this.props.useCacheForDOMMeasurements, _this.props.minRows, _this.props.maxRows);\n\n if (nodeHeight === null) {\n callback();\n return;\n }\n\n var height = nodeHeight.height,\n minHeight = nodeHeight.minHeight,\n maxHeight = nodeHeight.maxHeight,\n rowCount = nodeHeight.rowCount;\n _this.rowCount = rowCount;\n\n if (_this.state.height !== height || _this.state.minHeight !== minHeight || _this.state.maxHeight !== maxHeight) {\n _this.setState({\n height: height,\n minHeight: minHeight,\n maxHeight: maxHeight\n }, callback);\n\n return;\n }\n\n callback();\n };\n\n _this.state = {\n height: props.style && props.style.height || 0,\n minHeight: -Infinity,\n maxHeight: Infinity\n };\n _this._uid = uid();\n _this._controlled = typeof props.value === 'string';\n return _this;\n }\n\n var _proto = TextareaAutosize.prototype;\n\n _proto.render = function render() {\n var _props = this.props,\n _minRows = _props.minRows,\n _maxRows = _props.maxRows,\n _onHeightChange = _props.onHeightChange,\n _useCacheForDOMMeasurements = _props.useCacheForDOMMeasurements,\n _inputRef = _props.inputRef,\n props = _objectWithoutProperties(_props, [\"minRows\", \"maxRows\", \"onHeightChange\", \"useCacheForDOMMeasurements\", \"inputRef\"]);\n props.style = _extends({}, props.style, {\n height: this.state.height\n });\n var maxHeight = Math.max(props.style.maxHeight || Infinity, this.state.maxHeight);\n\n if (maxHeight < this.state.height) {\n props.style.overflow = 'hidden';\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement(\"textarea\", _extends({}, props, {\n onChange: this._onChange,\n ref: this._onRootDOMNode\n }));\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n this._resizeComponent(); // Working around Firefox bug which runs resize listeners even when other JS is running at the same moment\n // causing competing rerenders (due to setState in the listener) in React.\n // More can be found here - facebook/react#6324\n\n\n this._resizeListener = function () {\n if (_this2._resizeLock) {\n return;\n }\n\n _this2._resizeLock = true;\n\n _this2._resizeComponent(function () {\n return _this2._resizeLock = false;\n });\n };\n\n window.addEventListener('resize', this._resizeListener);\n };\n\n _proto.componentWillReceiveProps = function componentWillReceiveProps() {\n var _this3 = this;\n\n this._clearNextFrame();\n\n this._onNextFrameActionId = onNextFrame(function () {\n return _this3._resizeComponent();\n });\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (this.state.height !== prevState.height) {\n this.props.onHeightChange(this.state.height, this);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this._clearNextFrame();\n\n window.removeEventListener('resize', this._resizeListener);\n purgeCache(this._uid);\n };\n\n _proto._clearNextFrame = function _clearNextFrame() {\n clearNextFrameAction(this._onNextFrameActionId);\n };\n\n return TextareaAutosize;\n}(__WEBPACK_IMPORTED_MODULE_0_react___default.a.Component);\n\nTextareaAutosize.defaultProps = {\n onChange: noop,\n onHeightChange: noop,\n useCacheForDOMMeasurements: false\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (TextareaAutosize);\n\n/***/ }),\n\n/***/ 311:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_button__ = __webpack_require__(312);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n disabled: state.getIn(['compose', 'is_uploading']) || state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(function (m) {\n return m.get('type') === 'video';\n }),\n resetFileKey: state.getIn(['compose', 'resetFileKey'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onSelectFile: function onSelectFile(files) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Z\" /* uploadCompose */])(files));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_button__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 312:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n upload: {\n 'id': 'upload_button.label',\n 'defaultMessage': 'Add media'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var mapStateToProps = function mapStateToProps(state) {\n return {\n acceptContentTypes: state.getIn(['media_attachments', 'accept_content_types'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar iconStyle = {\n height: null,\n lineHeight: '27px'\n};\n\nvar UploadButton = (_dec = Object(__WEBPACK_IMPORTED_MODULE_8_react_redux__[\"connect\"])(makeMapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadButton, _ImmutablePureCompone);\n\n function UploadButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleChange = function (e) {\n if (e.target.files.length > 0) {\n _this.props.onSelectFile(e.target.files);\n }\n }, _this.handleClick = function () {\n _this.fileElement.click();\n }, _this.setRef = function (c) {\n _this.fileElement = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n UploadButton.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n resetFileKey = _props.resetFileKey,\n disabled = _props.disabled,\n acceptContentTypes = _props.acceptContentTypes;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__upload-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__components_icon_button__[\"a\" /* default */], {\n icon: 'camera',\n title: intl.formatMessage(messages.upload),\n disabled: disabled,\n onClick: this.handleClick,\n className: 'compose-form__upload-button-icon',\n size: 18,\n inverted: true,\n style: iconStyle\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.upload)), __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement('input', {\n key: resetFileKey,\n ref: this.setRef,\n type: 'file',\n multiple: false,\n accept: acceptContentTypes.toArray().join(','),\n onChange: this.handleChange,\n disabled: disabled,\n style: { display: 'none' }\n })));\n };\n\n return UploadButton;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool,\n onSelectFile: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n style: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object,\n resetFileKey: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.number,\n acceptContentTypes: __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default.a.listOf(__WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string).isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 313:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__);\n\n\n\n\n\n\nvar Collapsable = function Collapsable(_ref) {\n var fullHeight = _ref.fullHeight,\n isVisible = _ref.isVisible,\n children = _ref.children;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { opacity: !isVisible ? 0 : 100, height: isVisible ? fullHeight : 0 },\n style: { opacity: __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default()(!isVisible ? 0 : 100), height: __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default()(!isVisible ? 0 : fullHeight) }\n }, void 0, function (_ref2) {\n var opacity = _ref2.opacity,\n height = _ref2.height;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n style: { height: height + 'px', overflow: 'hidden', opacity: opacity / 100, display: Math.floor(opacity) === 0 ? 'none' : 'block' }\n }, void 0, children);\n });\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Collapsable);\n\n/***/ }),\n\n/***/ 314:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__ = __webpack_require__(315);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n marked: {\n 'id': 'compose_form.spoiler.marked',\n 'defaultMessage': 'Text is hidden behind warning'\n },\n unmarked: {\n 'id': 'compose_form.spoiler.unmarked',\n 'defaultMessage': 'Text is not hidden'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n var intl = _ref.intl;\n return {\n label: 'CW',\n title: intl.formatMessage(state.getIn(['compose', 'spoiler']) ? messages.marked : messages.unmarked),\n active: state.getIn(['compose', 'spoiler']),\n ariaControls: 'cw-spoiler-input'\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onClick: function onClick() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"I\" /* changeComposeSpoilerness */])());\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 315:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return TextIconButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar TextIconButton = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(TextIconButton, _React$PureComponent);\n\n function TextIconButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, TextIconButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function (e) {\n e.preventDefault();\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n TextIconButton.prototype.render = function render() {\n var _props = this.props,\n label = _props.label,\n title = _props.title,\n active = _props.active,\n ariaControls = _props.ariaControls;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n title: title,\n 'aria-label': title,\n className: 'text-icon-button ' + (active ? 'active' : ''),\n 'aria-expanded': active,\n onClick: this.handleClick,\n 'aria-controls': ariaControls\n }, void 0, label);\n };\n\n return TextIconButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 316:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__ = __webpack_require__(317);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n isModalOpen: state.get('modal').modalType === 'ACTIONS',\n value: state.getIn(['compose', 'privacy'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(value) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"J\" /* changeComposeVisibility */])(value));\n },\n\n\n isUserTouching: __WEBPACK_IMPORTED_MODULE_4__is_mobile__[\"c\" /* isUserTouching */],\n onModalOpen: function onModalOpen(props) {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"d\" /* openModal */])('ACTIONS', props));\n },\n onModalClose: function onModalClose() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"c\" /* closeModal */])());\n }\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 317:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return PrivacyDropdown; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__ = __webpack_require__(96);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_detect_passive_events__ = __webpack_require__(46);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_detect_passive_events__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__);\n\n\n\n\n\nvar _class2;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n public_short: {\n 'id': 'privacy.public.short',\n 'defaultMessage': 'Public'\n },\n public_long: {\n 'id': 'privacy.public.long',\n 'defaultMessage': 'Post to public timelines'\n },\n unlisted_short: {\n 'id': 'privacy.unlisted.short',\n 'defaultMessage': 'Unlisted'\n },\n unlisted_long: {\n 'id': 'privacy.unlisted.long',\n 'defaultMessage': 'Do not show in public timelines'\n },\n private_short: {\n 'id': 'privacy.private.short',\n 'defaultMessage': 'Followers-only'\n },\n private_long: {\n 'id': 'privacy.private.long',\n 'defaultMessage': 'Post to followers only'\n },\n direct_short: {\n 'id': 'privacy.direct.short',\n 'defaultMessage': 'Direct'\n },\n direct_long: {\n 'id': 'privacy.direct.long',\n 'defaultMessage': 'Post to mentioned users only'\n },\n change_privacy: {\n 'id': 'privacy.change',\n 'defaultMessage': 'Adjust status privacy'\n }\n});\n\nvar listenerOptions = __WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default.a.hasSupport ? { passive: true } : false;\n\nvar PrivacyDropdownMenu = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PrivacyDropdownMenu, _React$PureComponent);\n\n function PrivacyDropdownMenu() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PrivacyDropdownMenu);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleDocumentClick = function (e) {\n if (_this.node && !_this.node.contains(e.target)) {\n _this.props.onClose();\n }\n }, _this.handleClick = function (e) {\n if (e.key === 'Escape') {\n _this.props.onClose();\n } else if (!e.key || e.key === 'Enter') {\n var value = e.currentTarget.getAttribute('data-index');\n\n e.preventDefault();\n\n _this.props.onClose();\n _this.props.onChange(value);\n }\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n PrivacyDropdownMenu.prototype.componentDidMount = function componentDidMount() {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n PrivacyDropdownMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n PrivacyDropdownMenu.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n style = _props.style,\n items = _props.items,\n value = _props.value;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n style: { opacity: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n }, void 0, function (_ref) {\n var opacity = _ref.opacity,\n scaleX = _ref.scaleX,\n scaleY = _ref.scaleY;\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: 'privacy-dropdown__dropdown', style: Object.assign({}, style, { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }), ref: _this2.setRef },\n items.map(function (item) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n 'data-index': item.value,\n onKeyDown: _this2.handleClick,\n onClick: _this2.handleClick,\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown__option', { active: item.value === value })\n }, item.value, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'privacy-dropdown__option__icon'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + item.icon\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'privacy-dropdown__option__content'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, item.text), item.meta));\n })\n );\n });\n };\n\n return PrivacyDropdownMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar PrivacyDropdown = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class2 = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PrivacyDropdown, _React$PureComponent2);\n\n function PrivacyDropdown() {\n var _temp2, _this3, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PrivacyDropdown);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this3 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this3), _this3.state = {\n open: false\n }, _this3.handleToggle = function () {\n if (_this3.props.isUserTouching()) {\n if (_this3.state.open) {\n _this3.props.onModalClose();\n } else {\n _this3.props.onModalOpen({\n actions: _this3.options.map(function (option) {\n return Object.assign({}, option, { active: option.value === _this3.props.value });\n }),\n onClick: _this3.handleModalActionClick\n });\n }\n } else {\n _this3.setState({ open: !_this3.state.open });\n }\n }, _this3.handleModalActionClick = function (e) {\n e.preventDefault();\n\n var value = _this3.options[e.currentTarget.getAttribute('data-index')].value;\n\n _this3.props.onModalClose();\n _this3.props.onChange(value);\n }, _this3.handleKeyDown = function (e) {\n switch (e.key) {\n case 'Enter':\n _this3.handleToggle();\n break;\n case 'Escape':\n _this3.handleClose();\n break;\n }\n }, _this3.handleClose = function () {\n _this3.setState({ open: false });\n }, _this3.handleChange = function (value) {\n _this3.props.onChange(value);\n }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this3, _ret2);\n }\n\n PrivacyDropdown.prototype.componentWillMount = function componentWillMount() {\n var formatMessage = this.props.intl.formatMessage;\n\n\n this.options = [{ icon: 'globe', value: 'public', text: formatMessage(messages.public_short), meta: formatMessage(messages.public_long) }, { icon: 'unlock-alt', value: 'unlisted', text: formatMessage(messages.unlisted_short), meta: formatMessage(messages.unlisted_long) }, { icon: 'lock', value: 'private', text: formatMessage(messages.private_short), meta: formatMessage(messages.private_long) }, { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) }];\n };\n\n PrivacyDropdown.prototype.render = function render() {\n var _props2 = this.props,\n value = _props2.value,\n intl = _props2.intl;\n var open = this.state.open;\n\n\n var valueOption = this.options.find(function (item) {\n return item.value === value;\n });\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown', { active: open }),\n onKeyDown: this.handleKeyDown\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown__value', { active: this.options.indexOf(valueOption) === 0 })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n className: 'privacy-dropdown__value-icon',\n icon: valueOption.icon,\n title: intl.formatMessage(messages.change_privacy),\n size: 18,\n expanded: open,\n active: open,\n inverted: true,\n onClick: this.handleToggle,\n style: { height: null, lineHeight: '27px' }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default.a, {\n show: open,\n placement: 'bottom',\n target: this\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(PrivacyDropdownMenu, {\n items: this.options,\n value: value,\n onClose: this.handleClose,\n onChange: this.handleChange\n })));\n };\n\n return PrivacyDropdown;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 318:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n marked: {\n 'id': 'compose_form.sensitive.marked',\n 'defaultMessage': 'Media is marked as sensitive'\n },\n unmarked: {\n 'id': 'compose_form.sensitive.unmarked',\n 'defaultMessage': 'Media is not marked as sensitive'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n visible: state.getIn(['compose', 'media_attachments']).size > 0,\n active: state.getIn(['compose', 'sensitive']),\n disabled: state.getIn(['compose', 'spoiler'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onClick: function onClick() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"G\" /* changeComposeSensitivity */])());\n }\n };\n};\n\nvar SensitiveButton = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SensitiveButton, _React$PureComponent);\n\n function SensitiveButton() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SensitiveButton);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n SensitiveButton.prototype.render = function render() {\n var _props = this.props,\n visible = _props.visible,\n active = _props.active,\n disabled = _props.disabled,\n onClick = _props.onClick,\n intl = _props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { scale: 0.87 },\n style: { scale: __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default()(visible ? 1 : 0.87, { stiffness: 200, damping: 3 }) }\n }, void 0, function (_ref) {\n var scale = _ref.scale;\n\n var icon = active ? 'eye-slash' : 'eye';\n var className = __WEBPACK_IMPORTED_MODULE_6_classnames___default()('compose-form__sensitive-button', {\n 'compose-form__sensitive-button--visible': visible\n });\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: className,\n style: { transform: 'scale(' + scale + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_icon_button__[\"a\" /* default */], {\n className: 'compose-form__sensitive-button__icon',\n title: intl.formatMessage(active ? messages.marked : messages.unmarked),\n icon: icon,\n onClick: onClick,\n size: 18,\n active: active,\n disabled: disabled,\n style: { lineHeight: null, height: null },\n inverted: true\n }));\n });\n };\n\n return SensitiveButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(SensitiveButton)));\n\n/***/ }),\n\n/***/ 319:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__ = __webpack_require__(320);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(57);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_emojis__ = __webpack_require__(99);\n\n\n\n\n\n\n\nvar perLine = 8;\nvar lines = 2;\n\nvar DEFAULTS = ['+1', 'grinning', 'kissing_heart', 'heart_eyes', 'laughing', 'stuck_out_tongue_winking_eye', 'sweat_smile', 'joy', 'yum', 'disappointed', 'thinking_face', 'weary', 'sob', 'sunglasses', 'heart', 'ok_hand'];\n\nvar getFrequentlyUsedEmojis = Object(__WEBPACK_IMPORTED_MODULE_3_reselect__[\"createSelector\"])([function (state) {\n return state.getIn(['settings', 'frequentlyUsedEmojis'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n}], function (emojiCounters) {\n var emojis = emojiCounters.keySeq().sort(function (a, b) {\n return emojiCounters.get(a) - emojiCounters.get(b);\n }).reverse().slice(0, perLine * lines).toArray();\n\n if (emojis.length < DEFAULTS.length) {\n emojis = emojis.concat(DEFAULTS.slice(0, DEFAULTS.length - emojis.length));\n }\n\n return emojis;\n});\n\nvar getCustomEmojis = Object(__WEBPACK_IMPORTED_MODULE_3_reselect__[\"createSelector\"])([function (state) {\n return state.get('custom_emojis');\n}], function (emojis) {\n return emojis.filter(function (e) {\n return e.get('visible_in_picker');\n }).sort(function (a, b) {\n var aShort = a.get('shortcode').toLowerCase();\n var bShort = b.get('shortcode').toLowerCase();\n\n if (aShort < bShort) {\n return -1;\n } else if (aShort > bShort) {\n return 1;\n } else {\n return 0;\n }\n });\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n custom_emojis: getCustomEmojis(state),\n skinTone: state.getIn(['settings', 'skinTone']),\n frequentlyUsedEmojis: getFrequentlyUsedEmojis(state)\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var _onPickEmoji = _ref.onPickEmoji;\n return {\n onSkinTone: function onSkinTone(skinTone) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['skinTone'], skinTone));\n },\n\n onPickEmoji: function onPickEmoji(emoji) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_emojis__[\"b\" /* useEmoji */])(emoji));\n\n if (_onPickEmoji) {\n _onPickEmoji(emoji);\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 320:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return EmojiPickerDropdown; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__ = __webpack_require__(58);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__ = __webpack_require__(96);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_detect_passive_events__ = __webpack_require__(46);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_detect_passive_events__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__emoji_emoji__ = __webpack_require__(71);\n\n\n\n\n\nvar _class3, _class4, _temp4, _class5;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n emoji: {\n 'id': 'emoji_button.label',\n 'defaultMessage': 'Insert emoji'\n },\n emoji_search: {\n 'id': 'emoji_button.search',\n 'defaultMessage': 'Search...'\n },\n emoji_not_found: {\n 'id': 'emoji_button.not_found',\n 'defaultMessage': 'No emojos!! (\\u256F\\xB0\\u25A1\\xB0\\uFF09\\u256F\\uFE35 \\u253B\\u2501\\u253B'\n },\n custom: {\n 'id': 'emoji_button.custom',\n 'defaultMessage': 'Custom'\n },\n recent: {\n 'id': 'emoji_button.recent',\n 'defaultMessage': 'Frequently used'\n },\n search_results: {\n 'id': 'emoji_button.search_results',\n 'defaultMessage': 'Search results'\n },\n people: {\n 'id': 'emoji_button.people',\n 'defaultMessage': 'People'\n },\n nature: {\n 'id': 'emoji_button.nature',\n 'defaultMessage': 'Nature'\n },\n food: {\n 'id': 'emoji_button.food',\n 'defaultMessage': 'Food & Drink'\n },\n activity: {\n 'id': 'emoji_button.activity',\n 'defaultMessage': 'Activity'\n },\n travel: {\n 'id': 'emoji_button.travel',\n 'defaultMessage': 'Travel & Places'\n },\n objects: {\n 'id': 'emoji_button.objects',\n 'defaultMessage': 'Objects'\n },\n symbols: {\n 'id': 'emoji_button.symbols',\n 'defaultMessage': 'Symbols'\n },\n flags: {\n 'id': 'emoji_button.flags',\n 'defaultMessage': 'Flags'\n }\n});\n\nvar assetHost = process.env.CDN_HOST || '';\nvar EmojiPicker = void 0,\n Emoji = void 0; // load asynchronously\n\nvar backgroundImageFn = function backgroundImageFn() {\n return assetHost + '/emoji/sheet.png';\n};\nvar listenerOptions = __WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default.a.hasSupport ? { passive: true } : false;\n\nvar categoriesSort = ['recent', 'custom', 'people', 'nature', 'foods', 'activity', 'places', 'objects', 'symbols', 'flags'];\n\nvar ModifierPickerMenu = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ModifierPickerMenu, _React$PureComponent);\n\n function ModifierPickerMenu() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ModifierPickerMenu);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function (e) {\n _this.props.onSelect(e.currentTarget.getAttribute('data-index') * 1);\n }, _this.handleDocumentClick = function (e) {\n if (_this.node && !_this.node.contains(e.target)) {\n _this.props.onClose();\n }\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ModifierPickerMenu.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.active) {\n this.attachListeners();\n } else {\n this.removeListeners();\n }\n };\n\n ModifierPickerMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n this.removeListeners();\n };\n\n ModifierPickerMenu.prototype.attachListeners = function attachListeners() {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n ModifierPickerMenu.prototype.removeListeners = function removeListeners() {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n ModifierPickerMenu.prototype.render = function render() {\n var active = this.props.active;\n\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: 'emoji-picker-dropdown__modifiers__menu', style: { display: active ? 'block' : 'none' }, ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 1\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 1,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 2\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 2,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 3\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 3,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 4\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 4,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 5\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 5,\n backgroundImageFn: backgroundImageFn\n })),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n 'data-index': 6\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: 6,\n backgroundImageFn: backgroundImageFn\n }))\n );\n };\n\n return ModifierPickerMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar ModifierPicker = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ModifierPicker, _React$PureComponent2);\n\n function ModifierPicker() {\n var _temp2, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ModifierPicker);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.handleClick = function () {\n if (_this2.props.active) {\n _this2.props.onClose();\n } else {\n _this2.props.onOpen();\n }\n }, _this2.handleSelect = function (modifier) {\n _this2.props.onChange(modifier);\n _this2.props.onClose();\n }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n ModifierPicker.prototype.render = function render() {\n var _props = this.props,\n active = _props.active,\n modifier = _props.modifier;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'emoji-picker-dropdown__modifiers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n emoji: 'fist',\n set: 'twitter',\n size: 22,\n sheetSize: 32,\n skin: modifier,\n onClick: this.handleClick,\n backgroundImageFn: backgroundImageFn\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(ModifierPickerMenu, {\n active: active,\n onSelect: this.handleSelect,\n onClose: this.props.onClose\n }));\n };\n\n return ModifierPicker;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar EmojiPickerMenu = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class3 = (_temp4 = _class4 = function (_React$PureComponent3) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(EmojiPickerMenu, _React$PureComponent3);\n\n function EmojiPickerMenu() {\n var _temp3, _this3, _ret3;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, EmojiPickerMenu);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent3.call.apply(_React$PureComponent3, [this].concat(args))), _this3), _this3.state = {\n modifierOpen: false\n }, _this3.handleDocumentClick = function (e) {\n if (_this3.node && !_this3.node.contains(e.target)) {\n _this3.props.onClose();\n }\n }, _this3.setRef = function (c) {\n _this3.node = c;\n }, _this3.getI18n = function () {\n var intl = _this3.props.intl;\n\n\n return {\n search: intl.formatMessage(messages.emoji_search),\n notfound: intl.formatMessage(messages.emoji_not_found),\n categories: {\n search: intl.formatMessage(messages.search_results),\n recent: intl.formatMessage(messages.recent),\n people: intl.formatMessage(messages.people),\n nature: intl.formatMessage(messages.nature),\n foods: intl.formatMessage(messages.food),\n activity: intl.formatMessage(messages.activity),\n places: intl.formatMessage(messages.travel),\n objects: intl.formatMessage(messages.objects),\n symbols: intl.formatMessage(messages.symbols),\n flags: intl.formatMessage(messages.flags),\n custom: intl.formatMessage(messages.custom)\n }\n };\n }, _this3.handleClick = function (emoji) {\n if (!emoji.native) {\n emoji.native = emoji.colons;\n }\n\n _this3.props.onClose();\n _this3.props.onPick(emoji);\n }, _this3.handleModifierOpen = function () {\n _this3.setState({ modifierOpen: true });\n }, _this3.handleModifierClose = function () {\n _this3.setState({ modifierOpen: false });\n }, _this3.handleModifierChange = function (modifier) {\n _this3.props.onSkinTone(modifier);\n }, _temp3), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this3, _ret3);\n }\n\n EmojiPickerMenu.prototype.componentDidMount = function componentDidMount() {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n EmojiPickerMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n };\n\n EmojiPickerMenu.prototype.render = function render() {\n var _props2 = this.props,\n loading = _props2.loading,\n style = _props2.style,\n intl = _props2.intl,\n custom_emojis = _props2.custom_emojis,\n skinTone = _props2.skinTone,\n frequentlyUsedEmojis = _props2.frequentlyUsedEmojis;\n\n\n if (loading) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n style: { width: 299 }\n });\n }\n\n var title = intl.formatMessage(messages.emoji);\n var modifierOpen = this.state.modifierOpen;\n\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('emoji-picker-dropdown__menu', { selecting: modifierOpen }), style: style, ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(EmojiPicker, {\n perLine: 8,\n emojiSize: 22,\n sheetSize: 32,\n custom: Object(__WEBPACK_IMPORTED_MODULE_10__emoji_emoji__[\"buildCustomEmojis\"])(custom_emojis),\n color: '',\n emoji: '',\n set: 'twitter',\n title: title,\n i18n: this.getI18n(),\n onClick: this.handleClick,\n include: categoriesSort,\n recent: frequentlyUsedEmojis,\n skin: skinTone,\n showPreview: false,\n backgroundImageFn: backgroundImageFn,\n emojiTooltip: true\n }),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(ModifierPicker, {\n active: modifierOpen,\n modifier: skinTone,\n onOpen: this.handleModifierOpen,\n onClose: this.handleModifierClose,\n onChange: this.handleModifierChange\n })\n );\n };\n\n return EmojiPickerMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class4.defaultProps = {\n style: {},\n loading: true,\n placement: 'bottom',\n frequentlyUsedEmojis: []\n}, _temp4)) || _class3;\n\nvar EmojiPickerDropdown = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class5 = function (_React$PureComponent4) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(EmojiPickerDropdown, _React$PureComponent4);\n\n function EmojiPickerDropdown() {\n var _temp5, _this4, _ret4;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, EmojiPickerDropdown);\n\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _ret4 = (_temp5 = (_this4 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent4.call.apply(_React$PureComponent4, [this].concat(args))), _this4), _this4.state = {\n active: false,\n loading: false\n }, _this4.setRef = function (c) {\n _this4.dropdown = c;\n }, _this4.onShowDropdown = function () {\n _this4.setState({ active: true });\n\n if (!EmojiPicker) {\n _this4.setState({ loading: true });\n\n Object(__WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__[\"f\" /* EmojiPicker */])().then(function (EmojiMart) {\n EmojiPicker = EmojiMart.Picker;\n Emoji = EmojiMart.Emoji;\n\n _this4.setState({ loading: false });\n }).catch(function () {\n _this4.setState({ loading: false });\n });\n }\n }, _this4.onHideDropdown = function () {\n _this4.setState({ active: false });\n }, _this4.onToggle = function (e) {\n if (!_this4.state.loading && (!e.key || e.key === 'Enter')) {\n if (_this4.state.active) {\n _this4.onHideDropdown();\n } else {\n _this4.onShowDropdown();\n }\n }\n }, _this4.handleKeyDown = function (e) {\n if (e.key === 'Escape') {\n _this4.onHideDropdown();\n }\n }, _this4.setTargetRef = function (c) {\n _this4.target = c;\n }, _this4.findTarget = function () {\n return _this4.target;\n }, _temp5), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this4, _ret4);\n }\n\n EmojiPickerDropdown.prototype.render = function render() {\n var _props3 = this.props,\n intl = _props3.intl,\n onPickEmoji = _props3.onPickEmoji,\n onSkinTone = _props3.onSkinTone,\n skinTone = _props3.skinTone,\n frequentlyUsedEmojis = _props3.frequentlyUsedEmojis;\n\n var title = intl.formatMessage(messages.emoji);\n var _state = this.state,\n active = _state.active,\n loading = _state.loading;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'emoji-picker-dropdown',\n onKeyDown: this.handleKeyDown\n }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { ref: this.setTargetRef, className: 'emoji-button', title: title, 'aria-label': title, 'aria-expanded': active, role: 'button', onClick: this.onToggle, onKeyDown: this.onToggle, tabIndex: 0 },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('emojione', { 'pulse-loading': active && loading }),\n alt: '\\uD83D\\uDE42',\n src: assetHost + '/emoji/1f602.svg'\n })\n ), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default.a, {\n show: active,\n placement: 'bottom',\n target: this.findTarget\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(EmojiPickerMenu, {\n custom_emojis: this.props.custom_emojis,\n loading: loading,\n onClose: this.onHideDropdown,\n onPick: onPickEmoji,\n onSkinTone: onSkinTone,\n skinTone: skinTone,\n frequentlyUsedEmojis: frequentlyUsedEmojis\n })));\n };\n\n return EmojiPickerDropdown;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class5;\n\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(36)))\n\n/***/ }),\n\n/***/ 321:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_form__ = __webpack_require__(322);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n mediaIds: state.getIn(['compose', 'media_attachments']).map(function (item) {\n return item.get('id');\n })\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_form__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 322:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadForm; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__ = __webpack_require__(323);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_upload_container__ = __webpack_require__(325);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\nvar UploadForm = (_temp = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadForm, _ImmutablePureCompone);\n\n function UploadForm() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadForm);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n UploadForm.prototype.render = function render() {\n var mediaIds = this.props.mediaIds;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__upload-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__uploads-wrapper'\n }, void 0, mediaIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_upload_container__[\"a\" /* default */], {\n id: id\n }, id);\n })));\n };\n\n return UploadForm;\n}(__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default.a), _class.propTypes = {\n mediaIds: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.list.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 323:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_progress__ = __webpack_require__(324);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n active: state.getIn(['compose', 'is_uploading']),\n progress: state.getIn(['compose', 'progress'])\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_progress__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 324:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadProgress; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\n\n\nvar UploadProgress = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadProgress, _React$PureComponent);\n\n function UploadProgress() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadProgress);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n UploadProgress.prototype.render = function render() {\n var _props = this.props,\n active = _props.active,\n progress = _props.progress;\n\n\n if (!active) {\n return null;\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress__icon'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-upload'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'upload_progress.label',\n defaultMessage: 'Uploading...'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress__backdrop'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { width: 0 },\n style: { width: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(progress) }\n }, void 0, function (_ref) {\n var width = _ref.width;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'upload-progress__tracker',\n style: { width: width + '%' }\n });\n }))));\n };\n\n return UploadProgress;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 325:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload__ = __webpack_require__(326);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_modal__ = __webpack_require__(26);\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n var id = _ref.id;\n return {\n media: state.getIn(['compose', 'media_attachments']).find(function (item) {\n return item.get('id') === id;\n })\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n\n onUndo: function onUndo(id) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"X\" /* undoUploadCompose */])(id));\n },\n\n onDescriptionChange: function onDescriptionChange(id, description) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"L\" /* changeUploadCompose */])(id, { description: description }));\n },\n\n onOpenFocalPoint: function onOpenFocalPoint(id) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"d\" /* openModal */])('FOCAL_POINT', { id: id }));\n }\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 326:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Upload; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n description: {\n 'id': 'upload_form.description',\n 'defaultMessage': 'Describe for the visually impaired'\n }\n});\n\nvar Upload = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Upload, _ImmutablePureCompone);\n\n function Upload() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Upload);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n hovered: false,\n focused: false,\n dirtyDescription: null\n }, _this.handleUndoClick = function () {\n _this.props.onUndo(_this.props.media.get('id'));\n }, _this.handleFocalPointClick = function () {\n _this.props.onOpenFocalPoint(_this.props.media.get('id'));\n }, _this.handleInputChange = function (e) {\n _this.setState({ dirtyDescription: e.target.value });\n }, _this.handleMouseEnter = function () {\n _this.setState({ hovered: true });\n }, _this.handleMouseLeave = function () {\n _this.setState({ hovered: false });\n }, _this.handleInputFocus = function () {\n _this.setState({ focused: true });\n }, _this.handleInputBlur = function () {\n var dirtyDescription = _this.state.dirtyDescription;\n\n\n _this.setState({ focused: false, dirtyDescription: null });\n\n if (dirtyDescription !== null) {\n _this.props.onDescriptionChange(_this.props.media.get('id'), dirtyDescription);\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Upload.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n intl = _props.intl,\n media = _props.media;\n\n var active = this.state.hovered || this.state.focused;\n var description = this.state.dirtyDescription || this.state.dirtyDescription !== '' && media.get('description') || '';\n var focusX = media.getIn(['meta', 'focus', 'x']);\n var focusY = media.getIn(['meta', 'focus', 'y']);\n var x = (focusX / 2 + .5) * 100;\n var y = (focusY / -2 + .5) * 100;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__upload',\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { scale: 0.8 },\n style: { scale: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { stiffness: 180, damping: 12 }) }\n }, void 0, function (_ref) {\n var scale = _ref.scale;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__upload-thumbnail',\n style: { transform: 'scale(' + scale + ')', backgroundImage: 'url(' + media.get('preview_url') + ')', backgroundPosition: x + '% ' + y + '%' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('compose-form__upload__actions', { active: active })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'icon-button',\n onClick: _this2.handleUndoClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-times'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'upload_form.undo',\n defaultMessage: 'Undo'\n })), media.get('type') === 'image' && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'icon-button',\n onClick: _this2.handleFocalPointClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-crosshairs'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'upload_form.focus',\n defaultMessage: 'Crop'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('compose-form__upload-description', { active: active })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.description)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n placeholder: intl.formatMessage(messages.description),\n type: 'text',\n value: description,\n maxLength: 420,\n onFocus: _this2.handleInputFocus,\n onChange: _this2.handleInputChange,\n onBlur: _this2.handleInputBlur\n }))));\n }));\n };\n\n return Upload;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n media: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n onUndo: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDescriptionChange: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onOpenFocalPoint: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 327:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_warning__ = __webpack_require__(328);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\nvar APPROX_HASHTAG_RE = /(?:^|[^\\/\\)\\w])#(\\w*[a-zA-Z·]\\w*)/i;\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n needsLockWarning: state.getIn(['compose', 'privacy']) === 'private' && !state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_5__initial_state__[\"g\" /* me */], 'locked']),\n hashtagWarning: state.getIn(['compose', 'privacy']) !== 'public' && APPROX_HASHTAG_RE.test(state.getIn(['compose', 'text'])),\n directMessageWarning: state.getIn(['compose', 'privacy']) === 'direct'\n };\n};\n\nvar WarningWrapper = function WarningWrapper(_ref) {\n var needsLockWarning = _ref.needsLockWarning,\n hashtagWarning = _ref.hashtagWarning,\n directMessageWarning = _ref.directMessageWarning;\n\n if (needsLockWarning) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'compose_form.lock_disclaimer',\n defaultMessage: 'Your account is not {locked}. Anyone can follow you to view your follower-only posts.',\n values: { locked: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: '/settings/profile'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'compose_form.lock_disclaimer.lock',\n defaultMessage: 'locked'\n })) }\n })\n });\n }\n if (hashtagWarning) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'compose_form.hashtag_warning',\n defaultMessage: 'This toot won\\'t be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.'\n })\n });\n }\n if (directMessageWarning) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'compose_form.direct_message_warning',\n defaultMessage: 'This toot will only be visible to all the mentioned users.'\n })\n });\n }\n\n return null;\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(mapStateToProps)(WarningWrapper));\n\n/***/ }),\n\n/***/ 328:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Warning; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__);\n\n\n\n\n\n\n\n\n\nvar Warning = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Warning, _React$PureComponent);\n\n function Warning() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Warning);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n Warning.prototype.render = function render() {\n var message = this.props.message;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n style: { opacity: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n }, void 0, function (_ref) {\n var opacity = _ref.opacity,\n scaleX = _ref.scaleX,\n scaleY = _ref.scaleY;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'compose-form__warning',\n style: { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }\n }, void 0, message);\n });\n };\n\n return Warning;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 329:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = countableText;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__url_regex__ = __webpack_require__(330);\n\n\nvar urlPlaceholder = 'xxxxxxxxxxxxxxxxxxxxxxx';\n\nfunction countableText(inputText) {\n return inputText.replace(__WEBPACK_IMPORTED_MODULE_0__url_regex__[\"a\" /* urlRegex */], urlPlaceholder).replace(/(^|[^\\/\\w])@(([a-z0-9_]+)@[a-z0-9\\.\\-]+[a-z0-9]+)/ig, '$1@$3');\n};\n\n/***/ }),\n\n/***/ 330:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return urlRegex; });\nvar regexen = {};\n\nvar regexSupplant = function regexSupplant(regex, flags) {\n flags = flags || '';\n if (typeof regex !== 'string') {\n if (regex.global && flags.indexOf('g') < 0) {\n flags += 'g';\n }\n if (regex.ignoreCase && flags.indexOf('i') < 0) {\n flags += 'i';\n }\n if (regex.multiline && flags.indexOf('m') < 0) {\n flags += 'm';\n }\n\n regex = regex.source;\n }\n return new RegExp(regex.replace(/#\\{(\\w+)\\}/g, function (match, name) {\n var newRegex = regexen[name] || '';\n if (typeof newRegex !== 'string') {\n newRegex = newRegex.source;\n }\n return newRegex;\n }), flags);\n};\n\nvar stringSupplant = function stringSupplant(str, values) {\n return str.replace(/#\\{(\\w+)\\}/g, function (match, name) {\n return values[name] || '';\n });\n};\n\nvar urlRegex = function () {\n regexen.spaces_group = /\\x09-\\x0D\\x20\\x85\\xA0\\u1680\\u180E\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000/;\n regexen.invalid_chars_group = /\\uFFFE\\uFEFF\\uFFFF\\u202A-\\u202E/;\n regexen.punct = /\\!'#%&'\\(\\)*\\+,\\\\\\-\\.\\/:;<=>\\?@\\[\\]\\^_{|}~\\$/;\n regexen.validUrlPrecedingChars = regexSupplant(/(?:[^A-Za-z0-9@@$###{invalid_chars_group}]|^)/);\n regexen.invalidDomainChars = stringSupplant('#{punct}#{spaces_group}#{invalid_chars_group}', regexen);\n regexen.validDomainChars = regexSupplant(/[^#{invalidDomainChars}]/);\n regexen.validSubdomain = regexSupplant(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n regexen.validDomainName = regexSupplant(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n regexen.validGTLD = regexSupplant(RegExp('(?:(?:' + '삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|' + '政务|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|' + 'ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|' + 'بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|' + 'zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|' + 'yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|' + 'wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|' + 'website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|' + 'wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|' + 'vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|' + 'vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|' + 'university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|' + 'travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|' + 'toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|' + 'tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|' + 'tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|' + 'swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|' + 'stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|' + 'stada|srt|srl|spreadbetting|spot|spiegel|space|soy|sony|song|solutions|solar|sohu|software|' + 'softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|' + 'showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|' + 'sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|' + 'science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|' + 'sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|' + 'saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|' + 'rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|' + 'repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|' + 'realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|' + 'protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|' + 'pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|' + 'pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|' + 'pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|' + 'pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|' + 'onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|' + 'obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|' + 'nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|' + 'net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|' + 'msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|' + 'monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|' + 'miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|' + 'mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|' + 'makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|' + 'lotte|london|lol|loft|locus|locker|loans|loan|lixil|living|live|lipsy|link|linde|lincoln|limo|' + 'limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|' + 'lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|' + 'lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|' + 'komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|' + 'kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|' + 'jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|' + 'investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|' + 'industries|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|' + 'hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|' + 'honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|' + 'hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|' + 'hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|' + 'gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|' + 'globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|' + 'garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|' + 'ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|' + 'football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|' + 'fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|' + 'ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|' + 'extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|' + 'estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|' + 'email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|' + 'download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|' + 'direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|' + 'delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|' + 'cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|courses|' + 'coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|' + 'construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|' + 'college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|' + 'cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|' + 'chintai|cheap|chat|chase|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|' + 'catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|' + 'capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|' + 'bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|' + 'bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|' + 'boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|' + 'black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|' + 'beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|' + 'barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|' + 'autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|' + 'art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|' + 'amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|' + 'alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|' + 'afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|' + 'academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion' + ')(?=[^0-9a-zA-Z@]|$))'));\n regexen.validCCTLD = regexSupplant(RegExp('(?:(?:' + '한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|' + 'ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|' + 'بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ελ|' + 'zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|' + 'tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|' + 're|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|' + 'mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|' + 'ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|' + 'gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|' + 'do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|' + 'bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac' + ')(?=[^0-9a-zA-Z@]|$))'));\n regexen.validPunycode = /(?:xn--[0-9a-z]+)/;\n regexen.validSpecialCCTLD = /(?:(?:co|tv)(?=[^0-9a-zA-Z@]|$))/;\n regexen.validDomain = regexSupplant(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/);\n regexen.validPortNumber = /[0-9]+/;\n regexen.pd = /\\u002d\\u058a\\u05be\\u1400\\u1806\\u2010-\\u2015\\u2e17\\u2e1a\\u2e3a\\u2e40\\u301c\\u3030\\u30a0\\ufe31\\ufe58\\ufe63\\uff0d/;\n regexen.validGeneralUrlPathChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?]/i);\n // Allow URL paths to contain up to two nested levels of balanced parens\n // 1. Used in Wikipedia URLs like /Primer_(film)\n // 2. Used in IIS sessions like /S(dfd346)/\n // 3. Used in Rdio URLs like /track/We_Up_(Album_Version_(Edited))/\n regexen.validUrlBalancedParens = regexSupplant('\\\\(' + '(?:' + '#{validGeneralUrlPathChars}+' + '|' +\n // allow one nested level of balanced parentheses\n '(?:' + '#{validGeneralUrlPathChars}*' + '\\\\(' + '#{validGeneralUrlPathChars}+' + '\\\\)' + '#{validGeneralUrlPathChars}*' + ')' + ')' + '\\\\)', 'i');\n // Valid end-of-path chracters (so /foo. does not gobble the period).\n // 1. Allow =&# for empty URL parameters and other URL-join artifacts\n regexen.validUrlPathEndingChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?!\\*';:=\\,\\.\\$%\\[\\]#{pd}~&\\|@]|(?:#{validUrlBalancedParens})/i);\n // Allow @ in a url, but only in the middle. Catch things like http://example.com/@user/\n regexen.validUrlPath = regexSupplant('(?:' + '(?:' + '#{validGeneralUrlPathChars}*' + '(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*' + '#{validUrlPathEndingChars}' + ')|(?:@#{validGeneralUrlPathChars}+\\/)' + ')', 'i');\n regexen.validUrlQueryChars = /[a-z0-9!?\\*'@\\(\\);:&=\\+\\$\\/%#\\[\\]\\-_\\.,~|]/i;\n regexen.validUrlQueryEndingChars = /[a-z0-9_&=#\\/]/i;\n regexen.validUrl = regexSupplant('(' + // $1 URL\n '(https?:\\\\/\\\\/)' + // $2 Protocol\n '(#{validDomain})' + // $3 Domain(s)\n '(?::(#{validPortNumber}))?' + // $4 Port number (optional)\n '(\\\\/#{validUrlPath}*)?' + // $5 URL Path\n '(\\\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?' + // $6 Query String\n ')', 'gi');\n return regexen.validUrl;\n}();\n\n/***/ }),\n\n/***/ 331:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_compose_form__ = __webpack_require__(302);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(18);\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n text: state.getIn(['compose', 'text']),\n suggestion_token: state.getIn(['compose', 'suggestion_token']),\n suggestions: state.getIn(['compose', 'suggestions']),\n spoiler: state.getIn(['compose', 'spoiler']),\n spoiler_text: state.getIn(['compose', 'spoiler_text']),\n privacy: state.getIn(['compose', 'privacy']),\n focusDate: state.getIn(['compose', 'focusDate']),\n preselectDate: state.getIn(['compose', 'preselectDate']),\n is_submitting: state.getIn(['compose', 'is_submitting']),\n is_uploading: state.getIn(['compose', 'is_uploading']),\n showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n anyMedia: state.getIn(['compose', 'media_attachments']).size > 0\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(text) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"F\" /* changeCompose */])(text));\n },\n onSubmit: function onSubmit() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"W\" /* submitCompose */])());\n },\n onClearSuggestions: function onClearSuggestions() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"M\" /* clearComposeSuggestions */])());\n },\n onFetchSuggestions: function onFetchSuggestions(token) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"O\" /* fetchComposeSuggestions */])(token));\n },\n onSuggestionSelected: function onSuggestionSelected(position, token, accountId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"V\" /* selectComposeSuggestion */])(position, token, accountId));\n },\n onChangeSpoilerText: function onChangeSpoilerText(checked) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"H\" /* changeComposeSpoilerText */])(checked));\n },\n onPaste: function onPaste(files) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Z\" /* uploadCompose */])(files));\n },\n onPickEmoji: function onPickEmoji(position, data) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Q\" /* insertEmojiCompose */])(position, data));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_compose_form__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 803:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Compose; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__ = __webpack_require__(331);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__ = __webpack_require__(949);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_search_container__ = __webpack_require__(950);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__ = __webpack_require__(951);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n start: {\n 'id': 'getting_started.heading',\n 'defaultMessage': 'Getting started'\n },\n home_timeline: {\n 'id': 'tabs_bar.home',\n 'defaultMessage': 'Home'\n },\n notifications: {\n 'id': 'tabs_bar.notifications',\n 'defaultMessage': 'Notifications'\n },\n public: {\n 'id': 'navigation_bar.public_timeline',\n 'defaultMessage': 'Federated timeline'\n },\n community: {\n 'id': 'navigation_bar.community_timeline',\n 'defaultMessage': 'Local timeline'\n },\n preferences: {\n 'id': 'navigation_bar.preferences',\n 'defaultMessage': 'Preferences'\n },\n logout: {\n 'id': 'navigation_bar.logout',\n 'defaultMessage': 'Logout'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n columns: state.getIn(['settings', 'columns']),\n showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden'])\n };\n};\n\nvar Compose = (_dec = Object(__WEBPACK_IMPORTED_MODULE_7_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Compose, _React$PureComponent);\n\n function Compose() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Compose);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onFocus = function () {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"K\" /* changeComposing */])(true));\n }, _this.onBlur = function () {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"K\" /* changeComposing */])(false));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Compose.prototype.componentDidMount = function componentDidMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"S\" /* mountCompose */])());\n };\n\n Compose.prototype.componentWillUnmount = function componentWillUnmount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"Y\" /* unmountCompose */])());\n };\n\n Compose.prototype.render = function render() {\n var _props = this.props,\n multiColumn = _props.multiColumn,\n showSearch = _props.showSearch,\n intl = _props.intl;\n\n\n var header = '';\n\n if (multiColumn) {\n var columns = this.props.columns;\n\n header = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('nav', {\n className: 'drawer__header'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/getting-started',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.start),\n 'aria-label': intl.formatMessage(messages.start)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-asterisk'\n })), !columns.some(function (column) {\n return column.get('id') === 'HOME';\n }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/timelines/home',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.home_timeline),\n 'aria-label': intl.formatMessage(messages.home_timeline)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-home'\n })), !columns.some(function (column) {\n return column.get('id') === 'NOTIFICATIONS';\n }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/notifications',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.notifications),\n 'aria-label': intl.formatMessage(messages.notifications)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-bell'\n })), !columns.some(function (column) {\n return column.get('id') === 'COMMUNITY';\n }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/timelines/public/local',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.community),\n 'aria-label': intl.formatMessage(messages.community)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-users'\n })), !columns.some(function (column) {\n return column.get('id') === 'PUBLIC';\n }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n to: '/timelines/public',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.public),\n 'aria-label': intl.formatMessage(messages.public)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-globe'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: '/user-settings',\n className: 'drawer__tab',\n title: intl.formatMessage(messages.preferences),\n 'aria-label': intl.formatMessage(messages.preferences)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-cog'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: '/auth/sign_out',\n className: 'drawer__tab',\n 'data-method': 'delete',\n title: intl.formatMessage(messages.logout),\n 'aria-label': intl.formatMessage(messages.logout)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n role: 'img',\n className: 'fa fa-fw fa-sign-out'\n })));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer'\n }, void 0, header, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_search_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__pager'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner',\n onFocus: this.onFocus\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__[\"a\" /* default */], {\n onClose: this.onBlur\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__[\"a\" /* default */], {}), multiColumn && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner__mastodon'\n }, void 0)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { x: -100 },\n style: { x: __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default()(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }\n }, void 0, function (_ref) {\n var x = _ref.x;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner darker',\n style: { transform: 'translateX(' + x + '%)', visibility: x === -100 ? 'hidden' : 'visible' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__[\"a\" /* default */], {}));\n })));\n };\n\n return Compose;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 841:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(842);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 842:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 863:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return NavigationBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\n\n\n\nvar NavigationBar = (_temp = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(NavigationBar, _ImmutablePureCompone);\n\n function NavigationBar() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, NavigationBar);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n NavigationBar.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'navigation-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_permalink__[\"a\" /* default */], {\n href: this.props.account.get('url'),\n to: '/accounts/' + this.props.account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, this.props.account.get('acct')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n account: this.props.account,\n size: 40\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'navigation-bar__profile'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_permalink__[\"a\" /* default */], {\n href: this.props.account.get('url'),\n to: '/accounts/' + this.props.account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n className: 'navigation-bar__profile-account'\n }, void 0, '@', this.props.account.get('acct'))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: '/settings/profile',\n className: 'navigation-bar__profile-edit'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'navigation_bar.edit_profile',\n defaultMessage: 'Edit profile'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n title: '',\n icon: 'close',\n onClick: this.props.onClose\n }));\n };\n\n return NavigationBar;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n onClose: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func\n}, _temp);\n\n\n/***/ }),\n\n/***/ 864:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Search; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__ = __webpack_require__(96);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n placeholder: {\n 'id': 'search.placeholder',\n 'defaultMessage': 'Search'\n }\n});\n\nvar SearchPopout = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SearchPopout, _React$PureComponent);\n\n function SearchPopout() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SearchPopout);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n SearchPopout.prototype.render = function render() {\n var style = this.props.style;\n\n var extraInformation = __WEBPACK_IMPORTED_MODULE_9__initial_state__[\"i\" /* searchEnabled */] ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.full_text',\n defaultMessage: 'Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.'\n }) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.text',\n defaultMessage: 'Simple text returns matching display names, usernames and hashtags'\n });\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n style: Object.assign({}, style, { position: 'absolute', width: 315 })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n style: { opacity: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n }, void 0, function (_ref) {\n var opacity = _ref.opacity,\n scaleX = _ref.scaleX,\n scaleY = _ref.scaleY;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-popout',\n style: { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h4', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.search_format',\n defaultMessage: 'Advanced search format'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('ul', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, '#example'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.hashtag',\n defaultMessage: 'hashtag'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, '@username@domain'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.user',\n defaultMessage: 'user'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, 'URL'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.user',\n defaultMessage: 'user'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, 'URL'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_popout.tips.status',\n defaultMessage: 'status'\n }))), extraInformation);\n }));\n };\n\n return SearchPopout;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar Search = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Search, _React$PureComponent2);\n\n function Search() {\n var _temp, _this2, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Search);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.state = {\n expanded: false\n }, _this2.handleChange = function (e) {\n _this2.props.onChange(e.target.value);\n }, _this2.handleClear = function (e) {\n e.preventDefault();\n\n if (_this2.props.value.length > 0 || _this2.props.submitted) {\n _this2.props.onClear();\n }\n }, _this2.handleKeyDown = function (e) {\n if (e.key === 'Enter') {\n e.preventDefault();\n _this2.props.onSubmit();\n } else if (e.key === 'Escape') {\n document.querySelector('.ui').parentElement.focus();\n }\n }, _this2.handleFocus = function () {\n _this2.setState({ expanded: true });\n _this2.props.onShow();\n }, _this2.handleBlur = function () {\n _this2.setState({ expanded: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret);\n }\n\n Search.prototype.noop = function noop() {};\n\n Search.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n value = _props.value,\n submitted = _props.submitted;\n var expanded = this.state.expanded;\n\n var hasValue = value.length > 0 || submitted;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.placeholder)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'search__input',\n type: 'text',\n placeholder: intl.formatMessage(messages.placeholder),\n value: value,\n onChange: this.handleChange,\n onKeyUp: this.handleKeyDown,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n className: 'search__icon',\n onClick: this.handleClear\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-search ' + (hasValue ? '' : 'active')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n 'aria-label': intl.formatMessage(messages.placeholder),\n className: 'fa fa-times-circle ' + (hasValue ? 'active' : '')\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default.a, {\n show: expanded && !hasValue,\n placement: 'bottom',\n target: this\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(SearchPopout, {})));\n };\n\n return Search;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 949:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__ = __webpack_require__(863);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__initial_state__ = __webpack_require__(11);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n account: state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_2__initial_state__[\"g\" /* me */]])\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 950:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__actions_search__ = __webpack_require__(336);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_search__ = __webpack_require__(864);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n value: state.getIn(['search', 'value']),\n submitted: state.getIn(['search', 'submitted'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(value) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"e\" /* changeSearch */])(value));\n },\n onClear: function onClear() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"f\" /* clearSearch */])());\n },\n onSubmit: function onSubmit() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"h\" /* submitSearch */])());\n },\n onShow: function onShow() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"g\" /* showSearch */])());\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_search__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 951:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_search_results__ = __webpack_require__(952);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n results: state.getIn(['search', 'results'])\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_search_results__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 952:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SearchResults; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__containers_account_container__ = __webpack_require__(841);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\n\n\nvar SearchResults = (_temp = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SearchResults, _ImmutablePureCompone);\n\n function SearchResults() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SearchResults);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n SearchResults.prototype.render = function render() {\n var results = this.props.results;\n\n\n var accounts = void 0,\n statuses = void 0,\n hashtags = void 0;\n var count = 0;\n\n if (results.get('accounts') && results.get('accounts').size > 0) {\n count += results.get('accounts').size;\n accounts = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_results.accounts',\n defaultMessage: 'People'\n })), results.get('accounts').map(function (accountId) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_account_container__[\"a\" /* default */], {\n id: accountId\n }, accountId);\n }));\n }\n\n if (results.get('statuses') && results.get('statuses').size > 0) {\n count += results.get('statuses').size;\n statuses = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_results.statuses',\n defaultMessage: 'Toots'\n })), results.get('statuses').map(function (statusId) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_status_container__[\"a\" /* default */], {\n id: statusId\n }, statusId);\n }));\n }\n\n if (results.get('hashtags') && results.get('hashtags').size > 0) {\n count += results.get('hashtags').size;\n hashtags = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_results.hashtags',\n defaultMessage: 'Hashtags'\n })), results.get('hashtags').map(function (hashtag) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n className: 'search-results__hashtag',\n to: '/timelines/tag/' + hashtag\n }, hashtag, '#', hashtag);\n }));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'search-results__header'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'search_results.total',\n defaultMessage: '{count, number} {count, plural, one {result} other {results}}',\n values: { count: count }\n })), accounts, statuses, hashtags);\n };\n\n return SearchResults;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n results: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/compose.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React from 'react';\nimport CharacterCounter from './character_counter';\nimport Button from '../../../components/button';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport ReplyIndicatorContainer from '../containers/reply_indicator_container';\nimport AutosuggestTextarea from '../../../components/autosuggest_textarea';\nimport UploadButtonContainer from '../containers/upload_button_container';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport Collapsable from '../../../components/collapsable';\nimport SpoilerButtonContainer from '../containers/spoiler_button_container';\nimport PrivacyDropdownContainer from '../containers/privacy_dropdown_container';\nimport SensitiveButtonContainer from '../containers/sensitive_button_container';\nimport EmojiPickerDropdown from '../containers/emoji_picker_dropdown_container';\nimport UploadFormContainer from '../containers/upload_form_container';\nimport WarningContainer from '../containers/warning_container';\nimport { isMobile } from '../../../is_mobile';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { length } from 'stringz';\nimport { countableText } from '../util/counter';\nimport { charLimit } from \"../../../initial_state\"\n\nconst messages = defineMessages({\n placeholder: { id: 'compose_form.placeholder', defaultMessage: 'What is on your mind?' },\n spoiler_placeholder: { id: 'compose_form.spoiler_placeholder', defaultMessage: 'Write your warning here' },\n publish: { id: 'compose_form.publish', defaultMessage: 'Toot' },\n publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' },\n});\n\n@injectIntl\nexport default class ComposeForm extends ImmutablePureComponent {\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n text: PropTypes.string.isRequired,\n suggestion_token: PropTypes.string,\n suggestions: ImmutablePropTypes.list,\n spoiler: PropTypes.bool,\n privacy: PropTypes.string,\n spoiler_text: PropTypes.string,\n focusDate: PropTypes.instanceOf(Date),\n preselectDate: PropTypes.instanceOf(Date),\n is_submitting: PropTypes.bool,\n is_uploading: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n onSubmit: PropTypes.func.isRequired,\n onClearSuggestions: PropTypes.func.isRequired,\n onFetchSuggestions: PropTypes.func.isRequired,\n onSuggestionSelected: PropTypes.func.isRequired,\n onChangeSpoilerText: PropTypes.func.isRequired,\n onPaste: PropTypes.func.isRequired,\n onPickEmoji: PropTypes.func.isRequired,\n showSearch: PropTypes.bool,\n anyMedia: PropTypes.bool,\n };\n\n static defaultProps = {\n showSearch: false,\n };\n\n handleChange = (e) => {\n this.props.onChange(e.target.value);\n }\n\n handleKeyDown = (e) => {\n if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n this.handleSubmit();\n }\n }\n\n handleSubmit = () => {\n if (this.props.text !== this.autosuggestTextarea.textarea.value) {\n // Something changed the text inside the textarea (e.g. browser extensions like Grammarly)\n // Update the state to match the current text\n this.props.onChange(this.autosuggestTextarea.textarea.value);\n }\n\n this.props.onSubmit();\n }\n\n onSuggestionsClearRequested = () => {\n this.props.onClearSuggestions();\n }\n\n onSuggestionsFetchRequested = (token) => {\n this.props.onFetchSuggestions(token);\n }\n\n onSuggestionSelected = (tokenStart, token, value) => {\n this._restoreCaret = null;\n this.props.onSuggestionSelected(tokenStart, token, value);\n }\n\n handleChangeSpoilerText = (e) => {\n this.props.onChangeSpoilerText(e.target.value);\n }\n\n componentWillReceiveProps (nextProps) {\n // If this is the update where we've finished uploading,\n // save the last caret position so we can restore it below!\n if (!nextProps.is_uploading && this.props.is_uploading) {\n this._restoreCaret = this.autosuggestTextarea.textarea.selectionStart;\n }\n }\n\n componentDidUpdate (prevProps) {\n // This statement does several things:\n // - If we're beginning a reply, and,\n // - Replying to zero or one users, places the cursor at the end of the textbox.\n // - Replying to more than one user, selects any usernames past the first;\n // this provides a convenient shortcut to drop everyone else from the conversation.\n // - If we've just finished uploading an image, and have a saved caret position,\n // restores the cursor to that position after the text changes!\n if (this.props.focusDate !== prevProps.focusDate || (prevProps.is_uploading && !this.props.is_uploading && typeof this._restoreCaret === 'number')) {\n let selectionEnd, selectionStart;\n\n if (this.props.preselectDate !== prevProps.preselectDate) {\n selectionEnd = this.props.text.length;\n selectionStart = this.props.text.search(/\\s/) + 1;\n } else if (typeof this._restoreCaret === 'number') {\n selectionStart = this._restoreCaret;\n selectionEnd = this._restoreCaret;\n } else {\n selectionEnd = this.props.text.length;\n selectionStart = selectionEnd;\n }\n\n this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);\n this.autosuggestTextarea.textarea.focus();\n } else if(prevProps.is_submitting && !this.props.is_submitting) {\n this.autosuggestTextarea.textarea.focus();\n }\n }\n\n setAutosuggestTextarea = (c) => {\n this.autosuggestTextarea = c;\n }\n\n handleEmojiPick = (data) => {\n const position = this.autosuggestTextarea.textarea.selectionStart;\n const emojiChar = data.native;\n this._restoreCaret = position + emojiChar.length + 1;\n this.props.onPickEmoji(position, data);\n }\n\n render () {\n const { intl, onPaste, showSearch, anyMedia } = this.props;\n const disabled = this.props.is_submitting;\n const text = [this.props.spoiler_text, countableText(this.props.text)].join('');\n const disabledButton = disabled || this.props.is_uploading || length(text) > charLimit || (text.length !== 0 && text.trim().length === 0 && !anyMedia);\n let publishText = '';\n\n if (this.props.privacy === 'private' || this.props.privacy === 'direct') {\n publishText = <span className='compose-form__publish-private'><i className='fa fa-lock' /> {intl.formatMessage(messages.publish)}</span>;\n } else {\n publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish);\n }\n\n return (\n <div className='compose-form'>\n <WarningContainer />\n\n <Collapsable isVisible={this.props.spoiler} fullHeight={50}>\n <div className='spoiler-input'>\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.spoiler_placeholder)}</span>\n <input placeholder={intl.formatMessage(messages.spoiler_placeholder)} value={this.props.spoiler_text} onChange={this.handleChangeSpoilerText} onKeyDown={this.handleKeyDown} type='text' className='spoiler-input__input' id='cw-spoiler-input' />\n </label>\n </div>\n </Collapsable>\n\n <ReplyIndicatorContainer />\n\n <div className='compose-form__autosuggest-wrapper'>\n <AutosuggestTextarea\n ref={this.setAutosuggestTextarea}\n placeholder={intl.formatMessage(messages.placeholder)}\n disabled={disabled}\n value={this.props.text}\n onChange={this.handleChange}\n suggestions={this.props.suggestions}\n onKeyDown={this.handleKeyDown}\n onSuggestionsFetchRequested={this.onSuggestionsFetchRequested}\n onSuggestionsClearRequested={this.onSuggestionsClearRequested}\n onSuggestionSelected={this.onSuggestionSelected}\n onPaste={onPaste}\n autoFocus={!showSearch && !isMobile(window.innerWidth)}\n />\n\n <EmojiPickerDropdown onPickEmoji={this.handleEmojiPick} />\n </div>\n\n <div className='compose-form__modifiers'>\n <UploadFormContainer />\n </div>\n\n <div className='compose-form__buttons-wrapper'>\n <div className='compose-form__buttons'>\n <UploadButtonContainer />\n <PrivacyDropdownContainer />\n <SensitiveButtonContainer />\n <SpoilerButtonContainer />\n </div>\n <div className='character-counter__wrapper'><CharacterCounter max={charLimit} text={text} /></div>\n </div>\n\n <div className='compose-form__publish'>\n <div className='compose-form__publish-button-wrapper'><Button text={publishText} onClick={this.handleSubmit} disabled={disabledButton} block /></div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/compose_form.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { length } from 'stringz';\n\nexport default class CharacterCounter extends React.PureComponent {\n\n static propTypes = {\n text: PropTypes.string.isRequired,\n max: PropTypes.number.isRequired,\n };\n\n checkRemainingText (diff) {\n if (diff < 0) {\n return <span className='character-counter character-counter--over'>{diff}</span>;\n }\n\n return <span className='character-counter'>{diff}</span>;\n }\n\n render () {\n const diff = this.props.max - length(this.props.text);\n return this.checkRemainingText(diff);\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/character_counter.js","import { connect } from 'react-redux';\nimport { cancelReplyCompose } from '../../../actions/compose';\nimport { makeGetStatus } from '../../../selectors';\nimport ReplyIndicator from '../components/reply_indicator';\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = state => ({\n status: getStatus(state, state.getIn(['compose', 'in_reply_to'])),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = dispatch => ({\n\n onCancel () {\n dispatch(cancelReplyCompose());\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(ReplyIndicator);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/reply_indicator_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from '../../../components/avatar';\nimport IconButton from '../../../components/icon_button';\nimport DisplayName from '../../../components/display_name';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { isRtl } from '../../../rtl';\n\nconst messages = defineMessages({\n cancel: { id: 'reply_indicator.cancel', defaultMessage: 'Cancel' },\n});\n\n@injectIntl\nexport default class ReplyIndicator extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n status: ImmutablePropTypes.map,\n onCancel: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleClick = () => {\n this.props.onCancel();\n }\n\n handleAccountClick = (e) => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`);\n }\n }\n\n render () {\n const { status, intl } = this.props;\n\n if (!status) {\n return null;\n }\n\n const content = { __html: status.get('contentHtml') };\n const style = {\n direction: isRtl(status.get('search_index')) ? 'rtl' : 'ltr',\n };\n\n return (\n <div className='reply-indicator'>\n <div className='reply-indicator__header'>\n <div className='reply-indicator__cancel'><IconButton title={intl.formatMessage(messages.cancel)} icon='times' onClick={this.handleClick} /></div>\n\n <a href={status.getIn(['account', 'url'])} onClick={this.handleAccountClick} className='reply-indicator__display-name'>\n <div className='reply-indicator__display-avatar'><Avatar account={status.get('account')} size={24} /></div>\n <DisplayName account={status.get('account')} />\n </a>\n </div>\n\n <div className='reply-indicator__content' style={style} dangerouslySetInnerHTML={content} />\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/reply_indicator.js","import React from 'react';\nimport AutosuggestAccountContainer from '../features/compose/containers/autosuggest_account_container';\nimport AutosuggestEmoji from './autosuggest_emoji';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { isRtl } from '../rtl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Textarea from 'react-textarea-autosize';\nimport classNames from 'classnames';\n\nconst textAtCursorMatchesToken = (str, caretPosition) => {\n let word;\n\n let left = str.slice(0, caretPosition).search(/\\S+$/);\n let right = str.slice(caretPosition).search(/\\s/);\n\n if (right < 0) {\n word = str.slice(left);\n } else {\n word = str.slice(left, right + caretPosition);\n }\n\n if (!word || word.trim().length < 3 || ['@', ':', '#'].indexOf(word[0]) === -1) {\n return [null, null];\n }\n\n word = word.trim().toLowerCase();\n\n if (word.length > 0) {\n return [left + 1, word];\n } else {\n return [null, null];\n }\n};\n\nexport default class AutosuggestTextarea extends ImmutablePureComponent {\n\n static propTypes = {\n value: PropTypes.string,\n suggestions: ImmutablePropTypes.list,\n disabled: PropTypes.bool,\n placeholder: PropTypes.string,\n onSuggestionSelected: PropTypes.func.isRequired,\n onSuggestionsClearRequested: PropTypes.func.isRequired,\n onSuggestionsFetchRequested: PropTypes.func.isRequired,\n onChange: PropTypes.func.isRequired,\n onKeyUp: PropTypes.func,\n onKeyDown: PropTypes.func,\n onPaste: PropTypes.func.isRequired,\n autoFocus: PropTypes.bool,\n };\n\n static defaultProps = {\n autoFocus: true,\n };\n\n state = {\n suggestionsHidden: false,\n selectedSuggestion: 0,\n lastToken: null,\n tokenStart: 0,\n };\n\n onChange = (e) => {\n const [ tokenStart, token ] = textAtCursorMatchesToken(e.target.value, e.target.selectionStart);\n\n if (token !== null && this.state.lastToken !== token) {\n this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart });\n this.props.onSuggestionsFetchRequested(token);\n } else if (token === null) {\n this.setState({ lastToken: null });\n this.props.onSuggestionsClearRequested();\n }\n\n this.props.onChange(e);\n }\n\n onKeyDown = (e) => {\n const { suggestions, disabled } = this.props;\n const { selectedSuggestion, suggestionsHidden } = this.state;\n\n if (disabled) {\n e.preventDefault();\n return;\n }\n\n switch(e.key) {\n case 'Escape':\n if (!suggestionsHidden) {\n e.preventDefault();\n this.setState({ suggestionsHidden: true });\n }\n\n break;\n case 'ArrowDown':\n if (suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n this.setState({ selectedSuggestion: Math.min(selectedSuggestion + 1, suggestions.size - 1) });\n }\n\n break;\n case 'ArrowUp':\n if (suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n this.setState({ selectedSuggestion: Math.max(selectedSuggestion - 1, 0) });\n }\n\n break;\n case 'Enter':\n case 'Tab':\n // Select suggestion\n if (this.state.lastToken !== null && suggestions.size > 0 && !suggestionsHidden) {\n e.preventDefault();\n e.stopPropagation();\n this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestions.get(selectedSuggestion));\n }\n\n break;\n }\n\n if (e.defaultPrevented || !this.props.onKeyDown) {\n return;\n }\n\n this.props.onKeyDown(e);\n }\n\n onKeyUp = e => {\n if (e.key === 'Escape' && this.state.suggestionsHidden) {\n document.querySelector('.ui').parentElement.focus();\n }\n\n if (this.props.onKeyUp) {\n this.props.onKeyUp(e);\n }\n }\n\n onBlur = () => {\n this.setState({ suggestionsHidden: true });\n }\n\n onSuggestionClick = (e) => {\n const suggestion = this.props.suggestions.get(e.currentTarget.getAttribute('data-index'));\n e.preventDefault();\n this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestion);\n this.textarea.focus();\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.suggestions !== this.props.suggestions && nextProps.suggestions.size > 0 && this.state.suggestionsHidden) {\n this.setState({ suggestionsHidden: false });\n }\n }\n\n setTextarea = (c) => {\n this.textarea = c;\n }\n\n onPaste = (e) => {\n if (e.clipboardData && e.clipboardData.files.length === 1) {\n this.props.onPaste(e.clipboardData.files);\n e.preventDefault();\n }\n }\n\n renderSuggestion = (suggestion, i) => {\n const { selectedSuggestion } = this.state;\n let inner, key;\n\n if (typeof suggestion === 'object') {\n inner = <AutosuggestEmoji emoji={suggestion} />;\n key = suggestion.id;\n } else if (suggestion[0] === '#') {\n inner = suggestion;\n key = suggestion;\n } else {\n inner = <AutosuggestAccountContainer id={suggestion} />;\n key = suggestion;\n }\n\n return (\n <div role='button' tabIndex='0' key={key} data-index={i} className={classNames('autosuggest-textarea__suggestions__item', { selected: i === selectedSuggestion })} onMouseDown={this.onSuggestionClick}>\n {inner}\n </div>\n );\n }\n\n render () {\n const { value, suggestions, disabled, placeholder, autoFocus } = this.props;\n const { suggestionsHidden } = this.state;\n const style = { direction: 'ltr' };\n\n if (isRtl(value)) {\n style.direction = 'rtl';\n }\n\n return (\n <div className='autosuggest-textarea'>\n <label>\n <span style={{ display: 'none' }}>{placeholder}</span>\n\n <Textarea\n inputRef={this.setTextarea}\n className='autosuggest-textarea__textarea'\n disabled={disabled}\n placeholder={placeholder}\n autoFocus={autoFocus}\n value={value}\n onChange={this.onChange}\n onKeyDown={this.onKeyDown}\n onKeyUp={this.onKeyUp}\n onBlur={this.onBlur}\n onPaste={this.onPaste}\n style={style}\n aria-autocomplete='list'\n />\n </label>\n\n <div className={`autosuggest-textarea__suggestions ${suggestionsHidden || suggestions.isEmpty() ? '' : 'autosuggest-textarea__suggestions--visible'}`}>\n {suggestions.map(this.renderSuggestion)}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/autosuggest_textarea.js","import { connect } from 'react-redux';\nimport AutosuggestAccount from '../components/autosuggest_account';\nimport { makeGetAccount } from '../../../selectors';\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { id }) => ({\n account: getAccount(state, id),\n });\n\n return mapStateToProps;\n};\n\nexport default connect(makeMapStateToProps)(AutosuggestAccount);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/autosuggest_account_container.js","import React from 'react';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class AutosuggestAccount extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n render () {\n const { account } = this.props;\n\n return (\n <div className='autosuggest-account'>\n <div className='autosuggest-account-icon'><Avatar account={account} size={18} /></div>\n <DisplayName account={account} />\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/autosuggest_account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport unicodeMapping from '../features/emoji/emoji_unicode_mapping_light';\n\nconst assetHost = process.env.CDN_HOST || '';\n\nexport default class AutosuggestEmoji extends React.PureComponent {\n\n static propTypes = {\n emoji: PropTypes.object.isRequired,\n };\n\n render () {\n const { emoji } = this.props;\n let url;\n\n if (emoji.custom) {\n url = emoji.imageUrl;\n } else {\n const mapping = unicodeMapping[emoji.native] || unicodeMapping[emoji.native.replace(/\\uFE0F$/, '')];\n\n if (!mapping) {\n return null;\n }\n\n url = `${assetHost}/emoji/${mapping.filename}.svg`;\n }\n\n return (\n <div className='autosuggest-emoji'>\n <img\n className='emojione'\n src={url}\n alt={emoji.native || emoji.colons}\n />\n\n {emoji.colons}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/autosuggest_emoji.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nvar isIE = isBrowser ? !!document.documentElement.currentStyle : false;\nvar hiddenTextarea = isBrowser && document.createElement('textarea');\nvar HIDDEN_TEXTAREA_STYLE = {\n 'min-height': '0',\n 'max-height': 'none',\n height: '0',\n visibility: 'hidden',\n overflow: 'hidden',\n position: 'absolute',\n 'z-index': '-1000',\n top: '0',\n right: '0'\n};\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'font-family', 'font-weight', 'font-size', 'font-style', 'tab-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', 'box-sizing'];\nvar computedStyleCache = {};\nfunction calculateNodeHeight(uiTextNode, uid, useCache, minRows, maxRows) {\n if (useCache === void 0) {\n useCache = false;\n }\n\n if (minRows === void 0) {\n minRows = null;\n }\n\n if (maxRows === void 0) {\n maxRows = null;\n }\n\n if (hiddenTextarea.parentNode === null) {\n document.body.appendChild(hiddenTextarea);\n } // Copy all CSS properties that have an impact on the height of the content in\n // the textbox\n\n\n var nodeStyling = calculateNodeStyling(uiTextNode, uid, useCache);\n\n if (nodeStyling === null) {\n return null;\n }\n\n var paddingSize = nodeStyling.paddingSize,\n borderSize = nodeStyling.borderSize,\n boxSizing = nodeStyling.boxSizing,\n sizingStyle = nodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n // text-lines will not calculated properly as the shadow will technically be\n // narrower for content\n\n Object.keys(sizingStyle).forEach(function (key) {\n hiddenTextarea.style[key] = sizingStyle[key];\n });\n Object.keys(HIDDEN_TEXTAREA_STYLE).forEach(function (key) {\n hiddenTextarea.style.setProperty(key, HIDDEN_TEXTAREA_STYLE[key], 'important');\n });\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || 'x';\n var minHeight = -Infinity;\n var maxHeight = Infinity;\n var height = hiddenTextarea.scrollHeight;\n\n if (boxSizing === 'border-box') {\n // border-box: add border, since height = content + padding + border\n height = height + borderSize;\n } else if (boxSizing === 'content-box') {\n // remove padding, since height = content\n height = height - paddingSize;\n } // measure height of a textarea with a single row\n\n\n hiddenTextarea.value = 'x';\n var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n if (minRows !== null || maxRows !== null) {\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows;\n\n if (boxSizing === 'border-box') {\n minHeight = minHeight + paddingSize + borderSize;\n }\n\n height = Math.max(minHeight, height);\n }\n\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows;\n\n if (boxSizing === 'border-box') {\n maxHeight = maxHeight + paddingSize + borderSize;\n }\n\n height = Math.min(maxHeight, height);\n }\n }\n\n var rowCount = Math.floor(height / singleRowHeight);\n return {\n height: height,\n minHeight: minHeight,\n maxHeight: maxHeight,\n rowCount: rowCount\n };\n}\n\nfunction calculateNodeStyling(node, uid, useCache) {\n if (useCache === void 0) {\n useCache = false;\n }\n\n if (useCache && computedStyleCache[uid]) {\n return computedStyleCache[uid];\n }\n\n var style = window.getComputedStyle(node);\n\n if (style === null) {\n return null;\n }\n\n var sizingStyle = SIZING_STYLE.reduce(function (obj, name) {\n obj[name] = style.getPropertyValue(name);\n return obj;\n }, {});\n var boxSizing = sizingStyle['box-sizing']; // IE (Edge has already correct behaviour) returns content width as computed width\n // so we need to add manually padding and border widths\n\n if (isIE && boxSizing === 'border-box') {\n sizingStyle.width = parseFloat(sizingStyle.width) + parseFloat(style['border-right-width']) + parseFloat(style['border-left-width']) + parseFloat(style['padding-right']) + parseFloat(style['padding-left']) + 'px';\n }\n\n var paddingSize = parseFloat(sizingStyle['padding-bottom']) + parseFloat(sizingStyle['padding-top']);\n var borderSize = parseFloat(sizingStyle['border-bottom-width']) + parseFloat(sizingStyle['border-top-width']);\n var nodeInfo = {\n sizingStyle: sizingStyle,\n paddingSize: paddingSize,\n borderSize: borderSize,\n boxSizing: boxSizing\n };\n\n if (useCache) {\n computedStyleCache[uid] = nodeInfo;\n }\n\n return nodeInfo;\n}\n\nvar purgeCache = function purgeCache(uid) {\n return delete computedStyleCache[uid];\n};\n\nfunction autoInc(seed) {\n if (seed === void 0) {\n seed = 0;\n }\n\n return function () {\n return ++seed;\n };\n}\n\nvar uid = autoInc();\n\n/**\n * <TextareaAutosize />\n */\nvar noop = function noop() {}; // IE11 has a problem with eval source maps, can be reproduced with:\n// eval('\"use strict\"; var onNextFrame = window.cancelAnimationFrame; onNextFrame(4);')\n// so we bind window as context in dev modes\n\n\nvar _ref = isBrowser && window.requestAnimationFrame ? process.env.NODE_ENV !== 'development' ? [window.requestAnimationFrame, window.cancelAnimationFrame] : [window.requestAnimationFrame.bind(window), window.cancelAnimationFrame.bind(window)] : [setTimeout, clearTimeout];\nvar onNextFrame = _ref[0];\nvar clearNextFrameAction = _ref[1];\n\nvar TextareaAutosize =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(TextareaAutosize, _React$Component);\n\n function TextareaAutosize(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n _this._resizeLock = false;\n\n _this._onRootDOMNode = function (node) {\n _this._rootDOMNode = node;\n\n if (_this.props.inputRef) {\n _this.props.inputRef(node);\n }\n };\n\n _this._onChange = function (event) {\n if (!_this._controlled) {\n _this._resizeComponent();\n }\n\n _this.props.onChange(event);\n };\n\n _this._resizeComponent = function (callback) {\n if (callback === void 0) {\n callback = noop;\n }\n\n if (typeof _this._rootDOMNode === 'undefined') {\n callback();\n return;\n }\n\n var nodeHeight = calculateNodeHeight(_this._rootDOMNode, _this._uid, _this.props.useCacheForDOMMeasurements, _this.props.minRows, _this.props.maxRows);\n\n if (nodeHeight === null) {\n callback();\n return;\n }\n\n var height = nodeHeight.height,\n minHeight = nodeHeight.minHeight,\n maxHeight = nodeHeight.maxHeight,\n rowCount = nodeHeight.rowCount;\n _this.rowCount = rowCount;\n\n if (_this.state.height !== height || _this.state.minHeight !== minHeight || _this.state.maxHeight !== maxHeight) {\n _this.setState({\n height: height,\n minHeight: minHeight,\n maxHeight: maxHeight\n }, callback);\n\n return;\n }\n\n callback();\n };\n\n _this.state = {\n height: props.style && props.style.height || 0,\n minHeight: -Infinity,\n maxHeight: Infinity\n };\n _this._uid = uid();\n _this._controlled = typeof props.value === 'string';\n return _this;\n }\n\n var _proto = TextareaAutosize.prototype;\n\n _proto.render = function render() {\n var _props = this.props,\n _minRows = _props.minRows,\n _maxRows = _props.maxRows,\n _onHeightChange = _props.onHeightChange,\n _useCacheForDOMMeasurements = _props.useCacheForDOMMeasurements,\n _inputRef = _props.inputRef,\n props = _objectWithoutProperties(_props, [\"minRows\", \"maxRows\", \"onHeightChange\", \"useCacheForDOMMeasurements\", \"inputRef\"]);\n props.style = _extends({}, props.style, {\n height: this.state.height\n });\n var maxHeight = Math.max(props.style.maxHeight || Infinity, this.state.maxHeight);\n\n if (maxHeight < this.state.height) {\n props.style.overflow = 'hidden';\n }\n\n return React.createElement(\"textarea\", _extends({}, props, {\n onChange: this._onChange,\n ref: this._onRootDOMNode\n }));\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n this._resizeComponent(); // Working around Firefox bug which runs resize listeners even when other JS is running at the same moment\n // causing competing rerenders (due to setState in the listener) in React.\n // More can be found here - facebook/react#6324\n\n\n this._resizeListener = function () {\n if (_this2._resizeLock) {\n return;\n }\n\n _this2._resizeLock = true;\n\n _this2._resizeComponent(function () {\n return _this2._resizeLock = false;\n });\n };\n\n window.addEventListener('resize', this._resizeListener);\n };\n\n _proto.componentWillReceiveProps = function componentWillReceiveProps() {\n var _this3 = this;\n\n this._clearNextFrame();\n\n this._onNextFrameActionId = onNextFrame(function () {\n return _this3._resizeComponent();\n });\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (this.state.height !== prevState.height) {\n this.props.onHeightChange(this.state.height, this);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this._clearNextFrame();\n\n window.removeEventListener('resize', this._resizeListener);\n purgeCache(this._uid);\n };\n\n _proto._clearNextFrame = function _clearNextFrame() {\n clearNextFrameAction(this._onNextFrameActionId);\n };\n\n return TextareaAutosize;\n}(React.Component);\n\nTextareaAutosize.propTypes = {\n value: PropTypes.string,\n onChange: PropTypes.func,\n onHeightChange: PropTypes.func,\n useCacheForDOMMeasurements: PropTypes.bool,\n minRows: PropTypes.number,\n maxRows: PropTypes.number,\n inputRef: PropTypes.func\n};\nTextareaAutosize.defaultProps = {\n onChange: noop,\n onHeightChange: noop,\n useCacheForDOMMeasurements: false\n};\n\nexport default TextareaAutosize;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-textarea-autosize/es/index.js","import { connect } from 'react-redux';\nimport UploadButton from '../components/upload_button';\nimport { uploadCompose } from '../../../actions/compose';\n\nconst mapStateToProps = state => ({\n disabled: state.getIn(['compose', 'is_uploading']) || (state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(m => m.get('type') === 'video')),\n resetFileKey: state.getIn(['compose', 'resetFileKey']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onSelectFile (files) {\n dispatch(uploadCompose(files));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(UploadButton);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_button_container.js","import React from 'react';\nimport IconButton from '../../../components/icon_button';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { connect } from 'react-redux';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nconst messages = defineMessages({\n upload: { id: 'upload_button.label', defaultMessage: 'Add media' },\n});\n\nconst makeMapStateToProps = () => {\n const mapStateToProps = state => ({\n acceptContentTypes: state.getIn(['media_attachments', 'accept_content_types']),\n });\n\n return mapStateToProps;\n};\n\nconst iconStyle = {\n height: null,\n lineHeight: '27px',\n};\n\n@connect(makeMapStateToProps)\n@injectIntl\nexport default class UploadButton extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n onSelectFile: PropTypes.func.isRequired,\n style: PropTypes.object,\n resetFileKey: PropTypes.number,\n acceptContentTypes: ImmutablePropTypes.listOf(PropTypes.string).isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleChange = (e) => {\n if (e.target.files.length > 0) {\n this.props.onSelectFile(e.target.files);\n }\n }\n\n handleClick = () => {\n this.fileElement.click();\n }\n\n setRef = (c) => {\n this.fileElement = c;\n }\n\n render () {\n\n const { intl, resetFileKey, disabled, acceptContentTypes } = this.props;\n\n return (\n <div className='compose-form__upload-button'>\n <IconButton icon='camera' title={intl.formatMessage(messages.upload)} disabled={disabled} onClick={this.handleClick} className='compose-form__upload-button-icon' size={18} inverted style={iconStyle} />\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.upload)}</span>\n <input\n key={resetFileKey}\n ref={this.setRef}\n type='file'\n multiple={false}\n accept={acceptContentTypes.toArray().join(',')}\n onChange={this.handleChange}\n disabled={disabled}\n style={{ display: 'none' }}\n />\n </label>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_button.js","import React from 'react';\nimport Motion from '../features/ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport PropTypes from 'prop-types';\n\nconst Collapsable = ({ fullHeight, isVisible, children }) => (\n <Motion defaultStyle={{ opacity: !isVisible ? 0 : 100, height: isVisible ? fullHeight : 0 }} style={{ opacity: spring(!isVisible ? 0 : 100), height: spring(!isVisible ? 0 : fullHeight) }}>\n {({ opacity, height }) => (\n <div style={{ height: `${height}px`, overflow: 'hidden', opacity: opacity / 100, display: Math.floor(opacity) === 0 ? 'none' : 'block' }}>\n {children}\n </div>\n )}\n </Motion>\n);\n\nCollapsable.propTypes = {\n fullHeight: PropTypes.number.isRequired,\n isVisible: PropTypes.bool.isRequired,\n children: PropTypes.node.isRequired,\n};\n\nexport default Collapsable;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/collapsable.js","import { connect } from 'react-redux';\nimport TextIconButton from '../components/text_icon_button';\nimport { changeComposeSpoilerness } from '../../../actions/compose';\nimport { injectIntl, defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n marked: { id: 'compose_form.spoiler.marked', defaultMessage: 'Text is hidden behind warning' },\n unmarked: { id: 'compose_form.spoiler.unmarked', defaultMessage: 'Text is not hidden' },\n});\n\nconst mapStateToProps = (state, { intl }) => ({\n label: 'CW',\n title: intl.formatMessage(state.getIn(['compose', 'spoiler']) ? messages.marked : messages.unmarked),\n active: state.getIn(['compose', 'spoiler']),\n ariaControls: 'cw-spoiler-input',\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onClick () {\n dispatch(changeComposeSpoilerness());\n },\n\n});\n\nexport default injectIntl(connect(mapStateToProps, mapDispatchToProps)(TextIconButton));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/spoiler_button_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nexport default class TextIconButton extends React.PureComponent {\n\n static propTypes = {\n label: PropTypes.string.isRequired,\n title: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func.isRequired,\n ariaControls: PropTypes.string,\n };\n\n handleClick = (e) => {\n e.preventDefault();\n this.props.onClick();\n }\n\n render () {\n const { label, title, active, ariaControls } = this.props;\n\n return (\n <button title={title} aria-label={title} className={`text-icon-button ${active ? 'active' : ''}`} aria-expanded={active} onClick={this.handleClick} aria-controls={ariaControls}>\n {label}\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/text_icon_button.js","import { connect } from 'react-redux';\nimport PrivacyDropdown from '../components/privacy_dropdown';\nimport { changeComposeVisibility } from '../../../actions/compose';\nimport { openModal, closeModal } from '../../../actions/modal';\nimport { isUserTouching } from '../../../is_mobile';\n\nconst mapStateToProps = state => ({\n isModalOpen: state.get('modal').modalType === 'ACTIONS',\n value: state.getIn(['compose', 'privacy']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (value) {\n dispatch(changeComposeVisibility(value));\n },\n\n isUserTouching,\n onModalOpen: props => dispatch(openModal('ACTIONS', props)),\n onModalClose: () => dispatch(closeModal()),\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PrivacyDropdown);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/privacy_dropdown_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { injectIntl, defineMessages } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport detectPassiveEvents from 'detect-passive-events';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n public_short: { id: 'privacy.public.short', defaultMessage: 'Public' },\n public_long: { id: 'privacy.public.long', defaultMessage: 'Post to public timelines' },\n unlisted_short: { id: 'privacy.unlisted.short', defaultMessage: 'Unlisted' },\n unlisted_long: { id: 'privacy.unlisted.long', defaultMessage: 'Do not show in public timelines' },\n private_short: { id: 'privacy.private.short', defaultMessage: 'Followers-only' },\n private_long: { id: 'privacy.private.long', defaultMessage: 'Post to followers only' },\n direct_short: { id: 'privacy.direct.short', defaultMessage: 'Direct' },\n direct_long: { id: 'privacy.direct.long', defaultMessage: 'Post to mentioned users only' },\n change_privacy: { id: 'privacy.change', defaultMessage: 'Adjust status privacy' },\n});\n\nconst listenerOptions = detectPassiveEvents.hasSupport ? { passive: true } : false;\n\nclass PrivacyDropdownMenu extends React.PureComponent {\n\n static propTypes = {\n style: PropTypes.object,\n items: PropTypes.array.isRequired,\n value: PropTypes.string.isRequired,\n onClose: PropTypes.func.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n handleDocumentClick = e => {\n if (this.node && !this.node.contains(e.target)) {\n this.props.onClose();\n }\n }\n\n handleClick = e => {\n if (e.key === 'Escape') {\n this.props.onClose();\n } else if (!e.key || e.key === 'Enter') {\n const value = e.currentTarget.getAttribute('data-index');\n\n e.preventDefault();\n\n this.props.onClose();\n this.props.onChange(value);\n }\n }\n\n componentDidMount () {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n componentWillUnmount () {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { style, items, value } = this.props;\n\n return (\n <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n {({ opacity, scaleX, scaleY }) => (\n <div className='privacy-dropdown__dropdown' style={{ ...style, opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }} ref={this.setRef}>\n {items.map(item => (\n <div role='button' tabIndex='0' key={item.value} data-index={item.value} onKeyDown={this.handleClick} onClick={this.handleClick} className={classNames('privacy-dropdown__option', { active: item.value === value })}>\n <div className='privacy-dropdown__option__icon'>\n <i className={`fa fa-fw fa-${item.icon}`} />\n </div>\n\n <div className='privacy-dropdown__option__content'>\n <strong>{item.text}</strong>\n {item.meta}\n </div>\n </div>\n ))}\n </div>\n )}\n </Motion>\n );\n }\n\n}\n\n@injectIntl\nexport default class PrivacyDropdown extends React.PureComponent {\n\n static propTypes = {\n isUserTouching: PropTypes.func,\n isModalOpen: PropTypes.bool.isRequired,\n onModalOpen: PropTypes.func,\n onModalClose: PropTypes.func,\n value: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n state = {\n open: false,\n };\n\n handleToggle = () => {\n if (this.props.isUserTouching()) {\n if (this.state.open) {\n this.props.onModalClose();\n } else {\n this.props.onModalOpen({\n actions: this.options.map(option => ({ ...option, active: option.value === this.props.value })),\n onClick: this.handleModalActionClick,\n });\n }\n } else {\n this.setState({ open: !this.state.open });\n }\n }\n\n handleModalActionClick = (e) => {\n e.preventDefault();\n\n const { value } = this.options[e.currentTarget.getAttribute('data-index')];\n\n this.props.onModalClose();\n this.props.onChange(value);\n }\n\n handleKeyDown = e => {\n switch(e.key) {\n case 'Enter':\n this.handleToggle();\n break;\n case 'Escape':\n this.handleClose();\n break;\n }\n }\n\n handleClose = () => {\n this.setState({ open: false });\n }\n\n handleChange = value => {\n this.props.onChange(value);\n }\n\n componentWillMount () {\n const { intl: { formatMessage } } = this.props;\n\n this.options = [\n { icon: 'globe', value: 'public', text: formatMessage(messages.public_short), meta: formatMessage(messages.public_long) },\n { icon: 'unlock-alt', value: 'unlisted', text: formatMessage(messages.unlisted_short), meta: formatMessage(messages.unlisted_long) },\n { icon: 'lock', value: 'private', text: formatMessage(messages.private_short), meta: formatMessage(messages.private_long) },\n { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) },\n ];\n }\n\n render () {\n const { value, intl } = this.props;\n const { open } = this.state;\n\n const valueOption = this.options.find(item => item.value === value);\n\n return (\n <div className={classNames('privacy-dropdown', { active: open })} onKeyDown={this.handleKeyDown}>\n <div className={classNames('privacy-dropdown__value', { active: this.options.indexOf(valueOption) === 0 })}>\n <IconButton\n className='privacy-dropdown__value-icon'\n icon={valueOption.icon}\n title={intl.formatMessage(messages.change_privacy)}\n size={18}\n expanded={open}\n active={open}\n inverted\n onClick={this.handleToggle}\n style={{ height: null, lineHeight: '27px' }}\n />\n </div>\n\n <Overlay show={open} placement='bottom' target={this}>\n <PrivacyDropdownMenu\n items={this.options}\n value={value}\n onClose={this.handleClose}\n onChange={this.handleChange}\n />\n </Overlay>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/privacy_dropdown.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport IconButton from '../../../components/icon_button';\nimport { changeComposeSensitivity } from '../../../actions/compose';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { injectIntl, defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n marked: { id: 'compose_form.sensitive.marked', defaultMessage: 'Media is marked as sensitive' },\n unmarked: { id: 'compose_form.sensitive.unmarked', defaultMessage: 'Media is not marked as sensitive' },\n});\n\nconst mapStateToProps = state => ({\n visible: state.getIn(['compose', 'media_attachments']).size > 0,\n active: state.getIn(['compose', 'sensitive']),\n disabled: state.getIn(['compose', 'spoiler']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onClick () {\n dispatch(changeComposeSensitivity());\n },\n\n});\n\nclass SensitiveButton extends React.PureComponent {\n\n static propTypes = {\n visible: PropTypes.bool,\n active: PropTypes.bool,\n disabled: PropTypes.bool,\n onClick: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { visible, active, disabled, onClick, intl } = this.props;\n\n return (\n <Motion defaultStyle={{ scale: 0.87 }} style={{ scale: spring(visible ? 1 : 0.87, { stiffness: 200, damping: 3 }) }}>\n {({ scale }) => {\n const icon = active ? 'eye-slash' : 'eye';\n const className = classNames('compose-form__sensitive-button', {\n 'compose-form__sensitive-button--visible': visible,\n });\n return (\n <div className={className} style={{ transform: `scale(${scale})` }}>\n <IconButton\n className='compose-form__sensitive-button__icon'\n title={intl.formatMessage(active ? messages.marked : messages.unmarked)}\n icon={icon}\n onClick={onClick}\n size={18}\n active={active}\n disabled={disabled}\n style={{ lineHeight: null, height: null }}\n inverted\n />\n </div>\n );\n }}\n </Motion>\n );\n }\n\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(injectIntl(SensitiveButton));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/sensitive_button_container.js","import { connect } from 'react-redux';\nimport EmojiPickerDropdown from '../components/emoji_picker_dropdown';\nimport { changeSetting } from '../../../actions/settings';\nimport { createSelector } from 'reselect';\nimport { Map as ImmutableMap } from 'immutable';\nimport { useEmoji } from '../../../actions/emojis';\n\nconst perLine = 8;\nconst lines = 2;\n\nconst DEFAULTS = [\n '+1',\n 'grinning',\n 'kissing_heart',\n 'heart_eyes',\n 'laughing',\n 'stuck_out_tongue_winking_eye',\n 'sweat_smile',\n 'joy',\n 'yum',\n 'disappointed',\n 'thinking_face',\n 'weary',\n 'sob',\n 'sunglasses',\n 'heart',\n 'ok_hand',\n];\n\nconst getFrequentlyUsedEmojis = createSelector([\n state => state.getIn(['settings', 'frequentlyUsedEmojis'], ImmutableMap()),\n], emojiCounters => {\n let emojis = emojiCounters\n .keySeq()\n .sort((a, b) => emojiCounters.get(a) - emojiCounters.get(b))\n .reverse()\n .slice(0, perLine * lines)\n .toArray();\n\n if (emojis.length < DEFAULTS.length) {\n emojis = emojis.concat(DEFAULTS.slice(0, DEFAULTS.length - emojis.length));\n }\n\n return emojis;\n});\n\nconst getCustomEmojis = createSelector([\n state => state.get('custom_emojis'),\n], emojis => emojis.filter(e => e.get('visible_in_picker')).sort((a, b) => {\n const aShort = a.get('shortcode').toLowerCase();\n const bShort = b.get('shortcode').toLowerCase();\n\n if (aShort < bShort) {\n return -1;\n } else if (aShort > bShort ) {\n return 1;\n } else {\n return 0;\n }\n}));\n\nconst mapStateToProps = state => ({\n custom_emojis: getCustomEmojis(state),\n skinTone: state.getIn(['settings', 'skinTone']),\n frequentlyUsedEmojis: getFrequentlyUsedEmojis(state),\n});\n\nconst mapDispatchToProps = (dispatch, { onPickEmoji }) => ({\n onSkinTone: skinTone => {\n dispatch(changeSetting(['skinTone'], skinTone));\n },\n\n onPickEmoji: emoji => {\n dispatch(useEmoji(emoji));\n\n if (onPickEmoji) {\n onPickEmoji(emoji);\n }\n },\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(EmojiPickerDropdown);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { EmojiPicker as EmojiPickerAsync } from '../../ui/util/async-components';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport classNames from 'classnames';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport detectPassiveEvents from 'detect-passive-events';\nimport { buildCustomEmojis } from '../../emoji/emoji';\n\nconst messages = defineMessages({\n emoji: { id: 'emoji_button.label', defaultMessage: 'Insert emoji' },\n emoji_search: { id: 'emoji_button.search', defaultMessage: 'Search...' },\n emoji_not_found: { id: 'emoji_button.not_found', defaultMessage: 'No emojos!! (╯°□°)╯︵ ┻━┻' },\n custom: { id: 'emoji_button.custom', defaultMessage: 'Custom' },\n recent: { id: 'emoji_button.recent', defaultMessage: 'Frequently used' },\n search_results: { id: 'emoji_button.search_results', defaultMessage: 'Search results' },\n people: { id: 'emoji_button.people', defaultMessage: 'People' },\n nature: { id: 'emoji_button.nature', defaultMessage: 'Nature' },\n food: { id: 'emoji_button.food', defaultMessage: 'Food & Drink' },\n activity: { id: 'emoji_button.activity', defaultMessage: 'Activity' },\n travel: { id: 'emoji_button.travel', defaultMessage: 'Travel & Places' },\n objects: { id: 'emoji_button.objects', defaultMessage: 'Objects' },\n symbols: { id: 'emoji_button.symbols', defaultMessage: 'Symbols' },\n flags: { id: 'emoji_button.flags', defaultMessage: 'Flags' },\n});\n\nconst assetHost = process.env.CDN_HOST || '';\nlet EmojiPicker, Emoji; // load asynchronously\n\nconst backgroundImageFn = () => `${assetHost}/emoji/sheet.png`;\nconst listenerOptions = detectPassiveEvents.hasSupport ? { passive: true } : false;\n\nconst categoriesSort = [\n 'recent',\n 'custom',\n 'people',\n 'nature',\n 'foods',\n 'activity',\n 'places',\n 'objects',\n 'symbols',\n 'flags',\n];\n\nclass ModifierPickerMenu extends React.PureComponent {\n\n static propTypes = {\n active: PropTypes.bool,\n onSelect: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n };\n\n handleClick = e => {\n this.props.onSelect(e.currentTarget.getAttribute('data-index') * 1);\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.active) {\n this.attachListeners();\n } else {\n this.removeListeners();\n }\n }\n\n componentWillUnmount () {\n this.removeListeners();\n }\n\n handleDocumentClick = e => {\n if (this.node && !this.node.contains(e.target)) {\n this.props.onClose();\n }\n }\n\n attachListeners () {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n removeListeners () {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { active } = this.props;\n\n return (\n <div className='emoji-picker-dropdown__modifiers__menu' style={{ display: active ? 'block' : 'none' }} ref={this.setRef}>\n <button onClick={this.handleClick} data-index={1}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={1} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={2}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={2} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={3}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={3} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={4}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={4} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={5}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={5} backgroundImageFn={backgroundImageFn} /></button>\n <button onClick={this.handleClick} data-index={6}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={6} backgroundImageFn={backgroundImageFn} /></button>\n </div>\n );\n }\n\n}\n\nclass ModifierPicker extends React.PureComponent {\n\n static propTypes = {\n active: PropTypes.bool,\n modifier: PropTypes.number,\n onChange: PropTypes.func,\n onClose: PropTypes.func,\n onOpen: PropTypes.func,\n };\n\n handleClick = () => {\n if (this.props.active) {\n this.props.onClose();\n } else {\n this.props.onOpen();\n }\n }\n\n handleSelect = modifier => {\n this.props.onChange(modifier);\n this.props.onClose();\n }\n\n render () {\n const { active, modifier } = this.props;\n\n return (\n <div className='emoji-picker-dropdown__modifiers'>\n <Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={modifier} onClick={this.handleClick} backgroundImageFn={backgroundImageFn} />\n <ModifierPickerMenu active={active} onSelect={this.handleSelect} onClose={this.props.onClose} />\n </div>\n );\n }\n\n}\n\n@injectIntl\nclass EmojiPickerMenu extends React.PureComponent {\n\n static propTypes = {\n custom_emojis: ImmutablePropTypes.list,\n frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.string),\n loading: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onPick: PropTypes.func.isRequired,\n style: PropTypes.object,\n placement: PropTypes.string,\n arrowOffsetLeft: PropTypes.string,\n arrowOffsetTop: PropTypes.string,\n intl: PropTypes.object.isRequired,\n skinTone: PropTypes.number.isRequired,\n onSkinTone: PropTypes.func.isRequired,\n };\n\n static defaultProps = {\n style: {},\n loading: true,\n placement: 'bottom',\n frequentlyUsedEmojis: [],\n };\n\n state = {\n modifierOpen: false,\n };\n\n handleDocumentClick = e => {\n if (this.node && !this.node.contains(e.target)) {\n this.props.onClose();\n }\n }\n\n componentDidMount () {\n document.addEventListener('click', this.handleDocumentClick, false);\n document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n componentWillUnmount () {\n document.removeEventListener('click', this.handleDocumentClick, false);\n document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n }\n\n setRef = c => {\n this.node = c;\n }\n\n getI18n = () => {\n const { intl } = this.props;\n\n return {\n search: intl.formatMessage(messages.emoji_search),\n notfound: intl.formatMessage(messages.emoji_not_found),\n categories: {\n search: intl.formatMessage(messages.search_results),\n recent: intl.formatMessage(messages.recent),\n people: intl.formatMessage(messages.people),\n nature: intl.formatMessage(messages.nature),\n foods: intl.formatMessage(messages.food),\n activity: intl.formatMessage(messages.activity),\n places: intl.formatMessage(messages.travel),\n objects: intl.formatMessage(messages.objects),\n symbols: intl.formatMessage(messages.symbols),\n flags: intl.formatMessage(messages.flags),\n custom: intl.formatMessage(messages.custom),\n },\n };\n }\n\n handleClick = emoji => {\n if (!emoji.native) {\n emoji.native = emoji.colons;\n }\n\n this.props.onClose();\n this.props.onPick(emoji);\n }\n\n handleModifierOpen = () => {\n this.setState({ modifierOpen: true });\n }\n\n handleModifierClose = () => {\n this.setState({ modifierOpen: false });\n }\n\n handleModifierChange = modifier => {\n this.props.onSkinTone(modifier);\n }\n\n render () {\n const { loading, style, intl, custom_emojis, skinTone, frequentlyUsedEmojis } = this.props;\n\n if (loading) {\n return <div style={{ width: 299 }} />;\n }\n\n const title = intl.formatMessage(messages.emoji);\n const { modifierOpen } = this.state;\n\n return (\n <div className={classNames('emoji-picker-dropdown__menu', { selecting: modifierOpen })} style={style} ref={this.setRef}>\n <EmojiPicker\n perLine={8}\n emojiSize={22}\n sheetSize={32}\n custom={buildCustomEmojis(custom_emojis)}\n color=''\n emoji=''\n set='twitter'\n title={title}\n i18n={this.getI18n()}\n onClick={this.handleClick}\n include={categoriesSort}\n recent={frequentlyUsedEmojis}\n skin={skinTone}\n showPreview={false}\n backgroundImageFn={backgroundImageFn}\n emojiTooltip\n />\n\n <ModifierPicker\n active={modifierOpen}\n modifier={skinTone}\n onOpen={this.handleModifierOpen}\n onClose={this.handleModifierClose}\n onChange={this.handleModifierChange}\n />\n </div>\n );\n }\n\n}\n\n@injectIntl\nexport default class EmojiPickerDropdown extends React.PureComponent {\n\n static propTypes = {\n custom_emojis: ImmutablePropTypes.list,\n frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.string),\n intl: PropTypes.object.isRequired,\n onPickEmoji: PropTypes.func.isRequired,\n onSkinTone: PropTypes.func.isRequired,\n skinTone: PropTypes.number.isRequired,\n };\n\n state = {\n active: false,\n loading: false,\n };\n\n setRef = (c) => {\n this.dropdown = c;\n }\n\n onShowDropdown = () => {\n this.setState({ active: true });\n\n if (!EmojiPicker) {\n this.setState({ loading: true });\n\n EmojiPickerAsync().then(EmojiMart => {\n EmojiPicker = EmojiMart.Picker;\n Emoji = EmojiMart.Emoji;\n\n this.setState({ loading: false });\n }).catch(() => {\n this.setState({ loading: false });\n });\n }\n }\n\n onHideDropdown = () => {\n this.setState({ active: false });\n }\n\n onToggle = (e) => {\n if (!this.state.loading && (!e.key || e.key === 'Enter')) {\n if (this.state.active) {\n this.onHideDropdown();\n } else {\n this.onShowDropdown();\n }\n }\n }\n\n handleKeyDown = e => {\n if (e.key === 'Escape') {\n this.onHideDropdown();\n }\n }\n\n setTargetRef = c => {\n this.target = c;\n }\n\n findTarget = () => {\n return this.target;\n }\n\n render () {\n const { intl, onPickEmoji, onSkinTone, skinTone, frequentlyUsedEmojis } = this.props;\n const title = intl.formatMessage(messages.emoji);\n const { active, loading } = this.state;\n\n return (\n <div className='emoji-picker-dropdown' onKeyDown={this.handleKeyDown}>\n <div ref={this.setTargetRef} className='emoji-button' title={title} aria-label={title} aria-expanded={active} role='button' onClick={this.onToggle} onKeyDown={this.onToggle} tabIndex={0}>\n <img\n className={classNames('emojione', { 'pulse-loading': active && loading })}\n alt='🙂'\n src={`${assetHost}/emoji/1f602.svg`}\n />\n </div>\n\n <Overlay show={active} placement='bottom' target={this.findTarget}>\n <EmojiPickerMenu\n custom_emojis={this.props.custom_emojis}\n loading={loading}\n onClose={this.onHideDropdown}\n onPick={onPickEmoji}\n onSkinTone={onSkinTone}\n skinTone={skinTone}\n frequentlyUsedEmojis={frequentlyUsedEmojis}\n />\n </Overlay>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js","import { connect } from 'react-redux';\nimport UploadForm from '../components/upload_form';\n\nconst mapStateToProps = state => ({\n mediaIds: state.getIn(['compose', 'media_attachments']).map(item => item.get('id')),\n});\n\nexport default connect(mapStateToProps)(UploadForm);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_form_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport UploadProgressContainer from '../containers/upload_progress_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport UploadContainer from '../containers/upload_container';\n\nexport default class UploadForm extends ImmutablePureComponent {\n\n static propTypes = {\n mediaIds: ImmutablePropTypes.list.isRequired,\n };\n\n render () {\n const { mediaIds } = this.props;\n\n return (\n <div className='compose-form__upload-wrapper'>\n <UploadProgressContainer />\n\n <div className='compose-form__uploads-wrapper'>\n {mediaIds.map(id => (\n <UploadContainer id={id} key={id} />\n ))}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_form.js","import { connect } from 'react-redux';\nimport UploadProgress from '../components/upload_progress';\n\nconst mapStateToProps = state => ({\n active: state.getIn(['compose', 'is_uploading']),\n progress: state.getIn(['compose', 'progress']),\n});\n\nexport default connect(mapStateToProps)(UploadProgress);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_progress_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { FormattedMessage } from 'react-intl';\n\nexport default class UploadProgress extends React.PureComponent {\n\n static propTypes = {\n active: PropTypes.bool,\n progress: PropTypes.number,\n };\n\n render () {\n const { active, progress } = this.props;\n\n if (!active) {\n return null;\n }\n\n return (\n <div className='upload-progress'>\n <div className='upload-progress__icon'>\n <i className='fa fa-upload' />\n </div>\n\n <div className='upload-progress__message'>\n <FormattedMessage id='upload_progress.label' defaultMessage='Uploading...' />\n\n <div className='upload-progress__backdrop'>\n <Motion defaultStyle={{ width: 0 }} style={{ width: spring(progress) }}>\n {({ width }) =>\n <div className='upload-progress__tracker' style={{ width: `${width}%` }} />\n }\n </Motion>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_progress.js","import { connect } from 'react-redux';\nimport Upload from '../components/upload';\nimport { undoUploadCompose, changeUploadCompose } from '../../../actions/compose';\nimport { openModal } from '../../../actions/modal';\n\nconst mapStateToProps = (state, { id }) => ({\n media: state.getIn(['compose', 'media_attachments']).find(item => item.get('id') === id),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onUndo: id => {\n dispatch(undoUploadCompose(id));\n },\n\n onDescriptionChange: (id, description) => {\n dispatch(changeUploadCompose(id, { description }));\n },\n\n onOpenFocalPoint: id => {\n dispatch(openModal('FOCAL_POINT', { id }));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Upload);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n description: { id: 'upload_form.description', defaultMessage: 'Describe for the visually impaired' },\n});\n\n@injectIntl\nexport default class Upload extends ImmutablePureComponent {\n\n static propTypes = {\n media: ImmutablePropTypes.map.isRequired,\n intl: PropTypes.object.isRequired,\n onUndo: PropTypes.func.isRequired,\n onDescriptionChange: PropTypes.func.isRequired,\n onOpenFocalPoint: PropTypes.func.isRequired,\n };\n\n state = {\n hovered: false,\n focused: false,\n dirtyDescription: null,\n };\n\n handleUndoClick = () => {\n this.props.onUndo(this.props.media.get('id'));\n }\n\n handleFocalPointClick = () => {\n this.props.onOpenFocalPoint(this.props.media.get('id'));\n }\n\n handleInputChange = e => {\n this.setState({ dirtyDescription: e.target.value });\n }\n\n handleMouseEnter = () => {\n this.setState({ hovered: true });\n }\n\n handleMouseLeave = () => {\n this.setState({ hovered: false });\n }\n\n handleInputFocus = () => {\n this.setState({ focused: true });\n }\n\n handleInputBlur = () => {\n const { dirtyDescription } = this.state;\n\n this.setState({ focused: false, dirtyDescription: null });\n\n if (dirtyDescription !== null) {\n this.props.onDescriptionChange(this.props.media.get('id'), dirtyDescription);\n }\n }\n\n render () {\n const { intl, media } = this.props;\n const active = this.state.hovered || this.state.focused;\n const description = this.state.dirtyDescription || (this.state.dirtyDescription !== '' && media.get('description')) || '';\n const focusX = media.getIn(['meta', 'focus', 'x']);\n const focusY = media.getIn(['meta', 'focus', 'y']);\n const x = ((focusX / 2) + .5) * 100;\n const y = ((focusY / -2) + .5) * 100;\n\n return (\n <div className='compose-form__upload' onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>\n <Motion defaultStyle={{ scale: 0.8 }} style={{ scale: spring(1, { stiffness: 180, damping: 12 }) }}>\n {({ scale }) => (\n <div className='compose-form__upload-thumbnail' style={{ transform: `scale(${scale})`, backgroundImage: `url(${media.get('preview_url')})`, backgroundPosition: `${x}% ${y}%` }}>\n <div className={classNames('compose-form__upload__actions', { active })}>\n <button className='icon-button' onClick={this.handleUndoClick}><i className='fa fa-times' /> <FormattedMessage id='upload_form.undo' defaultMessage='Undo' /></button>\n {media.get('type') === 'image' && <button className='icon-button' onClick={this.handleFocalPointClick}><i className='fa fa-crosshairs' /> <FormattedMessage id='upload_form.focus' defaultMessage='Crop' /></button>}\n </div>\n\n <div className={classNames('compose-form__upload-description', { active })}>\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.description)}</span>\n\n <input\n placeholder={intl.formatMessage(messages.description)}\n type='text'\n value={description}\n maxLength={420}\n onFocus={this.handleInputFocus}\n onChange={this.handleInputChange}\n onBlur={this.handleInputBlur}\n />\n </label>\n </div>\n </div>\n )}\n </Motion>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Warning from '../components/warning';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst APPROX_HASHTAG_RE = /(?:^|[^\\/\\)\\w])#(\\w*[a-zA-Z·]\\w*)/i;\n\nconst mapStateToProps = state => ({\n needsLockWarning: state.getIn(['compose', 'privacy']) === 'private' && !state.getIn(['accounts', me, 'locked']),\n hashtagWarning: state.getIn(['compose', 'privacy']) !== 'public' && APPROX_HASHTAG_RE.test(state.getIn(['compose', 'text'])),\n directMessageWarning: state.getIn(['compose', 'privacy']) === 'direct',\n});\n\nconst WarningWrapper = ({ needsLockWarning, hashtagWarning, directMessageWarning }) => {\n if (needsLockWarning) {\n return <Warning message={<FormattedMessage id='compose_form.lock_disclaimer' defaultMessage='Your account is not {locked}. Anyone can follow you to view your follower-only posts.' values={{ locked: <a href='/settings/profile'><FormattedMessage id='compose_form.lock_disclaimer.lock' defaultMessage='locked' /></a> }} />} />;\n }\n if (hashtagWarning) {\n return <Warning message={<FormattedMessage id='compose_form.hashtag_warning' defaultMessage=\"This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.\" />} />;\n }\n if (directMessageWarning) {\n return <Warning message={<FormattedMessage id='compose_form.direct_message_warning' defaultMessage='This toot will only be visible to all the mentioned users.' />} />;\n }\n\n return null;\n};\n\nWarningWrapper.propTypes = {\n needsLockWarning: PropTypes.bool,\n hashtagWarning: PropTypes.bool,\n directMessageWarning: PropTypes.bool,\n};\n\nexport default connect(mapStateToProps)(WarningWrapper);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/warning_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\n\nexport default class Warning extends React.PureComponent {\n\n static propTypes = {\n message: PropTypes.node.isRequired,\n };\n\n render () {\n const { message } = this.props;\n\n return (\n <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n {({ opacity, scaleX, scaleY }) => (\n <div className='compose-form__warning' style={{ opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }}>\n {message}\n </div>\n )}\n </Motion>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/warning.js","import { urlRegex } from './url_regex';\n\nconst urlPlaceholder = 'xxxxxxxxxxxxxxxxxxxxxxx';\n\nexport function countableText(inputText) {\n return inputText\n .replace(urlRegex, urlPlaceholder)\n .replace(/(^|[^\\/\\w])@(([a-z0-9_]+)@[a-z0-9\\.\\-]+[a-z0-9]+)/ig, '$1@$3');\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/util/counter.js","const regexen = {};\n\nconst regexSupplant = function(regex, flags) {\n flags = flags || '';\n if (typeof regex !== 'string') {\n if (regex.global && flags.indexOf('g') < 0) {\n flags += 'g';\n }\n if (regex.ignoreCase && flags.indexOf('i') < 0) {\n flags += 'i';\n }\n if (regex.multiline && flags.indexOf('m') < 0) {\n flags += 'm';\n }\n\n regex = regex.source;\n }\n return new RegExp(regex.replace(/#\\{(\\w+)\\}/g, function(match, name) {\n var newRegex = regexen[name] || '';\n if (typeof newRegex !== 'string') {\n newRegex = newRegex.source;\n }\n return newRegex;\n }), flags);\n};\n\nconst stringSupplant = function(str, values) {\n return str.replace(/#\\{(\\w+)\\}/g, function(match, name) {\n return values[name] || '';\n });\n};\n\nexport const urlRegex = (function() {\n regexen.spaces_group = /\\x09-\\x0D\\x20\\x85\\xA0\\u1680\\u180E\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000/;\n regexen.invalid_chars_group = /\\uFFFE\\uFEFF\\uFFFF\\u202A-\\u202E/;\n regexen.punct = /\\!'#%&'\\(\\)*\\+,\\\\\\-\\.\\/:;<=>\\?@\\[\\]\\^_{|}~\\$/;\n regexen.validUrlPrecedingChars = regexSupplant(/(?:[^A-Za-z0-9@@$###{invalid_chars_group}]|^)/);\n regexen.invalidDomainChars = stringSupplant('#{punct}#{spaces_group}#{invalid_chars_group}', regexen);\n regexen.validDomainChars = regexSupplant(/[^#{invalidDomainChars}]/);\n regexen.validSubdomain = regexSupplant(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n regexen.validDomainName = regexSupplant(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n regexen.validGTLD = regexSupplant(RegExp(\n '(?:(?:' +\n '삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|' +\n '政务|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|' +\n 'ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|' +\n 'بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|' +\n 'zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|' +\n 'yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|' +\n 'wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|' +\n 'website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|' +\n 'wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|' +\n 'vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|' +\n 'vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|' +\n 'university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|' +\n 'travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|' +\n 'toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|' +\n 'tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|' +\n 'tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|' +\n 'swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|' +\n 'stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|' +\n 'stada|srt|srl|spreadbetting|spot|spiegel|space|soy|sony|song|solutions|solar|sohu|software|' +\n 'softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|' +\n 'showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|' +\n 'sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|' +\n 'science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|' +\n 'sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|' +\n 'saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|' +\n 'rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|' +\n 'repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|' +\n 'realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|' +\n 'protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|' +\n 'pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|' +\n 'pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|' +\n 'pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|' +\n 'pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|' +\n 'onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|' +\n 'obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|' +\n 'nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|' +\n 'net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|' +\n 'msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|' +\n 'monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|' +\n 'miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|' +\n 'mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|' +\n 'makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|' +\n 'lotte|london|lol|loft|locus|locker|loans|loan|lixil|living|live|lipsy|link|linde|lincoln|limo|' +\n 'limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|' +\n 'lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|' +\n 'lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|' +\n 'komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|' +\n 'kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|' +\n 'jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|' +\n 'investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|' +\n 'industries|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|' +\n 'hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|' +\n 'honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|' +\n 'hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|' +\n 'hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|' +\n 'gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|' +\n 'globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|' +\n 'garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|' +\n 'ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|' +\n 'football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|' +\n 'fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|' +\n 'ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|' +\n 'extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|' +\n 'estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|' +\n 'email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|' +\n 'download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|' +\n 'direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|' +\n 'delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|' +\n 'cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|courses|' +\n 'coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|' +\n 'construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|' +\n 'college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|' +\n 'cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|' +\n 'chintai|cheap|chat|chase|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|' +\n 'catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|' +\n 'capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|' +\n 'bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|' +\n 'bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|' +\n 'boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|' +\n 'black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|' +\n 'beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|' +\n 'barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|' +\n 'autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|' +\n 'art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|' +\n 'amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|' +\n 'alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|' +\n 'afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|' +\n 'academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion' +\n ')(?=[^0-9a-zA-Z@]|$))'));\n regexen.validCCTLD = regexSupplant(RegExp(\n '(?:(?:' +\n '한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|' +\n 'ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|' +\n 'بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ελ|' +\n 'zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|' +\n 'tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|' +\n 're|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|' +\n 'mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|' +\n 'ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|' +\n 'gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|' +\n 'do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|' +\n 'bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac' +\n ')(?=[^0-9a-zA-Z@]|$))'));\n regexen.validPunycode = /(?:xn--[0-9a-z]+)/;\n regexen.validSpecialCCTLD = /(?:(?:co|tv)(?=[^0-9a-zA-Z@]|$))/;\n regexen.validDomain = regexSupplant(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/);\n regexen.validPortNumber = /[0-9]+/;\n regexen.pd = /\\u002d\\u058a\\u05be\\u1400\\u1806\\u2010-\\u2015\\u2e17\\u2e1a\\u2e3a\\u2e40\\u301c\\u3030\\u30a0\\ufe31\\ufe58\\ufe63\\uff0d/;\n regexen.validGeneralUrlPathChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?]/i);\n // Allow URL paths to contain up to two nested levels of balanced parens\n // 1. Used in Wikipedia URLs like /Primer_(film)\n // 2. Used in IIS sessions like /S(dfd346)/\n // 3. Used in Rdio URLs like /track/We_Up_(Album_Version_(Edited))/\n regexen.validUrlBalancedParens = regexSupplant(\n '\\\\(' +\n '(?:' +\n '#{validGeneralUrlPathChars}+' +\n '|' +\n // allow one nested level of balanced parentheses\n '(?:' +\n '#{validGeneralUrlPathChars}*' +\n '\\\\(' +\n '#{validGeneralUrlPathChars}+' +\n '\\\\)' +\n '#{validGeneralUrlPathChars}*' +\n ')' +\n ')' +\n '\\\\)',\n 'i');\n // Valid end-of-path chracters (so /foo. does not gobble the period).\n // 1. Allow =&# for empty URL parameters and other URL-join artifacts\n regexen.validUrlPathEndingChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?!\\*';:=\\,\\.\\$%\\[\\]#{pd}~&\\|@]|(?:#{validUrlBalancedParens})/i);\n // Allow @ in a url, but only in the middle. Catch things like http://example.com/@user/\n regexen.validUrlPath = regexSupplant('(?:' +\n '(?:' +\n '#{validGeneralUrlPathChars}*' +\n '(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*' +\n '#{validUrlPathEndingChars}'+\n ')|(?:@#{validGeneralUrlPathChars}+\\/)'+\n ')', 'i');\n regexen.validUrlQueryChars = /[a-z0-9!?\\*'@\\(\\);:&=\\+\\$\\/%#\\[\\]\\-_\\.,~|]/i;\n regexen.validUrlQueryEndingChars = /[a-z0-9_&=#\\/]/i;\n regexen.validUrl = regexSupplant(\n '(' + // $1 URL\n '(https?:\\\\/\\\\/)' + // $2 Protocol\n '(#{validDomain})' + // $3 Domain(s)\n '(?::(#{validPortNumber}))?' + // $4 Port number (optional)\n '(\\\\/#{validUrlPath}*)?' + // $5 URL Path\n '(\\\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?' + // $6 Query String\n ')',\n 'gi');\n return regexen.validUrl;\n}());\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/util/url_regex.js","import { connect } from 'react-redux';\nimport ComposeForm from '../components/compose_form';\nimport { uploadCompose } from '../../../actions/compose';\nimport {\n changeCompose,\n submitCompose,\n clearComposeSuggestions,\n fetchComposeSuggestions,\n selectComposeSuggestion,\n changeComposeSpoilerText,\n insertEmojiCompose,\n} from '../../../actions/compose';\n\nconst mapStateToProps = state => ({\n text: state.getIn(['compose', 'text']),\n suggestion_token: state.getIn(['compose', 'suggestion_token']),\n suggestions: state.getIn(['compose', 'suggestions']),\n spoiler: state.getIn(['compose', 'spoiler']),\n spoiler_text: state.getIn(['compose', 'spoiler_text']),\n privacy: state.getIn(['compose', 'privacy']),\n focusDate: state.getIn(['compose', 'focusDate']),\n preselectDate: state.getIn(['compose', 'preselectDate']),\n is_submitting: state.getIn(['compose', 'is_submitting']),\n is_uploading: state.getIn(['compose', 'is_uploading']),\n showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n anyMedia: state.getIn(['compose', 'media_attachments']).size > 0,\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onChange (text) {\n dispatch(changeCompose(text));\n },\n\n onSubmit () {\n dispatch(submitCompose());\n },\n\n onClearSuggestions () {\n dispatch(clearComposeSuggestions());\n },\n\n onFetchSuggestions (token) {\n dispatch(fetchComposeSuggestions(token));\n },\n\n onSuggestionSelected (position, token, accountId) {\n dispatch(selectComposeSuggestion(position, token, accountId));\n },\n\n onChangeSpoilerText (checked) {\n dispatch(changeComposeSpoilerText(checked));\n },\n\n onPaste (files) {\n dispatch(uploadCompose(files));\n },\n\n onPickEmoji (position, data) {\n dispatch(insertEmojiCompose(position, data));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ComposeForm);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/compose_form_container.js","import React from 'react';\nimport ComposeFormContainer from './containers/compose_form_container';\nimport NavigationContainer from './containers/navigation_container';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { connect } from 'react-redux';\nimport { mountCompose, unmountCompose } from '../../actions/compose';\nimport { Link } from 'react-router-dom';\nimport { injectIntl, defineMessages } from 'react-intl';\nimport SearchContainer from './containers/search_container';\nimport Motion from '../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport SearchResultsContainer from './containers/search_results_container';\nimport { changeComposing } from '../../actions/compose';\n\nconst messages = defineMessages({\n start: { id: 'getting_started.heading', defaultMessage: 'Getting started' },\n home_timeline: { id: 'tabs_bar.home', defaultMessage: 'Home' },\n notifications: { id: 'tabs_bar.notifications', defaultMessage: 'Notifications' },\n public: { id: 'navigation_bar.public_timeline', defaultMessage: 'Federated timeline' },\n community: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },\n preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },\n logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },\n});\n\nconst mapStateToProps = state => ({\n columns: state.getIn(['settings', 'columns']),\n showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Compose extends React.PureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n columns: ImmutablePropTypes.list.isRequired,\n multiColumn: PropTypes.bool,\n showSearch: PropTypes.bool,\n intl: PropTypes.object.isRequired,\n };\n\n componentDidMount () {\n this.props.dispatch(mountCompose());\n }\n\n componentWillUnmount () {\n this.props.dispatch(unmountCompose());\n }\n\n onFocus = () => {\n this.props.dispatch(changeComposing(true));\n }\n\n onBlur = () => {\n this.props.dispatch(changeComposing(false));\n }\n\n render () {\n const { multiColumn, showSearch, intl } = this.props;\n\n let header = '';\n\n if (multiColumn) {\n const { columns } = this.props;\n header = (\n <nav className='drawer__header'>\n <Link to='/getting-started' className='drawer__tab' title={intl.formatMessage(messages.start)} aria-label={intl.formatMessage(messages.start)}><i role='img' className='fa fa-fw fa-asterisk' /></Link>\n {!columns.some(column => column.get('id') === 'HOME') && (\n <Link to='/timelines/home' className='drawer__tab' title={intl.formatMessage(messages.home_timeline)} aria-label={intl.formatMessage(messages.home_timeline)}><i role='img' className='fa fa-fw fa-home' /></Link>\n )}\n {!columns.some(column => column.get('id') === 'NOTIFICATIONS') && (\n <Link to='/notifications' className='drawer__tab' title={intl.formatMessage(messages.notifications)} aria-label={intl.formatMessage(messages.notifications)}><i role='img' className='fa fa-fw fa-bell' /></Link>\n )}\n {!columns.some(column => column.get('id') === 'COMMUNITY') && (\n <Link to='/timelines/public/local' className='drawer__tab' title={intl.formatMessage(messages.community)} aria-label={intl.formatMessage(messages.community)}><i role='img' className='fa fa-fw fa-users' /></Link>\n )}\n {!columns.some(column => column.get('id') === 'PUBLIC') && (\n <Link to='/timelines/public' className='drawer__tab' title={intl.formatMessage(messages.public)} aria-label={intl.formatMessage(messages.public)}><i role='img' className='fa fa-fw fa-globe' /></Link>\n )}\n <a href='/user-settings' className='drawer__tab' title={intl.formatMessage(messages.preferences)} aria-label={intl.formatMessage(messages.preferences)}><i role='img' className='fa fa-fw fa-cog' /></a>\n <a href='/auth/sign_out' className='drawer__tab' data-method='delete' title={intl.formatMessage(messages.logout)} aria-label={intl.formatMessage(messages.logout)}><i role='img' className='fa fa-fw fa-sign-out' /></a>\n </nav>\n );\n }\n\n return (\n <div className='drawer'>\n {header}\n\n <SearchContainer />\n\n <div className='drawer__pager'>\n <div className='drawer__inner' onFocus={this.onFocus}>\n <NavigationContainer onClose={this.onBlur} />\n <ComposeFormContainer />\n {multiColumn && (\n <div className='drawer__inner__mastodon'>\n </div>\n )}\n </div>\n\n <Motion defaultStyle={{ x: -100 }} style={{ x: spring(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }}>\n {({ x }) => (\n <div className='drawer__inner darker' style={{ transform: `translateX(${x}%)`, visibility: x === -100 ? 'hidden' : 'visible' }}>\n <SearchResultsContainer />\n </div>\n )}\n </Motion>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Avatar from '../../../components/avatar';\nimport IconButton from '../../../components/icon_button';\nimport Permalink from '../../../components/permalink';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class NavigationBar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onClose: PropTypes.func,\n };\n\n render () {\n return (\n <div className='navigation-bar'>\n <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>\n <span style={{ display: 'none' }}>{this.props.account.get('acct')}</span>\n <Avatar account={this.props.account} size={40} />\n </Permalink>\n\n <div className='navigation-bar__profile'>\n <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>\n <strong className='navigation-bar__profile-account'>@{this.props.account.get('acct')}</strong>\n </Permalink>\n\n <a href='/settings/profile' className='navigation-bar__profile-edit'><FormattedMessage id='navigation_bar.edit_profile' defaultMessage='Edit profile' /></a>\n </div>\n\n <IconButton title='' icon='close' onClick={this.props.onClose} />\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/navigation_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { searchEnabled } from '../../../initial_state';\n\nconst messages = defineMessages({\n placeholder: { id: 'search.placeholder', defaultMessage: 'Search' },\n});\n\nclass SearchPopout extends React.PureComponent {\n\n static propTypes = {\n style: PropTypes.object,\n };\n\n render () {\n const { style } = this.props;\n const extraInformation = searchEnabled ? <FormattedMessage id='search_popout.tips.full_text' defaultMessage='Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.' /> : <FormattedMessage id='search_popout.tips.text' defaultMessage='Simple text returns matching display names, usernames and hashtags' />;\n return (\n <div style={{ ...style, position: 'absolute', width: 315 }}>\n <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n {({ opacity, scaleX, scaleY }) => (\n <div className='search-popout' style={{ opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }}>\n <h4><FormattedMessage id='search_popout.search_format' defaultMessage='Advanced search format' /></h4>\n\n <ul>\n <li><em>#example</em> <FormattedMessage id='search_popout.tips.hashtag' defaultMessage='hashtag' /></li>\n <li><em>@username@domain</em> <FormattedMessage id='search_popout.tips.user' defaultMessage='user' /></li>\n <li><em>URL</em> <FormattedMessage id='search_popout.tips.user' defaultMessage='user' /></li>\n <li><em>URL</em> <FormattedMessage id='search_popout.tips.status' defaultMessage='status' /></li>\n </ul>\n\n {extraInformation}\n </div>\n )}\n </Motion>\n </div>\n );\n }\n\n}\n\n@injectIntl\nexport default class Search extends React.PureComponent {\n\n static propTypes = {\n value: PropTypes.string.isRequired,\n submitted: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n onSubmit: PropTypes.func.isRequired,\n onClear: PropTypes.func.isRequired,\n onShow: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n state = {\n expanded: false,\n };\n\n handleChange = (e) => {\n this.props.onChange(e.target.value);\n }\n\n handleClear = (e) => {\n e.preventDefault();\n\n if (this.props.value.length > 0 || this.props.submitted) {\n this.props.onClear();\n }\n }\n\n handleKeyDown = (e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n this.props.onSubmit();\n } else if (e.key === 'Escape') {\n document.querySelector('.ui').parentElement.focus();\n }\n }\n\n noop () {\n\n }\n\n handleFocus = () => {\n this.setState({ expanded: true });\n this.props.onShow();\n }\n\n handleBlur = () => {\n this.setState({ expanded: false });\n }\n\n render () {\n const { intl, value, submitted } = this.props;\n const { expanded } = this.state;\n const hasValue = value.length > 0 || submitted;\n\n return (\n <div className='search'>\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.placeholder)}</span>\n <input\n className='search__input'\n type='text'\n placeholder={intl.formatMessage(messages.placeholder)}\n value={value}\n onChange={this.handleChange}\n onKeyUp={this.handleKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </label>\n\n <div role='button' tabIndex='0' className='search__icon' onClick={this.handleClear}>\n <i className={`fa fa-search ${hasValue ? '' : 'active'}`} />\n <i aria-label={intl.formatMessage(messages.placeholder)} className={`fa fa-times-circle ${hasValue ? 'active' : ''}`} />\n </div>\n\n <Overlay show={expanded && !hasValue} placement='bottom' target={this}>\n <SearchPopout />\n </Overlay>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/search.js","import { connect } from 'react-redux';\nimport NavigationBar from '../components/navigation_bar';\nimport { me } from '../../../initial_state';\n\nconst mapStateToProps = state => {\n return {\n account: state.getIn(['accounts', me]),\n };\n};\n\nexport default connect(mapStateToProps)(NavigationBar);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/navigation_container.js","import { connect } from 'react-redux';\nimport {\n changeSearch,\n clearSearch,\n submitSearch,\n showSearch,\n} from '../../../actions/search';\nimport Search from '../components/search';\n\nconst mapStateToProps = state => ({\n value: state.getIn(['search', 'value']),\n submitted: state.getIn(['search', 'submitted']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (value) {\n dispatch(changeSearch(value));\n },\n\n onClear () {\n dispatch(clearSearch());\n },\n\n onSubmit () {\n dispatch(submitSearch());\n },\n\n onShow () {\n dispatch(showSearch());\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Search);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/search_container.js","import { connect } from 'react-redux';\nimport SearchResults from '../components/search_results';\n\nconst mapStateToProps = state => ({\n results: state.getIn(['search', 'results']),\n});\n\nexport default connect(mapStateToProps)(SearchResults);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/search_results_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport AccountContainer from '../../../containers/account_container';\nimport StatusContainer from '../../../containers/status_container';\nimport { Link } from 'react-router-dom';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class SearchResults extends ImmutablePureComponent {\n\n static propTypes = {\n results: ImmutablePropTypes.map.isRequired,\n };\n\n render () {\n const { results } = this.props;\n\n let accounts, statuses, hashtags;\n let count = 0;\n\n if (results.get('accounts') && results.get('accounts').size > 0) {\n count += results.get('accounts').size;\n accounts = (\n <div className='search-results__section'>\n <h5><FormattedMessage id='search_results.accounts' defaultMessage='People' /></h5>\n\n {results.get('accounts').map(accountId => <AccountContainer key={accountId} id={accountId} />)}\n </div>\n );\n }\n\n if (results.get('statuses') && results.get('statuses').size > 0) {\n count += results.get('statuses').size;\n statuses = (\n <div className='search-results__section'>\n <h5><FormattedMessage id='search_results.statuses' defaultMessage='Toots' /></h5>\n\n {results.get('statuses').map(statusId => <StatusContainer key={statusId} id={statusId} />)}\n </div>\n );\n }\n\n if (results.get('hashtags') && results.get('hashtags').size > 0) {\n count += results.get('hashtags').size;\n hashtags = (\n <div className='search-results__section'>\n <h5><FormattedMessage id='search_results.hashtags' defaultMessage='Hashtags' /></h5>\n\n {results.get('hashtags').map(hashtag => (\n <Link key={hashtag} className='search-results__hashtag' to={`/timelines/tag/${hashtag}`}>\n #{hashtag}\n </Link>\n ))}\n </div>\n );\n }\n\n return (\n <div className='search-results'>\n <div className='search-results__header'>\n <FormattedMessage id='search_results.total' defaultMessage='{count, number} {count, plural, one {result} other {results}}' values={{ count }} />\n </div>\n\n {accounts}\n {statuses}\n {hashtags}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/search_results.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/favourited_statuses.js b/priv/static/packs/features/favourited_statuses.js index fa9e486a0..2074f5db6 100644 --- a/priv/static/packs/features/favourited_statuses.js +++ b/priv/static/packs/features/favourited_statuses.js @@ -1,2 +1,2 @@ -webpackJsonp([12],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(0),f=n.n(p),v=n(6),g=(i=o=function(e){function t(){return c()(this,t),d()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(v.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},150:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),d=n.n(l),u=n(0),h=n.n(u),p=n(10),f=n.n(p),v=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleClick=function(){o.props.onClick()},i=n,c()(o,i)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,n=e.type,o=e.active,r=e.columnHeaderId,s="";return t&&(s=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:f()("column-header",{active:o}),id:r||null},void 0,i()("button",{onClick:this.handleClick},void 0,s,n))},t}(h.a.PureComponent)},283:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";n.d(t,"a",function(){return m});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),d=n.n(l),u=n(34),h=n.n(u),p=n(0),f=n.n(p),v=n(150),g=n(90),b=n(35),m=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleHeaderClick=function(){var e=o.node.querySelector(".scrollable");e&&(o._interruptScrollAnimation=Object(g.b)(e))},o.handleScroll=h()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(e){o.node=e},i=n,c()(o,i)}return d()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(g.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,n=e.icon,o=e.children,r=e.active,s=e.hideHeadingOnMobile,a=t&&(!s||s&&!Object(b.b)(window.innerWidth)),c=a&&t.replace(/ /g,"-"),l=a&&i()(v.a,{icon:n,active:r,type:t,onClick:this.handleHeaderClick,columnHeaderId:c});return f.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":c,className:"column",onScroll:this.handleScroll},l,o)},t}(f.a.PureComponent)},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(153),c=n(66),l=n(18),d=n(67),u=n(22),h=n(91),p=n(283),f=n(151),v=n(26),g=n(6),b=n(11),m=Object(g.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(d.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(d.n)(t)):n.shiftKey||!b.b?this.onModalReblog(t):e(Object(v.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(d.m)(t):Object(d.i)(t))},onDelete:function(t){e(b.e?Object(v.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(v.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(v.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(v.d)("CONFIRM",{message:i()(g.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(u.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.k)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(g.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(93),f=n.n(p),v=n(0),g=n.n(v),b=n(152),m=n(5),y=n.n(m),M=n(288),O=n(149),C=n(293),I=n(8),k=(n.n(I),n(10)),j=n.n(k),S=n(154),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new C.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(S.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,d()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(S.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(g.a.Children.count(e.children)>0&&g.a.Children.count(e.children)<g.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(S.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof I.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,d=t.emptyMessage,u=t.onLoadMore,h=this.state.fullscreen,p=g.a.Children.count(n),f=c&&p>0&&u?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,v=null;return v=a||p>0||!d?g.a.createElement("div",{className:j()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,g.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):g.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},d),i?s()(b.a,{scrollKey:o,shouldUpdateScroll:r},void 0,v):v},t}(v.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),d=n.n(l),u=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),v=["id","index","listLength","cachedHeight"],g=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(u.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(u.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?v:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?d.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&d.a.cloneElement(t,{hidden:!1})):d.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&d.a.cloneElement(t,{hidden:!0}))},t}(d.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),d=n.n(l),u=n(2),h=n.n(u),p=n(1),f=n.n(p),v=n(3),g=n.n(v),b=n(4),m=n.n(b),y=n(34),M=n.n(y),O=n(0),C=n.n(O),I=n(13),k=n.n(I),j=n(5),S=n.n(j),L=n(285),R=n(12),_=n.n(R),H=n(149),T=n(287),x=n(6),A=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=g()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,g()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(H.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(_.a),o.propTypes={disabled:S.a.bool,maxId:S.a.string,onClick:S.a.func.isRequired},i),w=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=g()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,g()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=d()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(x.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(x.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(A,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return C.a.createElement(T.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(_.a),r.propTypes={scrollKey:S.a.string.isRequired,statusIds:k.a.list.isRequired,onLoadMore:S.a.func,onScrollToTop:S.a.func,onScroll:S.a.func,trackScroll:S.a.bool,shouldUpdateScroll:S.a.func,isLoading:S.a.bool,isPartial:S.a.bool,hasMore:S.a.bool,prepend:S.a.node,emptyMessage:S.a.node},r.defaultProps={trackScroll:!0},s)},822:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return w});var o,i,r,s,a=n(2),c=n.n(a),l=n(1),d=n.n(l),u=n(3),h=n.n(u),p=n(4),f=n.n(p),v=n(34),g=n.n(v),b=n(0),m=n.n(b),y=n(9),M=n(5),O=n.n(M),C=n(13),I=n.n(C),k=n(335),j=n(284),S=n(68),L=n(297),R=n(294),_=n(6),H=n(12),T=n.n(H),x=Object(_.f)({heading:{id:"column.favourites",defaultMessage:"Favourites"}}),A=function(e){return{statusIds:e.getIn(["status_lists","favourites","items"]),isLoading:e.getIn(["status_lists","favourites","isLoading"],!0),hasMore:!!e.getIn(["status_lists","favourites","next"])}},w=(o=Object(y.connect)(A))(i=Object(_.g)((s=r=function(e){function t(){var n,o,i;d()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(L.f)(t):Object(L.d)("FAVOURITES",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(L.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=g()(function(){o.props.dispatch(Object(k.g)())},300,{leading:!0}),i=n,h()(o,i)}return f()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(k.h)())},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.statusIds,o=e.columnId,i=e.multiColumn,r=e.hasMore,s=e.isLoading,a=!!o;return m.a.createElement(j.a,{ref:this.setRef},c()(S.a,{icon:"star",title:t.formatMessage(x.heading),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:a,multiColumn:i,showBackButton:!0}),c()(R.a,{trackScroll:!a,statusIds:n,scrollKey:"favourited_statuses-"+o,hasMore:r,isLoading:s,onLoadMore:this.handleLoadMore}))},t}(T.a),r.propTypes={dispatch:O.a.func.isRequired,statusIds:I.a.list.isRequired,intl:O.a.object.isRequired,columnId:O.a.string,multiColumn:O.a.bool,hasMore:O.a.bool,isLoading:O.a.bool},i=s))||i)||i}}); +webpackJsonp([10],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),v=n(6),g=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(v.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},150:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),p=n(10),f=n.n(p),v=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleClick=function(){o.props.onClick()},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,n=e.type,o=e.active,r=e.columnHeaderId,s="";return t&&(s=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:f()("column-header",{active:o}),id:r||null},void 0,i()("button",{onClick:this.handleClick},void 0,s,n))},t}(h.a.PureComponent)},282:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},283:function(e,t,n){"use strict";n.d(t,"a",function(){return m});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(34),h=n.n(d),p=n(0),f=n.n(p),v=n(150),g=n(90),b=n(35),m=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleHeaderClick=function(){var e=o.node.querySelector(".scrollable");e&&(o._interruptScrollAnimation=Object(g.b)(e))},o.handleScroll=h()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(e){o.node=e},i=n,c()(o,i)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(g.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,n=e.icon,o=e.children,r=e.active,s=e.hideHeadingOnMobile,a=t&&(!s||s&&!Object(b.b)(window.innerWidth)),c=a&&t.replace(/ /g,"-"),l=a&&i()(v.a,{icon:n,active:r,type:t,onClick:this.handleHeaderClick,columnHeaderId:c});return f.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":c,className:"column",onScroll:this.handleScroll},l,o)},t}(f.a.PureComponent)},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:r,account:e,status:t}),n(Object(i.d)("REPORT"))}}t.a=o;var i=(n(14),n(26)),r="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(152),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),p=n(282),f=n(284),v=n(26),g=n(6),b=n(11),m=Object(g.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!b.b?this.onModalReblog(t):e(Object(v.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(b.e?Object(v.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(v.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(v.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(v.d)("CONFIRM",{message:i()(g.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.a)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(g.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(93),f=n.n(p),v=n(0),g=n.n(v),b=n(151),m=n(5),y=n.n(m),M=n(288),O=n(149),C=n(293),I=n(8),j=(n.n(I),n(10)),k=n.n(j),S=n(153),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new C.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(S.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(S.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(g.a.Children.count(e.children)>0&&g.a.Children.count(e.children)<g.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(S.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof I.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,p=g.a.Children.count(n),f=c&&p>0&&d?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,v=null;return v=a||p>0||!u?g.a.createElement("div",{className:k()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,g.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):g.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(b.a,{scrollKey:o,shouldUpdateScroll:r},void 0,v):v},t}(v.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),u=n.n(l),d=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),v=["id","index","listLength","cachedHeight"],g=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?v:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return E});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),u=n.n(l),d=n(2),h=n.n(d),p=n(1),f=n.n(p),v=n(3),g=n.n(v),b=n(4),m=n.n(b),y=n(34),M=n.n(y),O=n(0),C=n.n(O),I=n(13),j=n.n(I),k=n(5),S=n.n(k),L=n(285),R=n(12),_=n.n(R),H=n(149),T=n(287),x=n(6),A=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=g()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,g()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(H.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(_.a),o.propTypes={disabled:S.a.bool,maxId:S.a.string,onClick:S.a.func.isRequired},i),E=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=g()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,g()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(x.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(x.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(A,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return C.a.createElement(T.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(_.a),r.propTypes={scrollKey:S.a.string.isRequired,statusIds:j.a.list.isRequired,onLoadMore:S.a.func,onScrollToTop:S.a.func,onScroll:S.a.func,trackScroll:S.a.bool,shouldUpdateScroll:S.a.func,isLoading:S.a.bool,isPartial:S.a.bool,hasMore:S.a.bool,prepend:S.a.node,emptyMessage:S.a.node},r.defaultProps={trackScroll:!0},s)},821:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return E});var o,i,r,s,a=n(2),c=n.n(a),l=n(1),u=n.n(l),d=n(3),h=n.n(d),p=n(4),f=n.n(p),v=n(34),g=n.n(v),b=n(0),m=n.n(b),y=n(9),M=n(5),O=n.n(M),C=n(13),I=n.n(C),j=n(335),k=n(283),S=n(68),L=n(297),R=n(294),_=n(6),H=n(12),T=n.n(H),x=Object(_.f)({heading:{id:"column.favourites",defaultMessage:"Favourites"}}),A=function(e){return{statusIds:e.getIn(["status_lists","favourites","items"]),isLoading:e.getIn(["status_lists","favourites","isLoading"],!0),hasMore:!!e.getIn(["status_lists","favourites","next"])}},E=(o=Object(y.connect)(A))(i=Object(_.g)((s=r=function(e){function t(){var n,o,i;u()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(L.f)(t):Object(L.d)("FAVOURITES",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(L.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=g()(function(){o.props.dispatch(Object(j.g)())},300,{leading:!0}),i=n,h()(o,i)}return f()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(j.h)())},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.statusIds,o=e.columnId,i=e.multiColumn,r=e.hasMore,s=e.isLoading,a=!!o;return m.a.createElement(k.a,{ref:this.setRef},c()(S.a,{icon:"star",title:t.formatMessage(x.heading),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:a,multiColumn:i,showBackButton:!0}),c()(R.a,{trackScroll:!a,statusIds:n,scrollKey:"favourited_statuses-"+o,hasMore:r,isLoading:s,onLoadMore:this.handleLoadMore}))},t}(T.a),r.propTypes={dispatch:O.a.func.isRequired,statusIds:I.a.list.isRequired,intl:O.a.object.isRequired,columnId:O.a.string,multiColumn:O.a.bool,hasMore:O.a.bool,isLoading:O.a.bool},i=s))||i)||i}}); //# sourceMappingURL=favourited_statuses.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/favourited_statuses.js.map b/priv/static/packs/features/favourited_statuses.js.map index 53333aea4..afeaf1fb4 100644 --- a/priv/static/packs/features/favourited_statuses.js.map +++ b/priv/static/packs/features/favourited_statuses.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/favourited_statuses.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/favourited_statuses/index.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","lastMouseMove","intersectionObserverWrapper","_this$node","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","onMouseMove","onMouseLeave","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","822","defineProperty","value","Favourites","_dec","__WEBPACK_IMPORTED_MODULE_6_react_redux__","__WEBPACK_IMPORTED_MODULE_9__actions_favourites__","__WEBPACK_IMPORTED_MODULE_10__ui_components_column__","__WEBPACK_IMPORTED_MODULE_11__components_column_header__","__WEBPACK_IMPORTED_MODULE_12__actions_columns__","__WEBPACK_IMPORTED_MODULE_13__components_status_list__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default","mapStateToProps","handlePin","columnId","handleMove","dir","_this$props2","column","componentWillMount","multiColumn","pinned","title","onPin","onMove","showBackButton"],"mappings":"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","file":"features/favourited_statuses.js","sourcesContent":["webpackJsonp([12],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 822:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Favourites; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_favourites__ = __webpack_require__(335);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__);\n\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'column.favourites',\n 'defaultMessage': 'Favourites'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n statusIds: state.getIn(['status_lists', 'favourites', 'items']),\n isLoading: state.getIn(['status_lists', 'favourites', 'isLoading'], true),\n hasMore: !!state.getIn(['status_lists', 'favourites', 'next'])\n };\n};\n\nvar Favourites = (_dec = Object(__WEBPACK_IMPORTED_MODULE_6_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Favourites, _ImmutablePureCompone);\n\n function Favourites() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Favourites);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_columns__[\"d\" /* addColumn */])('FAVOURITES', {}));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_favourites__[\"g\" /* expandFavouritedStatuses */])());\n }, 300, { leading: true }), _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Favourites.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_favourites__[\"h\" /* fetchFavouritedStatuses */])());\n };\n\n Favourites.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n statusIds = _props.statusIds,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn,\n hasMore = _props.hasMore,\n isLoading = _props.isLoading;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_column_header__[\"a\" /* default */], {\n icon: 'star',\n title: intl.formatMessage(messages.heading),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn,\n showBackButton: true\n }),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_status_list__[\"a\" /* default */], {\n trackScroll: !pinned,\n statusIds: statusIds,\n scrollKey: 'favourited_statuses-' + columnId,\n hasMore: hasMore,\n isLoading: isLoading,\n onLoadMore: this.handleLoadMore\n })\n );\n };\n\n return Favourites;\n}(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default.a), _class2.propTypes = {\n dispatch: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired,\n columnId: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string,\n multiColumn: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n isLoading: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool\n}, _temp2)) || _class) || _class);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/favourited_statuses.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { fetchFavouritedStatuses, expandFavouritedStatuses } from '../../actions/favourites';\nimport Column from '../ui/components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport StatusList from '../../components/status_list';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { debounce } from 'lodash';\n\nconst messages = defineMessages({\n heading: { id: 'column.favourites', defaultMessage: 'Favourites' },\n});\n\nconst mapStateToProps = state => ({\n statusIds: state.getIn(['status_lists', 'favourites', 'items']),\n isLoading: state.getIn(['status_lists', 'favourites', 'isLoading'], true),\n hasMore: !!state.getIn(['status_lists', 'favourites', 'next']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Favourites extends ImmutablePureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n intl: PropTypes.object.isRequired,\n columnId: PropTypes.string,\n multiColumn: PropTypes.bool,\n hasMore: PropTypes.bool,\n isLoading: PropTypes.bool,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchFavouritedStatuses());\n }\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('FAVOURITES', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = debounce(() => {\n this.props.dispatch(expandFavouritedStatuses());\n }, 300, { leading: true })\n\n render () {\n const { intl, statusIds, columnId, multiColumn, hasMore, isLoading } = this.props;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='star'\n title={intl.formatMessage(messages.heading)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n showBackButton\n />\n\n <StatusList\n trackScroll={!pinned}\n statusIds={statusIds}\n scrollKey={`favourited_statuses-${columnId}`}\n hasMore={hasMore}\n isLoading={isLoading}\n onLoadMore={this.handleLoadMore}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/favourited_statuses/index.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/favourited_statuses.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/favourited_statuses/index.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","lastMouseMove","intersectionObserverWrapper","_this$node","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","onMouseMove","onMouseLeave","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","821","defineProperty","value","Favourites","_dec","__WEBPACK_IMPORTED_MODULE_6_react_redux__","__WEBPACK_IMPORTED_MODULE_9__actions_favourites__","__WEBPACK_IMPORTED_MODULE_10__ui_components_column__","__WEBPACK_IMPORTED_MODULE_11__components_column_header__","__WEBPACK_IMPORTED_MODULE_12__actions_columns__","__WEBPACK_IMPORTED_MODULE_13__components_status_list__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default","mapStateToProps","handlePin","columnId","handleMove","dir","_this$props2","column","componentWillMount","multiColumn","pinned","title","onPin","onMove","showBackButton"],"mappings":"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","file":"features/favourited_statuses.js","sourcesContent":["webpackJsonp([10],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 821:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Favourites; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_favourites__ = __webpack_require__(335);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__);\n\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'column.favourites',\n 'defaultMessage': 'Favourites'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n statusIds: state.getIn(['status_lists', 'favourites', 'items']),\n isLoading: state.getIn(['status_lists', 'favourites', 'isLoading'], true),\n hasMore: !!state.getIn(['status_lists', 'favourites', 'next'])\n };\n};\n\nvar Favourites = (_dec = Object(__WEBPACK_IMPORTED_MODULE_6_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Favourites, _ImmutablePureCompone);\n\n function Favourites() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Favourites);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_columns__[\"d\" /* addColumn */])('FAVOURITES', {}));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_favourites__[\"g\" /* expandFavouritedStatuses */])());\n }, 300, { leading: true }), _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Favourites.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_favourites__[\"h\" /* fetchFavouritedStatuses */])());\n };\n\n Favourites.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n statusIds = _props.statusIds,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn,\n hasMore = _props.hasMore,\n isLoading = _props.isLoading;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_column_header__[\"a\" /* default */], {\n icon: 'star',\n title: intl.formatMessage(messages.heading),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn,\n showBackButton: true\n }),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_status_list__[\"a\" /* default */], {\n trackScroll: !pinned,\n statusIds: statusIds,\n scrollKey: 'favourited_statuses-' + columnId,\n hasMore: hasMore,\n isLoading: isLoading,\n onLoadMore: this.handleLoadMore\n })\n );\n };\n\n return Favourites;\n}(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default.a), _class2.propTypes = {\n dispatch: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object.isRequired,\n columnId: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string,\n multiColumn: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,\n isLoading: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool\n}, _temp2)) || _class) || _class);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/favourited_statuses.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { fetchFavouritedStatuses, expandFavouritedStatuses } from '../../actions/favourites';\nimport Column from '../ui/components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport StatusList from '../../components/status_list';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { debounce } from 'lodash';\n\nconst messages = defineMessages({\n heading: { id: 'column.favourites', defaultMessage: 'Favourites' },\n});\n\nconst mapStateToProps = state => ({\n statusIds: state.getIn(['status_lists', 'favourites', 'items']),\n isLoading: state.getIn(['status_lists', 'favourites', 'isLoading'], true),\n hasMore: !!state.getIn(['status_lists', 'favourites', 'next']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Favourites extends ImmutablePureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n intl: PropTypes.object.isRequired,\n columnId: PropTypes.string,\n multiColumn: PropTypes.bool,\n hasMore: PropTypes.bool,\n isLoading: PropTypes.bool,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchFavouritedStatuses());\n }\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('FAVOURITES', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = debounce(() => {\n this.props.dispatch(expandFavouritedStatuses());\n }, 300, { leading: true })\n\n render () {\n const { intl, statusIds, columnId, multiColumn, hasMore, isLoading } = this.props;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='star'\n title={intl.formatMessage(messages.heading)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n showBackButton\n />\n\n <StatusList\n trackScroll={!pinned}\n statusIds={statusIds}\n scrollKey={`favourited_statuses-${columnId}`}\n hasMore={hasMore}\n isLoading={isLoading}\n onLoadMore={this.handleLoadMore}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/favourited_statuses/index.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/favourites.js b/priv/static/packs/features/favourites.js index 39f434db6..425e0bc75 100644 --- a/priv/static/packs/features/favourites.js +++ b/priv/static/packs/features/favourites.js @@ -1,2 +1,2 @@ -webpackJsonp([21],{150:function(t,n,e){"use strict";e.d(n,"a",function(){return h});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),u=e.n(r),s=e(4),l=e.n(s),d=e(0),f=e.n(d),p=e(10),m=e.n(p),h=function(t){function n(){var e,o,i;c()(this,n);for(var a=arguments.length,r=Array(a),s=0;s<a;s++)r[s]=arguments[s];return e=o=u()(this,t.call.apply(t,[this].concat(r))),o.handleClick=function(){o.props.onClick()},i=e,u()(o,i)}return l()(n,t),n.prototype.render=function(){var t=this.props,n=t.icon,e=t.type,o=t.active,a=t.columnHeaderId,c="";return n&&(c=i()("i",{className:"fa fa-fw fa-"+n+" column-header__icon"})),i()("h1",{className:m()("column-header",{active:o}),id:a||null},void 0,i()("button",{onClick:this.handleClick},void 0,c,e))},n}(f.a.PureComponent)},283:function(t,n,e){"use strict";function o(t){return function(n){n({type:a,account:t}),n(Object(i.d)("MUTE"))}}n.a=o;var i=(e(14),e(22),e(15),e(26)),a="MUTES_INIT_MODAL"},284:function(t,n,e){"use strict";e.d(n,"a",function(){return b});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),u=e.n(r),s=e(4),l=e.n(s),d=e(34),f=e.n(d),p=e(0),m=e.n(p),h=e(150),g=e(90),v=e(35),b=function(t){function n(){var e,o,i;c()(this,n);for(var a=arguments.length,r=Array(a),s=0;s<a;s++)r[s]=arguments[s];return e=o=u()(this,t.call.apply(t,[this].concat(r))),o.handleHeaderClick=function(){var t=o.node.querySelector(".scrollable");t&&(o._interruptScrollAnimation=Object(g.b)(t))},o.handleScroll=f()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(t){o.node=t},i=e,u()(o,i)}return l()(n,t),n.prototype.scrollTop=function(){var t=this.node.querySelector(".scrollable");t&&(this._interruptScrollAnimation=Object(g.b)(t))},n.prototype.render=function(){var t=this.props,n=t.heading,e=t.icon,o=t.children,a=t.active,c=t.hideHeadingOnMobile,r=n&&(!c||c&&!Object(v.b)(window.innerWidth)),u=r&&n.replace(/ /g,"-"),s=r&&i()(h.a,{icon:e,active:a,type:n,onClick:this.handleHeaderClick,columnHeaderId:u});return m.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":u,className:"column",onScroll:this.handleScroll},s,o)},n}(m.a.PureComponent)},286:function(t,n,e){"use strict";e.d(n,"a",function(){return b});var o,i,a=e(2),c=e.n(a),r=e(1),u=e.n(r),s=e(3),l=e.n(s),d=e(4),f=e.n(d),p=e(0),m=e.n(p),h=e(6),g=e(5),v=e.n(g),b=(i=o=function(t){function n(){var e,o,i;u()(this,n);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=l()(this,t.call.apply(t,[this].concat(c))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},i=e,l()(o,i)}return f()(n,t),n.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},n}(m.a.PureComponent),o.contextTypes={router:v.a.object},i)},819:function(t,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),e.d(n,"default",function(){return A});var o,i,a,c,r=e(2),u=e.n(r),s=e(1),l=e.n(s),d=e(3),f=e.n(d),p=e(4),m=e.n(p),h=e(0),g=(e.n(h),e(9)),v=e(5),b=e.n(v),y=e(13),M=e.n(y),w=e(296),k=e(67),_=e(152),j=e(843),O=e(284),I=e(286),C=e(12),N=e.n(C),q=function(t,n){return{accountIds:t.getIn(["user_lists","favourited_by",n.params.statusId])}},A=(o=Object(g.connect)(q))((c=a=function(t){function n(){return l()(this,n),f()(this,t.apply(this,arguments))}return m()(n,t),n.prototype.componentWillMount=function(){this.props.dispatch(Object(k.j)(this.props.params.statusId))},n.prototype.componentWillReceiveProps=function(t){t.params.statusId!==this.props.params.statusId&&t.params.statusId&&this.props.dispatch(Object(k.j)(t.params.statusId))},n.prototype.render=function(){var t=this.props.accountIds;return t?u()(O.a,{},void 0,u()(I.a,{}),u()(_.a,{scrollKey:"favourites"},void 0,u()("div",{className:"scrollable"},void 0,t.map(function(t){return u()(j.a,{id:t,withNote:!1},t)})))):u()(O.a,{},void 0,u()(w.a,{}))},n}(N.a),a.propTypes={params:b.a.object.isRequired,dispatch:b.a.func.isRequired,accountIds:M.a.list},i=c))||i},843:function(t,n,e){"use strict";var o=e(2),i=e.n(o),a=e(0),c=(e.n(a),e(9)),r=e(6),u=e(66),s=e(844),l=e(22),d=e(26),f=e(283),p=e(11),m=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var t=Object(u.c)();return function(n,e){return{account:t(n,e.id)}}},g=function(t,n){var e=n.intl;return{onFollow:function(n){t(n.getIn(["relationship","following"])||n.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:i()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",n.get("acct"))}}),confirm:e.formatMessage(m.unfollowConfirm),onConfirm:function(){return t(Object(l.D)(n.get("id")))}}):Object(l.D)(n.get("id")):Object(l.z)(n.get("id")))},onBlock:function(n){t(n.getIn(["relationship","blocking"])?Object(l.C)(n.get("id")):Object(l.q)(n.get("id")))},onMute:function(n){t(n.getIn(["relationship","muting"])?Object(l.E)(n.get("id")):Object(f.a)(n))},onMuteNotifications:function(n,e){t(Object(l.A)(n.get("id"),e))}}};n.a=Object(r.g)(Object(c.connect)(h,g)(s.a))},844:function(t,n,e){"use strict";e.d(n,"a",function(){return N});var o,i,a,c=e(2),r=e.n(c),u=e(1),s=e.n(u),l=e(3),d=e.n(l),f=e(4),p=e.n(f),m=e(0),h=(e.n(m),e(13)),g=e.n(h),v=e(5),b=e.n(v),y=e(56),M=e(55),w=e(295),k=e(23),_=e(6),j=e(12),O=e.n(j),I=e(11),C=Object(_.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),N=Object(_.g)((a=i=function(t){function n(){var e,o,i;s()(this,n);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=d()(this,t.call.apply(t,[this].concat(c))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},i=e,d()(o,i)}return p()(n,t),n.prototype.render=function(){var t=this.props,n=t.account,e=t.intl,o=t.hidden;if(!n)return r()("div",{});if(o)return r()("div",{},void 0,n.get("display_name"),n.get("username"));var i=void 0;if(n.get("id")!==I.g&&null!==n.get("relationship",null)){var a=n.getIn(["relationship","following"]),c=n.getIn(["relationship","requested"]),u=n.getIn(["relationship","blocking"]),s=n.getIn(["relationship","muting"]);if(c)i=r()(k.a,{disabled:!0,icon:"hourglass",title:e.formatMessage(C.requested)});else if(u)i=r()(k.a,{active:!0,icon:"unlock-alt",title:e.formatMessage(C.unblock,{name:n.get("username")}),onClick:this.handleBlock});else if(s){var l=void 0;l=n.getIn(["relationship","muting_notifications"])?r()(k.a,{active:!0,icon:"bell",title:e.formatMessage(C.unmute_notifications,{name:n.get("username")}),onClick:this.handleUnmuteNotifications}):r()(k.a,{active:!0,icon:"bell-slash",title:e.formatMessage(C.mute_notifications,{name:n.get("username")}),onClick:this.handleMuteNotifications}),i=r()(m.Fragment,{},void 0,r()(k.a,{active:!0,icon:"volume-up",title:e.formatMessage(C.unmute,{name:n.get("username")}),onClick:this.handleMute}),l)}else n.get("moved")&&!a||(i=r()(k.a,{icon:a?"user-times":"user-plus",title:e.formatMessage(a?C.unfollow:C.follow),onClick:this.handleFollow,active:a}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(w.a,{className:"account__display-name",href:n.get("url"),to:"/accounts/"+n.get("id")},n.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(y.a,{account:n,size:36})),r()(M.a,{account:n})),r()("div",{className:"account__relationship"},void 0,i)))},n}(O.a),i.propTypes={account:g.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},o=a))||o}}); +webpackJsonp([20],{150:function(t,n,e){"use strict";e.d(n,"a",function(){return h});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),u=e.n(r),s=e(4),l=e.n(s),d=e(0),f=e.n(d),p=e(10),m=e.n(p),h=function(t){function n(){var e,o,i;c()(this,n);for(var a=arguments.length,r=Array(a),s=0;s<a;s++)r[s]=arguments[s];return e=o=u()(this,t.call.apply(t,[this].concat(r))),o.handleClick=function(){o.props.onClick()},i=e,u()(o,i)}return l()(n,t),n.prototype.render=function(){var t=this.props,n=t.icon,e=t.type,o=t.active,a=t.columnHeaderId,c="";return n&&(c=i()("i",{className:"fa fa-fw fa-"+n+" column-header__icon"})),i()("h1",{className:m()("column-header",{active:o}),id:a||null},void 0,i()("button",{onClick:this.handleClick},void 0,c,e))},n}(f.a.PureComponent)},282:function(t,n,e){"use strict";function o(t){return function(n){n({type:a,account:t}),n(Object(i.d)("MUTE"))}}n.a=o;var i=(e(14),e(22),e(15),e(26)),a="MUTES_INIT_MODAL"},283:function(t,n,e){"use strict";e.d(n,"a",function(){return b});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),u=e.n(r),s=e(4),l=e.n(s),d=e(34),f=e.n(d),p=e(0),m=e.n(p),h=e(150),g=e(90),v=e(35),b=function(t){function n(){var e,o,i;c()(this,n);for(var a=arguments.length,r=Array(a),s=0;s<a;s++)r[s]=arguments[s];return e=o=u()(this,t.call.apply(t,[this].concat(r))),o.handleHeaderClick=function(){var t=o.node.querySelector(".scrollable");t&&(o._interruptScrollAnimation=Object(g.b)(t))},o.handleScroll=f()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(t){o.node=t},i=e,u()(o,i)}return l()(n,t),n.prototype.scrollTop=function(){var t=this.node.querySelector(".scrollable");t&&(this._interruptScrollAnimation=Object(g.b)(t))},n.prototype.render=function(){var t=this.props,n=t.heading,e=t.icon,o=t.children,a=t.active,c=t.hideHeadingOnMobile,r=n&&(!c||c&&!Object(v.b)(window.innerWidth)),u=r&&n.replace(/ /g,"-"),s=r&&i()(h.a,{icon:e,active:a,type:n,onClick:this.handleHeaderClick,columnHeaderId:u});return m.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":u,className:"column",onScroll:this.handleScroll},s,o)},n}(m.a.PureComponent)},286:function(t,n,e){"use strict";e.d(n,"a",function(){return b});var o,i,a=e(2),c=e.n(a),r=e(1),u=e.n(r),s=e(3),l=e.n(s),d=e(4),f=e.n(d),p=e(0),m=e.n(p),h=e(6),g=e(5),v=e.n(g),b=(i=o=function(t){function n(){var e,o,i;u()(this,n);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=l()(this,t.call.apply(t,[this].concat(c))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},i=e,l()(o,i)}return f()(n,t),n.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},n}(m.a.PureComponent),o.contextTypes={router:v.a.object},i)},818:function(t,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),e.d(n,"default",function(){return A});var o,i,a,c,r=e(2),u=e.n(r),s=e(1),l=e.n(s),d=e(3),f=e.n(d),p=e(4),m=e.n(p),h=e(0),g=(e.n(h),e(9)),v=e(5),b=e.n(v),y=e(13),M=e.n(y),w=e(296),k=e(67),_=e(151),j=e(841),O=e(283),I=e(286),C=e(12),N=e.n(C),q=function(t,n){return{accountIds:t.getIn(["user_lists","favourited_by",n.params.statusId])}},A=(o=Object(g.connect)(q))((c=a=function(t){function n(){return l()(this,n),f()(this,t.apply(this,arguments))}return m()(n,t),n.prototype.componentWillMount=function(){this.props.dispatch(Object(k.j)(this.props.params.statusId))},n.prototype.componentWillReceiveProps=function(t){t.params.statusId!==this.props.params.statusId&&t.params.statusId&&this.props.dispatch(Object(k.j)(t.params.statusId))},n.prototype.render=function(){var t=this.props.accountIds;return t?u()(O.a,{},void 0,u()(I.a,{}),u()(_.a,{scrollKey:"favourites"},void 0,u()("div",{className:"scrollable"},void 0,t.map(function(t){return u()(j.a,{id:t,withNote:!1},t)})))):u()(O.a,{},void 0,u()(w.a,{}))},n}(N.a),a.propTypes={params:b.a.object.isRequired,dispatch:b.a.func.isRequired,accountIds:M.a.list},i=c))||i},841:function(t,n,e){"use strict";var o=e(2),i=e.n(o),a=e(0),c=(e.n(a),e(9)),r=e(6),u=e(66),s=e(842),l=e(22),d=e(26),f=e(282),p=e(11),m=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var t=Object(u.c)();return function(n,e){return{account:t(n,e.id)}}},g=function(t,n){var e=n.intl;return{onFollow:function(n){t(n.getIn(["relationship","following"])||n.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:i()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",n.get("acct"))}}),confirm:e.formatMessage(m.unfollowConfirm),onConfirm:function(){return t(Object(l.D)(n.get("id")))}}):Object(l.D)(n.get("id")):Object(l.z)(n.get("id")))},onBlock:function(n){t(n.getIn(["relationship","blocking"])?Object(l.C)(n.get("id")):Object(l.q)(n.get("id")))},onMute:function(n){t(n.getIn(["relationship","muting"])?Object(l.E)(n.get("id")):Object(f.a)(n))},onMuteNotifications:function(n,e){t(Object(l.A)(n.get("id"),e))}}};n.a=Object(r.g)(Object(c.connect)(h,g)(s.a))},842:function(t,n,e){"use strict";e.d(n,"a",function(){return N});var o,i,a,c=e(2),r=e.n(c),u=e(1),s=e.n(u),l=e(3),d=e.n(l),f=e(4),p=e.n(f),m=e(0),h=(e.n(m),e(13)),g=e.n(h),v=e(5),b=e.n(v),y=e(56),M=e(55),w=e(295),k=e(23),_=e(6),j=e(12),O=e.n(j),I=e(11),C=Object(_.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),N=Object(_.g)((a=i=function(t){function n(){var e,o,i;s()(this,n);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=d()(this,t.call.apply(t,[this].concat(c))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},i=e,d()(o,i)}return p()(n,t),n.prototype.render=function(){var t=this.props,n=t.account,e=t.intl,o=t.hidden;if(!n)return r()("div",{});if(o)return r()("div",{},void 0,n.get("display_name"),n.get("username"));var i=void 0;if(n.get("id")!==I.g&&null!==n.get("relationship",null)){var a=n.getIn(["relationship","following"]),c=n.getIn(["relationship","requested"]),u=n.getIn(["relationship","blocking"]),s=n.getIn(["relationship","muting"]);if(c)i=r()(k.a,{disabled:!0,icon:"hourglass",title:e.formatMessage(C.requested)});else if(u)i=r()(k.a,{active:!0,icon:"unlock-alt",title:e.formatMessage(C.unblock,{name:n.get("username")}),onClick:this.handleBlock});else if(s){var l=void 0;l=n.getIn(["relationship","muting_notifications"])?r()(k.a,{active:!0,icon:"bell",title:e.formatMessage(C.unmute_notifications,{name:n.get("username")}),onClick:this.handleUnmuteNotifications}):r()(k.a,{active:!0,icon:"bell-slash",title:e.formatMessage(C.mute_notifications,{name:n.get("username")}),onClick:this.handleMuteNotifications}),i=r()(m.Fragment,{},void 0,r()(k.a,{active:!0,icon:"volume-up",title:e.formatMessage(C.unmute,{name:n.get("username")}),onClick:this.handleMute}),l)}else n.get("moved")&&!a||(i=r()(k.a,{icon:a?"user-times":"user-plus",title:e.formatMessage(a?C.unfollow:C.follow),onClick:this.handleFollow,active:a}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(w.a,{className:"account__display-name",href:n.get("url"),to:"/accounts/"+n.get("id")},n.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(y.a,{account:n,size:36})),r()(M.a,{account:n})),r()("div",{className:"account__relationship"},void 0,i)))},n}(O.a),i.propTypes={account:g.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},o=a))||o}}); //# sourceMappingURL=favourites.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/favourites.js.map b/priv/static/packs/features/favourites.js.map index 2ae5dea70..506bc82c4 100644 --- a/priv/static/packs/features/favourites.js.map +++ b/priv/static/packs/features/favourites.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/favourites.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/favourites/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","819","defineProperty","value","Favourites","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9__actions_interactions__","__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_11__containers_account_container__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default","mapStateToProps","state","accountIds","getIn","params","statusId","_ImmutablePureCompone","componentWillMount","componentWillReceiveProps","nextProps","scrollKey","map","withNote","propTypes","isRequired","func","list","843","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","messages","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","intl","onFollow","message","values","name","get","confirm","formatMessage","onConfirm","onBlock","onMute","onMuteNotifications","notifications","844","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","disabled","title","hidingNotificationsButton","href","to","size","bool"],"mappings":"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","file":"features/favourites.js","sourcesContent":["webpackJsonp([21],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 819:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Favourites; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_account_container__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n accountIds: state.getIn(['user_lists', 'favourited_by', props.params.statusId])\n };\n};\n\nvar Favourites = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Favourites, _ImmutablePureCompone);\n\n function Favourites() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Favourites);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n Favourites.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_interactions__[\"j\" /* fetchFavourites */])(this.props.params.statusId));\n };\n\n Favourites.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_interactions__[\"j\" /* fetchFavourites */])(nextProps.params.statusId));\n }\n };\n\n Favourites.prototype.render = function render() {\n var accountIds = this.props.accountIds;\n\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'favourites'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable'\n }, void 0, accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_account_container__[\"a\" /* default */], {\n id: id,\n withNote: false\n }, id);\n }))));\n };\n\n return Favourites;\n}(__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list\n}, _temp)) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/favourites.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport { fetchFavourites } from '../../actions/interactions';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport AccountContainer from '../../containers/account_container';\nimport Column from '../ui/components/column';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, props) => ({\n accountIds: state.getIn(['user_lists', 'favourited_by', props.params.statusId]),\n});\n\n@connect(mapStateToProps)\nexport default class Favourites extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchFavourites(this.props.params.statusId));\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this.props.dispatch(fetchFavourites(nextProps.params.statusId));\n }\n }\n\n render () {\n const { accountIds } = this.props;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='favourites'>\n <div className='scrollable'>\n {accountIds.map(id => <AccountContainer key={id} id={id} withNote={false} />)}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/favourites/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/favourites.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/favourites/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","818","defineProperty","value","Favourites","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9__actions_interactions__","__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_11__containers_account_container__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default","mapStateToProps","state","accountIds","getIn","params","statusId","_ImmutablePureCompone","componentWillMount","componentWillReceiveProps","nextProps","scrollKey","map","withNote","propTypes","isRequired","func","list","841","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","messages","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","intl","onFollow","message","values","name","get","confirm","formatMessage","onConfirm","onBlock","onMute","onMuteNotifications","notifications","842","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","disabled","title","hidingNotificationsButton","href","to","size","bool"],"mappings":"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","file":"features/favourites.js","sourcesContent":["webpackJsonp([20],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 818:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Favourites; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_account_container__ = __webpack_require__(841);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n accountIds: state.getIn(['user_lists', 'favourited_by', props.params.statusId])\n };\n};\n\nvar Favourites = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Favourites, _ImmutablePureCompone);\n\n function Favourites() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Favourites);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n Favourites.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_interactions__[\"j\" /* fetchFavourites */])(this.props.params.statusId));\n };\n\n Favourites.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_interactions__[\"j\" /* fetchFavourites */])(nextProps.params.statusId));\n }\n };\n\n Favourites.prototype.render = function render() {\n var accountIds = this.props.accountIds;\n\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'favourites'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable'\n }, void 0, accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_account_container__[\"a\" /* default */], {\n id: id,\n withNote: false\n }, id);\n }))));\n };\n\n return Favourites;\n}(__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list\n}, _temp)) || _class);\n\n\n/***/ }),\n\n/***/ 841:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(842);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 842:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/favourites.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport { fetchFavourites } from '../../actions/interactions';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport AccountContainer from '../../containers/account_container';\nimport Column from '../ui/components/column';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, props) => ({\n accountIds: state.getIn(['user_lists', 'favourited_by', props.params.statusId]),\n});\n\n@connect(mapStateToProps)\nexport default class Favourites extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchFavourites(this.props.params.statusId));\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this.props.dispatch(fetchFavourites(nextProps.params.statusId));\n }\n }\n\n render () {\n const { accountIds } = this.props;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='favourites'>\n <div className='scrollable'>\n {accountIds.map(id => <AccountContainer key={id} id={id} withNote={false} />)}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/favourites/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/follow_requests.js b/priv/static/packs/features/follow_requests.js index 0701352ad..4dc1e15f1 100644 --- a/priv/static/packs/features/follow_requests.js +++ b/priv/static/packs/features/follow_requests.js @@ -1,2 +1,2 @@ -webpackJsonp([19],{150:function(n,t,e){"use strict";e.d(t,"a",function(){return v});var o=e(2),c=e.n(o),a=e(1),i=e.n(a),r=e(3),u=e.n(r),l=e(4),s=e.n(l),d=e(0),f=e.n(d),h=e(10),p=e.n(h),v=function(n){function t(){var e,o,c;i()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return e=o=u()(this,n.call.apply(n,[this].concat(r))),o.handleClick=function(){o.props.onClick()},c=e,u()(o,c)}return s()(t,n),t.prototype.render=function(){var n=this.props,t=n.icon,e=n.type,o=n.active,a=n.columnHeaderId,i="";return t&&(i=c()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),c()("h1",{className:p()("column-header",{active:o}),id:a||null},void 0,c()("button",{onClick:this.handleClick},void 0,i,e))},t}(f.a.PureComponent)},284:function(n,t,e){"use strict";e.d(t,"a",function(){return _});var o=e(2),c=e.n(o),a=e(1),i=e.n(a),r=e(3),u=e.n(r),l=e(4),s=e.n(l),d=e(34),f=e.n(d),h=e(0),p=e.n(h),v=e(150),b=e(90),m=e(35),_=function(n){function t(){var e,o,c;i()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return e=o=u()(this,n.call.apply(n,[this].concat(r))),o.handleHeaderClick=function(){var n=o.node.querySelector(".scrollable");n&&(o._interruptScrollAnimation=Object(b.b)(n))},o.handleScroll=f()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(n){o.node=n},c=e,u()(o,c)}return s()(t,n),t.prototype.scrollTop=function(){var n=this.node.querySelector(".scrollable");n&&(this._interruptScrollAnimation=Object(b.b)(n))},t.prototype.render=function(){var n=this.props,t=n.heading,e=n.icon,o=n.children,a=n.active,i=n.hideHeadingOnMobile,r=t&&(!i||i&&!Object(m.b)(window.innerWidth)),u=r&&t.replace(/ /g,"-"),l=r&&c()(v.a,{icon:e,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:u});return p.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":u,className:"column",onScroll:this.handleScroll},l,o)},t}(p.a.PureComponent)},286:function(n,t,e){"use strict";e.d(t,"a",function(){return _});var o,c,a=e(2),i=e.n(a),r=e(1),u=e.n(r),l=e(3),s=e.n(l),d=e(4),f=e.n(d),h=e(0),p=e.n(h),v=e(6),b=e(5),m=e.n(b),_=(c=o=function(n){function t(){var e,o,c;u()(this,t);for(var a=arguments.length,i=Array(a),r=0;r<a;r++)i[r]=arguments[r];return e=o=s()(this,n.call.apply(n,[this].concat(i))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},c=e,s()(o,c)}return f()(t,n),t.prototype.render=function(){return i()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,i()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),i()(v.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(p.a.PureComponent),o.contextTypes={router:m.a.object},c)},298:function(n,t,e){"use strict";e.d(t,"a",function(){return p});var o=e(2),c=e.n(o),a=e(1),i=e.n(a),r=e(3),u=e.n(r),l=e(4),s=e.n(l),d=e(0),f=(e.n(d),e(6)),h=e(286),p=function(n){function t(){return i()(this,t),u()(this,n.apply(this,arguments))}return s()(t,n),t.prototype.render=function(){return c()("div",{className:"column-back-button--slim"},void 0,c()("div",{role:"button",tabIndex:"0",onClick:this.handleClick,className:"column-back-button column-back-button--slim-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(f.b,{id:"column_back_button.label",defaultMessage:"Back"})))},t}(h.a)},820:function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),e.d(t,"default",function(){return z});var o,c,a,i,r=e(2),u=e.n(r),l=e(1),s=e.n(l),d=e(3),f=e.n(d),h=e(4),p=e.n(h),v=e(0),b=(e.n(v),e(9)),m=e(5),_=e.n(m),y=e(13),g=e.n(y),j=e(296),k=e(152),w=e(284),C=e(298),N=e(970),O=e(22),q=e(6),R=e(12),S=e.n(R),A=Object(q.f)({heading:{id:"column.follow_requests",defaultMessage:"Follow requests"}}),M=function(n){return{accountIds:n.getIn(["user_lists","follow_requests","items"])}},z=(o=Object(b.connect)(M))(c=Object(q.g)((i=a=function(n){function t(){var e,o,c;s()(this,t);for(var a=arguments.length,i=Array(a),r=0;r<a;r++)i[r]=arguments[r];return e=o=f()(this,n.call.apply(n,[this].concat(i))),o.handleScroll=function(n){var t=n.target;t.scrollTop===t.scrollHeight-t.clientHeight&&o.props.dispatch(Object(O.r)())},c=e,f()(o,c)}return p()(t,n),t.prototype.componentWillMount=function(){this.props.dispatch(Object(O.v)())},t.prototype.render=function(){var n=this.props,t=n.intl,e=n.accountIds;return e?u()(w.a,{icon:"users",heading:t.formatMessage(A.heading)},void 0,u()(C.a,{}),u()(k.a,{scrollKey:"follow_requests"},void 0,u()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,e.map(function(n){return u()(N.a,{id:n},n)})))):u()(w.a,{},void 0,u()(j.a,{}))},t}(S.a),a.propTypes={params:_.a.object.isRequired,dispatch:_.a.func.isRequired,accountIds:g.a.list,intl:_.a.object.isRequired},c=i))||c)||c},970:function(n,t,e){"use strict";var o=e(9),c=e(66),a=e(971),i=e(22),r=function(){var n=Object(c.c)();return function(t,e){return{account:n(t,e.id)}}},u=function(n,t){var e=t.id;return{onAuthorize:function(){n(Object(i.p)(e))},onReject:function(){n(Object(i.B)(e))}}};t.a=Object(o.connect)(r,u)(a.a)},971:function(n,t,e){"use strict";e.d(t,"a",function(){return q});var o,c,a,i=e(2),r=e.n(i),u=e(1),l=e.n(u),s=e(3),d=e.n(s),f=e(4),h=e.n(f),p=e(0),v=(e.n(p),e(5)),b=e.n(v),m=e(13),_=e.n(m),y=e(295),g=e(56),j=e(55),k=e(23),w=e(6),C=e(12),N=e.n(C),O=Object(w.f)({authorize:{id:"follow_request.authorize",defaultMessage:"Authorize"},reject:{id:"follow_request.reject",defaultMessage:"Reject"}}),q=Object(w.g)((a=c=function(n){function t(){return l()(this,t),d()(this,n.apply(this,arguments))}return h()(t,n),t.prototype.render=function(){var n=this.props,t=n.intl,e=n.account,o=n.onAuthorize,c=n.onReject,a={__html:e.get("note_emojified")};return r()("div",{className:"account-authorize__wrapper"},void 0,r()("div",{className:"account-authorize"},void 0,r()(y.a,{href:e.get("url"),to:"/accounts/"+e.get("id"),className:"detailed-status__display-name"},void 0,r()("div",{className:"account-authorize__avatar"},void 0,r()(g.a,{account:e,size:48})),r()(j.a,{account:e})),r()("div",{className:"account__header__content",dangerouslySetInnerHTML:a})),r()("div",{className:"account--panel"},void 0,r()("div",{className:"account--panel__button"},void 0,r()(k.a,{title:t.formatMessage(O.authorize),icon:"check",onClick:o})),r()("div",{className:"account--panel__button"},void 0,r()(k.a,{title:t.formatMessage(O.reject),icon:"times",onClick:c}))))},t}(N.a),c.propTypes={account:_.a.map.isRequired,onAuthorize:b.a.func.isRequired,onReject:b.a.func.isRequired,intl:b.a.object.isRequired},o=a))||o}}); +webpackJsonp([18],{150:function(n,t,e){"use strict";e.d(t,"a",function(){return v});var o=e(2),c=e.n(o),a=e(1),i=e.n(a),r=e(3),u=e.n(r),l=e(4),s=e.n(l),d=e(0),f=e.n(d),h=e(10),p=e.n(h),v=function(n){function t(){var e,o,c;i()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return e=o=u()(this,n.call.apply(n,[this].concat(r))),o.handleClick=function(){o.props.onClick()},c=e,u()(o,c)}return s()(t,n),t.prototype.render=function(){var n=this.props,t=n.icon,e=n.type,o=n.active,a=n.columnHeaderId,i="";return t&&(i=c()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),c()("h1",{className:p()("column-header",{active:o}),id:a||null},void 0,c()("button",{onClick:this.handleClick},void 0,i,e))},t}(f.a.PureComponent)},283:function(n,t,e){"use strict";e.d(t,"a",function(){return _});var o=e(2),c=e.n(o),a=e(1),i=e.n(a),r=e(3),u=e.n(r),l=e(4),s=e.n(l),d=e(34),f=e.n(d),h=e(0),p=e.n(h),v=e(150),b=e(90),m=e(35),_=function(n){function t(){var e,o,c;i()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return e=o=u()(this,n.call.apply(n,[this].concat(r))),o.handleHeaderClick=function(){var n=o.node.querySelector(".scrollable");n&&(o._interruptScrollAnimation=Object(b.b)(n))},o.handleScroll=f()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(n){o.node=n},c=e,u()(o,c)}return s()(t,n),t.prototype.scrollTop=function(){var n=this.node.querySelector(".scrollable");n&&(this._interruptScrollAnimation=Object(b.b)(n))},t.prototype.render=function(){var n=this.props,t=n.heading,e=n.icon,o=n.children,a=n.active,i=n.hideHeadingOnMobile,r=t&&(!i||i&&!Object(m.b)(window.innerWidth)),u=r&&t.replace(/ /g,"-"),l=r&&c()(v.a,{icon:e,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:u});return p.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":u,className:"column",onScroll:this.handleScroll},l,o)},t}(p.a.PureComponent)},286:function(n,t,e){"use strict";e.d(t,"a",function(){return _});var o,c,a=e(2),i=e.n(a),r=e(1),u=e.n(r),l=e(3),s=e.n(l),d=e(4),f=e.n(d),h=e(0),p=e.n(h),v=e(6),b=e(5),m=e.n(b),_=(c=o=function(n){function t(){var e,o,c;u()(this,t);for(var a=arguments.length,i=Array(a),r=0;r<a;r++)i[r]=arguments[r];return e=o=s()(this,n.call.apply(n,[this].concat(i))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},c=e,s()(o,c)}return f()(t,n),t.prototype.render=function(){return i()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,i()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),i()(v.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(p.a.PureComponent),o.contextTypes={router:m.a.object},c)},298:function(n,t,e){"use strict";e.d(t,"a",function(){return p});var o=e(2),c=e.n(o),a=e(1),i=e.n(a),r=e(3),u=e.n(r),l=e(4),s=e.n(l),d=e(0),f=(e.n(d),e(6)),h=e(286),p=function(n){function t(){return i()(this,t),u()(this,n.apply(this,arguments))}return s()(t,n),t.prototype.render=function(){return c()("div",{className:"column-back-button--slim"},void 0,c()("div",{role:"button",tabIndex:"0",onClick:this.handleClick,className:"column-back-button column-back-button--slim-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(f.b,{id:"column_back_button.label",defaultMessage:"Back"})))},t}(h.a)},819:function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),e.d(t,"default",function(){return z});var o,c,a,i,r=e(2),u=e.n(r),l=e(1),s=e.n(l),d=e(3),f=e.n(d),h=e(4),p=e.n(h),v=e(0),b=(e.n(v),e(9)),m=e(5),_=e.n(m),y=e(13),g=e.n(y),j=e(296),k=e(151),w=e(283),C=e(298),N=e(968),O=e(22),q=e(6),R=e(12),S=e.n(R),A=Object(q.f)({heading:{id:"column.follow_requests",defaultMessage:"Follow requests"}}),M=function(n){return{accountIds:n.getIn(["user_lists","follow_requests","items"])}},z=(o=Object(b.connect)(M))(c=Object(q.g)((i=a=function(n){function t(){var e,o,c;s()(this,t);for(var a=arguments.length,i=Array(a),r=0;r<a;r++)i[r]=arguments[r];return e=o=f()(this,n.call.apply(n,[this].concat(i))),o.handleScroll=function(n){var t=n.target;t.scrollTop===t.scrollHeight-t.clientHeight&&o.props.dispatch(Object(O.r)())},c=e,f()(o,c)}return p()(t,n),t.prototype.componentWillMount=function(){this.props.dispatch(Object(O.v)())},t.prototype.render=function(){var n=this.props,t=n.intl,e=n.accountIds;return e?u()(w.a,{icon:"users",heading:t.formatMessage(A.heading)},void 0,u()(C.a,{}),u()(k.a,{scrollKey:"follow_requests"},void 0,u()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,e.map(function(n){return u()(N.a,{id:n},n)})))):u()(w.a,{},void 0,u()(j.a,{}))},t}(S.a),a.propTypes={params:_.a.object.isRequired,dispatch:_.a.func.isRequired,accountIds:g.a.list,intl:_.a.object.isRequired},c=i))||c)||c},968:function(n,t,e){"use strict";var o=e(9),c=e(66),a=e(969),i=e(22),r=function(){var n=Object(c.c)();return function(t,e){return{account:n(t,e.id)}}},u=function(n,t){var e=t.id;return{onAuthorize:function(){n(Object(i.p)(e))},onReject:function(){n(Object(i.B)(e))}}};t.a=Object(o.connect)(r,u)(a.a)},969:function(n,t,e){"use strict";e.d(t,"a",function(){return q});var o,c,a,i=e(2),r=e.n(i),u=e(1),l=e.n(u),s=e(3),d=e.n(s),f=e(4),h=e.n(f),p=e(0),v=(e.n(p),e(5)),b=e.n(v),m=e(13),_=e.n(m),y=e(295),g=e(56),j=e(55),k=e(23),w=e(6),C=e(12),N=e.n(C),O=Object(w.f)({authorize:{id:"follow_request.authorize",defaultMessage:"Authorize"},reject:{id:"follow_request.reject",defaultMessage:"Reject"}}),q=Object(w.g)((a=c=function(n){function t(){return l()(this,t),d()(this,n.apply(this,arguments))}return h()(t,n),t.prototype.render=function(){var n=this.props,t=n.intl,e=n.account,o=n.onAuthorize,c=n.onReject,a={__html:e.get("note_emojified")};return r()("div",{className:"account-authorize__wrapper"},void 0,r()("div",{className:"account-authorize"},void 0,r()(y.a,{href:e.get("url"),to:"/accounts/"+e.get("id"),className:"detailed-status__display-name"},void 0,r()("div",{className:"account-authorize__avatar"},void 0,r()(g.a,{account:e,size:48})),r()(j.a,{account:e})),r()("div",{className:"account__header__content",dangerouslySetInnerHTML:a})),r()("div",{className:"account--panel"},void 0,r()("div",{className:"account--panel__button"},void 0,r()(k.a,{title:t.formatMessage(O.authorize),icon:"check",onClick:o})),r()("div",{className:"account--panel__button"},void 0,r()(k.a,{title:t.formatMessage(O.reject),icon:"times",onClick:c}))))},t}(N.a),c.propTypes={account:_.a.map.isRequired,onAuthorize:b.a.func.isRequired,onReject:b.a.func.isRequired,intl:b.a.object.isRequired},o=a))||o}}); //# sourceMappingURL=follow_requests.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/follow_requests.js.map b/priv/static/packs/features/follow_requests.js.map index 08535c1ed..d9f70a18f 100644 --- a/priv/static/packs/features/follow_requests.js.map +++ b/priv/static/packs/features/follow_requests.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/follow_requests.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/components/column_back_button_slim.js","webpack:///./app/javascript/mastodon/features/follow_requests/index.js","webpack:///./app/javascript/mastodon/features/follow_requests/containers/account_authorize_container.js","webpack:///./app/javascript/mastodon/features/follow_requests/components/account_authorize.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","Object","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","298","ColumnBackButtonSlim","__WEBPACK_IMPORTED_MODULE_6__column_back_button__","_ColumnBackButton","tabIndex","820","defineProperty","value","FollowRequests","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_10__ui_components_column__","__WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__","__WEBPACK_IMPORTED_MODULE_12__containers_account_authorize_container__","__WEBPACK_IMPORTED_MODULE_13__actions_accounts__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default","messages","mapStateToProps","state","accountIds","getIn","_ImmutablePureCompone","e","_e$target","target","scrollHeight","clientHeight","dispatch","componentWillMount","intl","formatMessage","scrollKey","map","propTypes","params","isRequired","func","list","970","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__selectors__","__WEBPACK_IMPORTED_MODULE_2__components_account_authorize__","__WEBPACK_IMPORTED_MODULE_3__actions_accounts__","makeMapStateToProps","getAccount","account","mapDispatchToProps","_ref","onAuthorize","onReject","971","AccountAuthorize","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__components_permalink__","__WEBPACK_IMPORTED_MODULE_8__components_avatar__","__WEBPACK_IMPORTED_MODULE_9__components_display_name__","__WEBPACK_IMPORTED_MODULE_10__components_icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","authorize","reject","content","__html","get","href","to","size","dangerouslySetInnerHTML","title"],"mappings":"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","file":"features/follow_requests.js","sourcesContent":["webpackJsonp([19],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 298:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButtonSlim; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_back_button__ = __webpack_require__(286);\n\n\n\n\n\n\n\n\nvar ColumnBackButtonSlim = function (_ColumnBackButton) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButtonSlim, _ColumnBackButton);\n\n function ColumnBackButtonSlim() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButtonSlim);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ColumnBackButton.apply(this, arguments));\n }\n\n ColumnBackButtonSlim.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-back-button--slim'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n onClick: this.handleClick,\n className: 'column-back-button column-back-button--slim-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n })));\n };\n\n return ColumnBackButtonSlim;\n}(__WEBPACK_IMPORTED_MODULE_6__column_back_button__[\"a\" /* default */]);\n\n\n\n/***/ }),\n\n/***/ 820:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return FollowRequests; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__ = __webpack_require__(298);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_account_authorize_container__ = __webpack_require__(970);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'column.follow_requests',\n 'defaultMessage': 'Follow requests'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n accountIds: state.getIn(['user_lists', 'follow_requests', 'items'])\n };\n};\n\nvar FollowRequests = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(FollowRequests, _ImmutablePureCompone);\n\n function FollowRequests() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, FollowRequests);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n\n if (scrollTop === scrollHeight - clientHeight) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_accounts__[\"r\" /* expandFollowRequests */])());\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n FollowRequests.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_accounts__[\"v\" /* fetchFollowRequests */])());\n };\n\n FollowRequests.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n accountIds = _props.accountIds;\n\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */], {\n icon: 'users',\n heading: intl.formatMessage(messages.heading)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'follow_requests'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_account_authorize_container__[\"a\" /* default */], {\n id: id\n }, id);\n }))));\n };\n\n return FollowRequests;\n}(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 970:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_account_authorize__ = __webpack_require__(971);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_accounts__ = __webpack_require__(22);\n\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_1__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var id = _ref.id;\n return {\n onAuthorize: function onAuthorize() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_accounts__[\"p\" /* authorizeFollowRequest */])(id));\n },\n onReject: function onReject() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_accounts__[\"B\" /* rejectFollowRequest */])(id));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_account_authorize__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 971:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AccountAuthorize; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n authorize: {\n 'id': 'follow_request.authorize',\n 'defaultMessage': 'Authorize'\n },\n reject: {\n 'id': 'follow_request.reject',\n 'defaultMessage': 'Reject'\n }\n});\n\nvar AccountAuthorize = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AccountAuthorize, _ImmutablePureCompone);\n\n function AccountAuthorize() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AccountAuthorize);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n AccountAuthorize.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n account = _props.account,\n onAuthorize = _props.onAuthorize,\n onReject = _props.onReject;\n\n var content = { __html: account.get('note_emojified') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-authorize__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-authorize'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_permalink__[\"a\" /* default */], {\n href: account.get('url'),\n to: '/accounts/' + account.get('id'),\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-authorize__avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_avatar__[\"a\" /* default */], {\n account: account,\n size: 48\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--panel'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--panel__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.authorize),\n icon: 'check',\n onClick: onAuthorize\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--panel__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.reject),\n icon: 'times',\n onClick: onReject\n }))));\n };\n\n return AccountAuthorize;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n onAuthorize: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onReject: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object.isRequired\n}, _temp)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/follow_requests.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport ColumnBackButton from './column_back_button';\n\nexport default class ColumnBackButtonSlim extends ColumnBackButton {\n\n render () {\n return (\n <div className='column-back-button--slim'>\n <div role='button' tabIndex='0' onClick={this.handleClick} className='column-back-button column-back-button--slim-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button_slim.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport Column from '../ui/components/column';\nimport ColumnBackButtonSlim from '../../components/column_back_button_slim';\nimport AccountAuthorizeContainer from './containers/account_authorize_container';\nimport { fetchFollowRequests, expandFollowRequests } from '../../actions/accounts';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n heading: { id: 'column.follow_requests', defaultMessage: 'Follow requests' },\n});\n\nconst mapStateToProps = state => ({\n accountIds: state.getIn(['user_lists', 'follow_requests', 'items']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class FollowRequests extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n intl: PropTypes.object.isRequired,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchFollowRequests());\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n\n if (scrollTop === scrollHeight - clientHeight) {\n this.props.dispatch(expandFollowRequests());\n }\n }\n\n render () {\n const { intl, accountIds } = this.props;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column icon='users' heading={intl.formatMessage(messages.heading)}>\n <ColumnBackButtonSlim />\n\n <ScrollContainer scrollKey='follow_requests'>\n <div className='scrollable' onScroll={this.handleScroll}>\n {accountIds.map(id =>\n <AccountAuthorizeContainer key={id} id={id} />\n )}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/follow_requests/index.js","import { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport AccountAuthorize from '../components/account_authorize';\nimport { authorizeFollowRequest, rejectFollowRequest } from '../../../actions/accounts';\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { id }) => ({\n onAuthorize () {\n dispatch(authorizeFollowRequest(id));\n },\n\n onReject () {\n dispatch(rejectFollowRequest(id));\n },\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(AccountAuthorize);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/follow_requests/containers/account_authorize_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Permalink from '../../../components/permalink';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport IconButton from '../../../components/icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n authorize: { id: 'follow_request.authorize', defaultMessage: 'Authorize' },\n reject: { id: 'follow_request.reject', defaultMessage: 'Reject' },\n});\n\n@injectIntl\nexport default class AccountAuthorize extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onAuthorize: PropTypes.func.isRequired,\n onReject: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { intl, account, onAuthorize, onReject } = this.props;\n const content = { __html: account.get('note_emojified') };\n\n return (\n <div className='account-authorize__wrapper'>\n <div className='account-authorize'>\n <Permalink href={account.get('url')} to={`/accounts/${account.get('id')}`} className='detailed-status__display-name'>\n <div className='account-authorize__avatar'><Avatar account={account} size={48} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n </div>\n\n <div className='account--panel'>\n <div className='account--panel__button'><IconButton title={intl.formatMessage(messages.authorize)} icon='check' onClick={onAuthorize} /></div>\n <div className='account--panel__button'><IconButton title={intl.formatMessage(messages.reject)} icon='times' onClick={onReject} /></div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/follow_requests/components/account_authorize.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/follow_requests.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/components/column_back_button_slim.js","webpack:///./app/javascript/mastodon/features/follow_requests/index.js","webpack:///./app/javascript/mastodon/features/follow_requests/containers/account_authorize_container.js","webpack:///./app/javascript/mastodon/features/follow_requests/components/account_authorize.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","Object","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","298","ColumnBackButtonSlim","__WEBPACK_IMPORTED_MODULE_6__column_back_button__","_ColumnBackButton","tabIndex","819","defineProperty","value","FollowRequests","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_10__ui_components_column__","__WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__","__WEBPACK_IMPORTED_MODULE_12__containers_account_authorize_container__","__WEBPACK_IMPORTED_MODULE_13__actions_accounts__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default","messages","mapStateToProps","state","accountIds","getIn","_ImmutablePureCompone","e","_e$target","target","scrollHeight","clientHeight","dispatch","componentWillMount","intl","formatMessage","scrollKey","map","propTypes","params","isRequired","func","list","968","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__selectors__","__WEBPACK_IMPORTED_MODULE_2__components_account_authorize__","__WEBPACK_IMPORTED_MODULE_3__actions_accounts__","makeMapStateToProps","getAccount","account","mapDispatchToProps","_ref","onAuthorize","onReject","969","AccountAuthorize","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__components_permalink__","__WEBPACK_IMPORTED_MODULE_8__components_avatar__","__WEBPACK_IMPORTED_MODULE_9__components_display_name__","__WEBPACK_IMPORTED_MODULE_10__components_icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","authorize","reject","content","__html","get","href","to","size","dangerouslySetInnerHTML","title"],"mappings":"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","file":"features/follow_requests.js","sourcesContent":["webpackJsonp([18],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 298:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButtonSlim; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_back_button__ = __webpack_require__(286);\n\n\n\n\n\n\n\n\nvar ColumnBackButtonSlim = function (_ColumnBackButton) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButtonSlim, _ColumnBackButton);\n\n function ColumnBackButtonSlim() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButtonSlim);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ColumnBackButton.apply(this, arguments));\n }\n\n ColumnBackButtonSlim.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-back-button--slim'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n onClick: this.handleClick,\n className: 'column-back-button column-back-button--slim-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n })));\n };\n\n return ColumnBackButtonSlim;\n}(__WEBPACK_IMPORTED_MODULE_6__column_back_button__[\"a\" /* default */]);\n\n\n\n/***/ }),\n\n/***/ 819:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return FollowRequests; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__ = __webpack_require__(298);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_account_authorize_container__ = __webpack_require__(968);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'column.follow_requests',\n 'defaultMessage': 'Follow requests'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n accountIds: state.getIn(['user_lists', 'follow_requests', 'items'])\n };\n};\n\nvar FollowRequests = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(FollowRequests, _ImmutablePureCompone);\n\n function FollowRequests() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, FollowRequests);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n\n if (scrollTop === scrollHeight - clientHeight) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_accounts__[\"r\" /* expandFollowRequests */])());\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n FollowRequests.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_accounts__[\"v\" /* fetchFollowRequests */])());\n };\n\n FollowRequests.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n accountIds = _props.accountIds;\n\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__ui_components_column__[\"a\" /* default */], {\n icon: 'users',\n heading: intl.formatMessage(messages.heading)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_column_back_button_slim__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'follow_requests'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_account_authorize_container__[\"a\" /* default */], {\n id: id\n }, id);\n }))));\n };\n\n return FollowRequests;\n}(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 968:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_account_authorize__ = __webpack_require__(969);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_accounts__ = __webpack_require__(22);\n\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_1__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var id = _ref.id;\n return {\n onAuthorize: function onAuthorize() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_accounts__[\"p\" /* authorizeFollowRequest */])(id));\n },\n onReject: function onReject() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_accounts__[\"B\" /* rejectFollowRequest */])(id));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_account_authorize__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 969:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AccountAuthorize; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n authorize: {\n 'id': 'follow_request.authorize',\n 'defaultMessage': 'Authorize'\n },\n reject: {\n 'id': 'follow_request.reject',\n 'defaultMessage': 'Reject'\n }\n});\n\nvar AccountAuthorize = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AccountAuthorize, _ImmutablePureCompone);\n\n function AccountAuthorize() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AccountAuthorize);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n AccountAuthorize.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n account = _props.account,\n onAuthorize = _props.onAuthorize,\n onReject = _props.onReject;\n\n var content = { __html: account.get('note_emojified') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-authorize__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-authorize'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_permalink__[\"a\" /* default */], {\n href: account.get('url'),\n to: '/accounts/' + account.get('id'),\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-authorize__avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_avatar__[\"a\" /* default */], {\n account: account,\n size: 48\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--panel'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--panel__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.authorize),\n icon: 'check',\n onClick: onAuthorize\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--panel__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.reject),\n icon: 'times',\n onClick: onReject\n }))));\n };\n\n return AccountAuthorize;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n onAuthorize: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onReject: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object.isRequired\n}, _temp)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/follow_requests.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport ColumnBackButton from './column_back_button';\n\nexport default class ColumnBackButtonSlim extends ColumnBackButton {\n\n render () {\n return (\n <div className='column-back-button--slim'>\n <div role='button' tabIndex='0' onClick={this.handleClick} className='column-back-button column-back-button--slim-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button_slim.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport Column from '../ui/components/column';\nimport ColumnBackButtonSlim from '../../components/column_back_button_slim';\nimport AccountAuthorizeContainer from './containers/account_authorize_container';\nimport { fetchFollowRequests, expandFollowRequests } from '../../actions/accounts';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n heading: { id: 'column.follow_requests', defaultMessage: 'Follow requests' },\n});\n\nconst mapStateToProps = state => ({\n accountIds: state.getIn(['user_lists', 'follow_requests', 'items']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class FollowRequests extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n intl: PropTypes.object.isRequired,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchFollowRequests());\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n\n if (scrollTop === scrollHeight - clientHeight) {\n this.props.dispatch(expandFollowRequests());\n }\n }\n\n render () {\n const { intl, accountIds } = this.props;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column icon='users' heading={intl.formatMessage(messages.heading)}>\n <ColumnBackButtonSlim />\n\n <ScrollContainer scrollKey='follow_requests'>\n <div className='scrollable' onScroll={this.handleScroll}>\n {accountIds.map(id =>\n <AccountAuthorizeContainer key={id} id={id} />\n )}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/follow_requests/index.js","import { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport AccountAuthorize from '../components/account_authorize';\nimport { authorizeFollowRequest, rejectFollowRequest } from '../../../actions/accounts';\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { id }) => ({\n onAuthorize () {\n dispatch(authorizeFollowRequest(id));\n },\n\n onReject () {\n dispatch(rejectFollowRequest(id));\n },\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(AccountAuthorize);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/follow_requests/containers/account_authorize_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Permalink from '../../../components/permalink';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport IconButton from '../../../components/icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n authorize: { id: 'follow_request.authorize', defaultMessage: 'Authorize' },\n reject: { id: 'follow_request.reject', defaultMessage: 'Reject' },\n});\n\n@injectIntl\nexport default class AccountAuthorize extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onAuthorize: PropTypes.func.isRequired,\n onReject: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { intl, account, onAuthorize, onReject } = this.props;\n const content = { __html: account.get('note_emojified') };\n\n return (\n <div className='account-authorize__wrapper'>\n <div className='account-authorize'>\n <Permalink href={account.get('url')} to={`/accounts/${account.get('id')}`} className='detailed-status__display-name'>\n <div className='account-authorize__avatar'><Avatar account={account} size={48} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n </div>\n\n <div className='account--panel'>\n <div className='account--panel__button'><IconButton title={intl.formatMessage(messages.authorize)} icon='check' onClick={onAuthorize} /></div>\n <div className='account--panel__button'><IconButton title={intl.formatMessage(messages.reject)} icon='times' onClick={onReject} /></div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/follow_requests/components/account_authorize.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/followers.js b/priv/static/packs/features/followers.js index b8db5c3a6..6e4530202 100644 --- a/priv/static/packs/features/followers.js +++ b/priv/static/packs/features/followers.js @@ -1,2 +1,2 @@ -webpackJsonp([11],{149:function(e,t,o){"use strict";o.d(t,"a",function(){return m});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=o.n(p),h=o(6),m=(a=n=function(e){function t(){return r()(this,t),u()(this,e.apply(this,arguments))}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,o=e.visible;return c()("button",{className:"load-more",disabled:t||!o,style:{visibility:o?"visible":"hidden"},onClick:this.props.onClick},void 0,c()(h.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(g.a.PureComponent),n.defaultProps={visible:!0},a)},150:function(e,t,o){"use strict";o.d(t,"a",function(){return h});var n=o(2),a=o.n(n),i=o(1),c=o.n(i),s=o(3),r=o.n(s),l=o(4),u=o.n(l),d=o(0),f=o.n(d),p=o(10),g=o.n(p),h=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),l=0;l<i;l++)s[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(s))),n.handleClick=function(){n.props.onClick()},a=o,r()(n,a)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,o=e.type,n=e.active,i=e.columnHeaderId,c="";return t&&(c=a()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),a()("h1",{className:g()("column-header",{active:n}),id:i||null},void 0,a()("button",{onClick:this.handleClick},void 0,c,o))},t}(f.a.PureComponent)},283:function(e,t,o){"use strict";function n(e){return function(t){t({type:i,account:e}),t(Object(a.d)("MUTE"))}}t.a=n;var a=(o(14),o(22),o(15),o(26)),i="MUTES_INIT_MODAL"},284:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n=o(2),a=o.n(n),i=o(1),c=o.n(i),s=o(3),r=o.n(s),l=o(4),u=o.n(l),d=o(34),f=o.n(d),p=o(0),g=o.n(p),h=o(150),m=o(90),v=o(35),b=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),l=0;l<i;l++)s[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(s))),n.handleHeaderClick=function(){var e=n.node.querySelector(".scrollable");e&&(n._interruptScrollAnimation=Object(m.b)(e))},n.handleScroll=f()(function(){void 0!==n._interruptScrollAnimation&&n._interruptScrollAnimation()},200),n.setRef=function(e){n.node=e},a=o,r()(n,a)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(m.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,o=e.icon,n=e.children,i=e.active,c=e.hideHeadingOnMobile,s=t&&(!c||c&&!Object(v.b)(window.innerWidth)),r=s&&t.replace(/ /g,"-"),l=s&&a()(h.a,{icon:o,active:i,type:t,onClick:this.handleHeaderClick,columnHeaderId:r});return g.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":r,className:"column",onScroll:this.handleScroll},l,n)},t}(g.a.PureComponent)},286:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=o.n(p),h=o(6),m=o(5),v=o.n(m),b=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleClick=function(){window.history&&1===window.history.length?n.context.router.history.push("/"):n.context.router.history.goBack()},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(g.a.PureComponent),n.contextTypes={router:v.a.object},a)},816:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o.d(t,"default",function(){return F});var n,a,i,c,s=o(2),r=o.n(s),l=o(1),u=o.n(l),d=o(3),f=o.n(d),p=o(4),g=o.n(p),h=o(0),m=(o.n(h),o(9)),v=o(5),b=o.n(v),_=o(13),M=o.n(_),w=o(296),k=o(22),y=o(152),O=o(843),I=o(284),N=o(846),j=o(149),R=o(286),C=o(12),q=o.n(C),T=function(e,t){return{accountIds:e.getIn(["user_lists","followers",t.params.accountId,"items"]),hasMore:!!e.getIn(["user_lists","followers",t.params.accountId,"next"])}},F=(n=Object(m.connect)(T))((c=i=function(e){function t(){var o,n,a;u()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=f()(this,e.call.apply(e,[this].concat(c))),n.handleScroll=function(e){var t=e.target;t.scrollTop===t.scrollHeight-t.clientHeight&&n.props.hasMore&&n.props.dispatch(Object(k.s)(n.props.params.accountId))},n.handleLoadMore=function(e){e.preventDefault(),n.props.dispatch(Object(k.s)(n.props.params.accountId))},a=o,f()(n,a)}return g()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(k.u)(this.props.params.accountId)),this.props.dispatch(Object(k.w)(this.props.params.accountId))},t.prototype.componentWillReceiveProps=function(e){e.params.accountId!==this.props.params.accountId&&e.params.accountId&&(this.props.dispatch(Object(k.u)(e.params.accountId)),this.props.dispatch(Object(k.w)(e.params.accountId)))},t.prototype.render=function(){var e=this.props,t=e.accountIds,o=e.hasMore,n=null;return t?(o&&(n=r()(j.a,{onClick:this.handleLoadMore})),r()(I.a,{},void 0,r()(R.a,{}),r()(y.a,{scrollKey:"followers"},void 0,r()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,r()("div",{className:"followers"},void 0,r()(N.a,{accountId:this.props.params.accountId,hideTabs:!0}),t.map(function(e){return r()(O.a,{id:e,withNote:!1},e)}),n))))):r()(I.a,{},void 0,r()(w.a,{}))},t}(q.a),i.propTypes={params:b.a.object.isRequired,dispatch:b.a.func.isRequired,accountIds:M.a.list,hasMore:b.a.bool},a=c))||a},843:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(9)),s=o(6),r=o(66),l=o(844),u=o(22),d=o(26),f=o(283),p=o(11),g=Object(s.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var e=Object(r.c)();return function(t,o){return{account:e(t,o.id)}}},m=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:a()(s.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(g.unfollowConfirm),onConfirm:function(){return e(Object(u.D)(t.get("id")))}}):Object(u.D)(t.get("id")):Object(u.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(u.C)(t.get("id")):Object(u.q)(t.get("id")))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(u.E)(t.get("id")):Object(f.a)(t))},onMuteNotifications:function(t,o){e(Object(u.A)(t.get("id"),o))}}};t.a=Object(s.g)(Object(c.connect)(h,m)(l.a))},844:function(e,t,o){"use strict";o.d(t,"a",function(){return R});var n,a,i,c=o(2),s=o.n(c),r=o(1),l=o.n(r),u=o(3),d=o.n(u),f=o(4),p=o.n(f),g=o(0),h=(o.n(g),o(13)),m=o.n(h),v=o(5),b=o.n(v),_=o(56),M=o(55),w=o(295),k=o(23),y=o(6),O=o(12),I=o.n(O),N=o(11),j=Object(y.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),R=Object(y.g)((i=a=function(e){function t(){var o,n,a;l()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=d()(this,e.call.apply(e,[this].concat(c))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},n.handleMuteNotifications=function(){n.props.onMuteNotifications(n.props.account,!0)},n.handleUnmuteNotifications=function(){n.props.onMuteNotifications(n.props.account,!1)},a=o,d()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=e.hidden;if(!t)return s()("div",{});if(n)return s()("div",{},void 0,t.get("display_name"),t.get("username"));var a=void 0;if(t.get("id")!==N.g&&null!==t.get("relationship",null)){var i=t.getIn(["relationship","following"]),c=t.getIn(["relationship","requested"]),r=t.getIn(["relationship","blocking"]),l=t.getIn(["relationship","muting"]);if(c)a=s()(k.a,{disabled:!0,icon:"hourglass",title:o.formatMessage(j.requested)});else if(r)a=s()(k.a,{active:!0,icon:"unlock-alt",title:o.formatMessage(j.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(l){var u=void 0;u=t.getIn(["relationship","muting_notifications"])?s()(k.a,{active:!0,icon:"bell",title:o.formatMessage(j.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):s()(k.a,{active:!0,icon:"bell-slash",title:o.formatMessage(j.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),a=s()(g.Fragment,{},void 0,s()(k.a,{active:!0,icon:"volume-up",title:o.formatMessage(j.unmute,{name:t.get("username")}),onClick:this.handleMute}),u)}else t.get("moved")&&!i||(a=s()(k.a,{icon:i?"user-times":"user-plus",title:o.formatMessage(i?j.unfollow:j.follow),onClick:this.handleFollow,active:i}))}return s()("div",{className:"account"},void 0,s()("div",{className:"account__wrapper"},void 0,s()(w.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),s()("div",{className:"account__avatar-wrapper"},void 0,s()(_.a,{account:t,size:36})),s()(M.a,{account:t})),s()("div",{className:"account__relationship"},void 0,a)))},t}(I.a),a.propTypes={account:m.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},n=i))||n},845:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(6)),s=function(){return a()("div",{className:"regeneration-indicator missing-indicator"},void 0,a()("div",{},void 0,a()("div",{className:"regeneration-indicator__label"},void 0,a()(c.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),a()(c.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=s},846:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(9)),s=o(66),r=o(847),l=o(22),u=o(18),d=o(283),f=o(151),p=o(26),g=o(6),h=o(11),m=Object(g.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),v=function(){var e=Object(s.c)();return function(t,o){var n=o.accountId;return{account:e(t,n)}}},b=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?h.j?Object(p.d)("CONFIRM",{message:a()(g.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(m.unfollowConfirm),onConfirm:function(){return e(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(p.d)("CONFIRM",{message:a()(g.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(l.q)(t.get("id")))}}))},onMention:function(t,o){e(Object(u.R)(t,o))},onDirect:function(t,o){e(Object(u.N)(t,o))},onReblogToggle:function(t){e(t.getIn(["relationship","showing_reblogs"])?Object(l.z)(t.get("id"),!1):Object(l.z)(t.get("id"),!0))},onReport:function(t){e(Object(f.k)(t))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(d.a)(t))}}};t.a=Object(g.g)(Object(c.connect)(v,b)(r.a))},847:function(e,t,o){"use strict";o.d(t,"a",function(){return N});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=(o.n(p),o(13)),h=o.n(g),m=o(5),v=o.n(m),b=o(848),_=o(849),M=o(845),w=o(12),k=o.n(w),y=o(850),O=o(6),I=o(44),N=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMention=function(){n.props.onMention(n.props.account,n.context.router.history)},n.handleDirect=function(){n.props.onDirect(n.props.account,n.context.router.history)},n.handleReport=function(){n.props.onReport(n.props.account)},n.handleReblogToggle=function(){n.props.onReblogToggle(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.hideTabs;return null===t?c()(M.a,{}):c()("div",{className:"account-timeline__header"},void 0,t.get("moved")&&c()(y.a,{from:t,to:t.get("moved")}),c()(b.a,{account:t,onFollow:this.handleFollow,onBlock:this.handleBlock}),c()(_.a,{account:t,onBlock:this.handleBlock,onMention:this.handleMention,onDirect:this.handleDirect,onReblogToggle:this.handleReblogToggle,onReport:this.handleReport,onMute:this.handleMute}),!o&&c()("div",{className:"account__section-headline"},void 0,c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")},void 0,c()(O.b,{id:"account.posts",defaultMessage:"Toots"})),c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/with_replies"},void 0,c()(O.b,{id:"account.posts_with_replies",defaultMessage:"Toots and replies"})),c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/media"},void 0,c()(O.b,{id:"account.media",defaultMessage:"Media"}))))},t}(k.a),n.propTypes={account:h.a.map,onFollow:v.a.func.isRequired,onBlock:v.a.func.isRequired,onMention:v.a.func.isRequired,onDirect:v.a.func.isRequired,onReblogToggle:v.a.func.isRequired,onReport:v.a.func.isRequired,onMute:v.a.func.isRequired,hideTabs:v.a.bool},n.contextTypes={router:v.a.object},a)},848:function(e,t,o){"use strict";o.d(t,"a",function(){return T});var n,a,i,c,s,r=o(2),l=o.n(r),u=o(1),d=o.n(u),f=o(3),p=o.n(f),g=o(4),h=o.n(g),m=o(0),v=(o.n(m),o(13)),b=o.n(v),_=o(5),M=o.n(_),w=o(6),k=o(23),y=o(27),O=(o.n(y),o(12)),I=o.n(O),N=o(11),j=o(10),R=o.n(j),C=Object(w.f)({unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},follow:{id:"account.follow",defaultMessage:"Follow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval. Click to cancel follow request"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"}}),q=(a=n=function(e){function t(){var o,n,a;d()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=p()(this,e.call.apply(e,[this].concat(c))),n.state={isHovered:!1},n.handleMouseOver=function(){n.state.isHovered||n.setState({isHovered:!0})},n.handleMouseOut=function(){n.state.isHovered&&n.setState({isHovered:!1})},a=o,p()(n,a)}return h()(t,e),t.prototype.render=function(){var e=this.props.account,t=this.state.isHovered;return l()("a",{href:e.get("url"),className:"account__header__avatar",role:"presentation",target:"_blank",rel:"noopener",style:{backgroundImage:"url("+(N.a||t?e.get("avatar"):e.get("avatar_static"))+")"},onMouseOver:this.handleMouseOver,onMouseOut:this.handleMouseOut,onFocus:this.handleMouseOver,onBlur:this.handleMouseOut},void 0,l()("span",{style:{display:"none"}},void 0,e.get("acct")))},t}(I.a),n.propTypes={account:b.a.map.isRequired},a),T=Object(w.g)((s=c=function(e){function t(){return d()(this,t),p()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl;if(!t)return null;var n="",a="",i="",c="";N.g!==t.get("id")&&t.getIn(["relationship","followed_by"])?n=l()("span",{className:"account--follows-info"},void 0,l()(w.b,{id:"account.follows_you",defaultMessage:"Follows you"})):N.g!==t.get("id")&&t.getIn(["relationship","blocking"])&&(n=l()("span",{className:"account--follows-info"},void 0,l()(w.b,{id:"account.blocked",defaultMessage:"Blocked"}))),N.g!==t.get("id")&&t.getIn(["relationship","muting"])?a=l()("span",{className:"account--muting-info"},void 0,l()(w.b,{id:"account.muted",defaultMessage:"Muted"})):N.g!==t.get("id")&&t.getIn(["relationship","domain_blocking"])&&(a=l()("span",{className:"account--muting-info"},void 0,l()(w.b,{id:"account.domain_blocked",defaultMessage:"Domain hidden"}))),N.g!==t.get("id")&&(t.getIn(["relationship","requested"])?i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,active:!0,icon:"hourglass",title:o.formatMessage(C.requested),onClick:this.props.onFollow})):t.getIn(["relationship","blocking"])?t.getIn(["relationship","blocking"])&&(i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:"unlock-alt",title:o.formatMessage(C.unblock,{name:t.get("username")}),onClick:this.props.onBlock}))):i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:t.getIn(["relationship","following"])?"user-times":"user-plus",active:t.getIn(["relationship","following"]),title:o.formatMessage(t.getIn(["relationship","following"])?C.unfollow:C.follow),onClick:this.props.onFollow}))),t.get("moved")&&!t.getIn(["relationship","following"])&&(i=""),t.get("locked")&&(c=l()("i",{className:"fa fa-lock"}));var s={__html:t.get("note_emojified")},r={__html:t.get("display_name_html")};return l()("div",{className:R()("account__header",{inactive:!!t.get("moved")}),style:{backgroundImage:"url("+t.get("header")+")"}},void 0,l()("div",{},void 0,l()(q,{account:t}),l()("span",{className:"account__header__display-name",dangerouslySetInnerHTML:r}),l()("span",{className:"account__header__username"},void 0,"@",t.get("acct")," ",c),l()("div",{className:"account__header__content",dangerouslySetInnerHTML:s}),n,a,i))},t}(I.a),c.propTypes={account:b.a.map,onFollow:M.a.func.isRequired,onBlock:M.a.func.isRequired,intl:M.a.object.isRequired},i=s))||i},849:function(e,t,o){"use strict";o.d(t,"a",function(){return _});var n,a=o(2),i=o.n(a),c=o(1),s=o.n(c),r=o(3),l=o.n(r),u=o(4),d=o.n(u),f=o(0),p=o.n(f),g=o(299),h=o(44),m=o(6),v=o(11),b=Object(m.f)({mention:{id:"account.mention",defaultMessage:"Mention @{name}"},direct:{id:"account.direct",defaultMessage:"Direct message @{name}"},edit_profile:{id:"account.edit_profile",defaultMessage:"Edit profile"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},block:{id:"account.block",defaultMessage:"Block @{name}"},follow:{id:"account.follow",defaultMessage:"Follow"},report:{id:"account.report",defaultMessage:"Report @{name}"},share:{id:"account.share",defaultMessage:"Share @{name}'s profile"},media:{id:"account.media",defaultMessage:"Media"},hideReblogs:{id:"account.hide_reblogs",defaultMessage:"Hide boosts from @{name}"},showReblogs:{id:"account.show_reblogs",defaultMessage:"Show boosts from @{name}"}}),_=Object(m.g)(n=function(e){function t(){var o,n,a;s()(this,t);for(var i=arguments.length,c=Array(i),r=0;r<i;r++)c[r]=arguments[r];return o=n=l()(this,e.call.apply(e,[this].concat(c))),n.handleShare=function(){navigator.share({url:n.props.account.get("url")})},a=o,l()(n,a)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=[],a="";return n.push({text:o.formatMessage(b.mention,{name:t.get("username")}),action:this.props.onMention}),n.push({text:o.formatMessage(b.direct,{name:t.get("username")}),action:this.props.onDirect}),"share"in navigator&&n.push({text:o.formatMessage(b.share,{name:t.get("username")}),action:this.handleShare}),n.push(null),t.get("id")===v.g?n.push({text:o.formatMessage(b.edit_profile),href:"/settings/profile"}):(t.getIn(["relationship","following"])&&(t.getIn(["relationship","showing_reblogs"])?n.push({text:o.formatMessage(b.hideReblogs,{name:t.get("username")}),action:this.props.onReblogToggle}):n.push({text:o.formatMessage(b.showReblogs,{name:t.get("username")}),action:this.props.onReblogToggle})),t.getIn(["relationship","blocking"])?n.push({text:o.formatMessage(b.unblock,{name:t.get("username")}),action:this.props.onBlock}):n.push({text:o.formatMessage(b.block,{name:t.get("username")}),action:this.props.onBlock}),n.push({text:o.formatMessage(b.report,{name:t.get("username")}),action:this.props.onReport})),t.get("acct")!==t.get("username")&&(a=i()("div",{className:"account__disclaimer"},void 0,i()(m.b,{id:"account.disclaimer_full",defaultMessage:"Information below may reflect the user's profile incompletely."})," ",i()("a",{target:"_blank",rel:"noopener",href:t.get("url")},void 0,i()(m.b,{id:"account.view_full_profile",defaultMessage:"View full profile"}))),n.push(null)),i()("div",{},void 0,a,i()("div",{className:"account__action-bar"},void 0,i()("div",{className:"account__action-bar-dropdown"},void 0,i()(g.a,{items:n,icon:"bars",size:24,direction:"right"})),i()("div",{className:"account__action-bar-links"},void 0,i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")},void 0,i()("span",{},void 0,i()(m.b,{id:"account.posts",defaultMessage:"Toots"})),i()("strong",{},void 0,i()(m.c,{value:t.get("statuses_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/following"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.follows",defaultMessage:"Follows"})),i()("strong",{},void 0,i()(m.c,{value:t.get("following_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/followers"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.followers",defaultMessage:"Followers"})),i()("strong",{},void 0,i()(m.c,{value:t.get("followers_count")}))))))},t}(p.a.PureComponent))||n},850:function(e,t,o){"use strict";o.d(t,"a",function(){return y});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=(o.n(p),o(5)),h=o.n(g),m=o(13),v=o.n(m),b=o(6),_=o(12),M=o.n(_),w=o(301),k=o(55),y=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),n.context.router.history.push("/accounts/"+n.props.to.get("id"))),e.stopPropagation()},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.from,o=e.to,n={__html:t.get("display_name_html")};return c()("div",{className:"account__moved-note"},void 0,c()("div",{className:"account__moved-note__message"},void 0,c()("div",{className:"account__moved-note__icon-wrapper"},void 0,c()("i",{className:"fa fa-fw fa-suitcase account__moved-note__icon"})),c()(b.b,{id:"account.moved_to",defaultMessage:"{name} has moved to:",values:{name:c()("bdi",{},void 0,c()("strong",{dangerouslySetInnerHTML:n}))}})),c()("a",{href:o.get("url"),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,c()("div",{className:"detailed-status__display-avatar"},void 0,c()(w.a,{account:o,friend:t})),c()(k.a,{account:o})))},t}(M.a),n.contextTypes={router:h.a.object},n.propTypes={from:v.a.map.isRequired,to:v.a.map.isRequired},a)}}); +webpackJsonp([13],{149:function(e,t,o){"use strict";o.d(t,"a",function(){return m});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=o.n(p),h=o(6),m=(a=n=function(e){function t(){return r()(this,t),u()(this,e.apply(this,arguments))}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,o=e.visible;return c()("button",{className:"load-more",disabled:t||!o,style:{visibility:o?"visible":"hidden"},onClick:this.props.onClick},void 0,c()(h.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(g.a.PureComponent),n.defaultProps={visible:!0},a)},150:function(e,t,o){"use strict";o.d(t,"a",function(){return h});var n=o(2),a=o.n(n),i=o(1),c=o.n(i),s=o(3),r=o.n(s),l=o(4),u=o.n(l),d=o(0),f=o.n(d),p=o(10),g=o.n(p),h=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),l=0;l<i;l++)s[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(s))),n.handleClick=function(){n.props.onClick()},a=o,r()(n,a)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,o=e.type,n=e.active,i=e.columnHeaderId,c="";return t&&(c=a()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),a()("h1",{className:g()("column-header",{active:n}),id:i||null},void 0,a()("button",{onClick:this.handleClick},void 0,c,o))},t}(f.a.PureComponent)},282:function(e,t,o){"use strict";function n(e){return function(t){t({type:i,account:e}),t(Object(a.d)("MUTE"))}}t.a=n;var a=(o(14),o(22),o(15),o(26)),i="MUTES_INIT_MODAL"},283:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n=o(2),a=o.n(n),i=o(1),c=o.n(i),s=o(3),r=o.n(s),l=o(4),u=o.n(l),d=o(34),f=o.n(d),p=o(0),g=o.n(p),h=o(150),m=o(90),v=o(35),b=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),l=0;l<i;l++)s[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(s))),n.handleHeaderClick=function(){var e=n.node.querySelector(".scrollable");e&&(n._interruptScrollAnimation=Object(m.b)(e))},n.handleScroll=f()(function(){void 0!==n._interruptScrollAnimation&&n._interruptScrollAnimation()},200),n.setRef=function(e){n.node=e},a=o,r()(n,a)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(m.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,o=e.icon,n=e.children,i=e.active,c=e.hideHeadingOnMobile,s=t&&(!c||c&&!Object(v.b)(window.innerWidth)),r=s&&t.replace(/ /g,"-"),l=s&&a()(h.a,{icon:o,active:i,type:t,onClick:this.handleHeaderClick,columnHeaderId:r});return g.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":r,className:"column",onScroll:this.handleScroll},l,n)},t}(g.a.PureComponent)},286:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=o.n(p),h=o(6),m=o(5),v=o.n(m),b=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleClick=function(){window.history&&1===window.history.length?n.context.router.history.push("/"):n.context.router.history.goBack()},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(g.a.PureComponent),n.contextTypes={router:v.a.object},a)},815:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o.d(t,"default",function(){return F});var n,a,i,c,s=o(2),r=o.n(s),l=o(1),u=o.n(l),d=o(3),f=o.n(d),p=o(4),g=o.n(p),h=o(0),m=(o.n(h),o(9)),v=o(5),b=o.n(v),_=o(13),M=o.n(_),w=o(296),k=o(22),y=o(151),O=o(841),I=o(283),N=o(844),j=o(149),C=o(286),R=o(12),q=o.n(R),T=function(e,t){return{accountIds:e.getIn(["user_lists","followers",t.params.accountId,"items"]),hasMore:!!e.getIn(["user_lists","followers",t.params.accountId,"next"])}},F=(n=Object(m.connect)(T))((c=i=function(e){function t(){var o,n,a;u()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=f()(this,e.call.apply(e,[this].concat(c))),n.handleScroll=function(e){var t=e.target;t.scrollTop===t.scrollHeight-t.clientHeight&&n.props.hasMore&&n.props.dispatch(Object(k.s)(n.props.params.accountId))},n.handleLoadMore=function(e){e.preventDefault(),n.props.dispatch(Object(k.s)(n.props.params.accountId))},a=o,f()(n,a)}return g()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(k.u)(this.props.params.accountId)),this.props.dispatch(Object(k.w)(this.props.params.accountId))},t.prototype.componentWillReceiveProps=function(e){e.params.accountId!==this.props.params.accountId&&e.params.accountId&&(this.props.dispatch(Object(k.u)(e.params.accountId)),this.props.dispatch(Object(k.w)(e.params.accountId)))},t.prototype.render=function(){var e=this.props,t=e.accountIds,o=e.hasMore,n=null;return t?(o&&(n=r()(j.a,{onClick:this.handleLoadMore})),r()(I.a,{},void 0,r()(C.a,{}),r()(y.a,{scrollKey:"followers"},void 0,r()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,r()("div",{className:"followers"},void 0,r()(N.a,{accountId:this.props.params.accountId,hideTabs:!0}),t.map(function(e){return r()(O.a,{id:e,withNote:!1},e)}),n))))):r()(I.a,{},void 0,r()(w.a,{}))},t}(q.a),i.propTypes={params:b.a.object.isRequired,dispatch:b.a.func.isRequired,accountIds:M.a.list,hasMore:b.a.bool},a=c))||a},841:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(9)),s=o(6),r=o(66),l=o(842),u=o(22),d=o(26),f=o(282),p=o(11),g=Object(s.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var e=Object(r.c)();return function(t,o){return{account:e(t,o.id)}}},m=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:a()(s.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(g.unfollowConfirm),onConfirm:function(){return e(Object(u.D)(t.get("id")))}}):Object(u.D)(t.get("id")):Object(u.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(u.C)(t.get("id")):Object(u.q)(t.get("id")))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(u.E)(t.get("id")):Object(f.a)(t))},onMuteNotifications:function(t,o){e(Object(u.A)(t.get("id"),o))}}};t.a=Object(s.g)(Object(c.connect)(h,m)(l.a))},842:function(e,t,o){"use strict";o.d(t,"a",function(){return C});var n,a,i,c=o(2),s=o.n(c),r=o(1),l=o.n(r),u=o(3),d=o.n(u),f=o(4),p=o.n(f),g=o(0),h=(o.n(g),o(13)),m=o.n(h),v=o(5),b=o.n(v),_=o(56),M=o(55),w=o(295),k=o(23),y=o(6),O=o(12),I=o.n(O),N=o(11),j=Object(y.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),C=Object(y.g)((i=a=function(e){function t(){var o,n,a;l()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=d()(this,e.call.apply(e,[this].concat(c))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},n.handleMuteNotifications=function(){n.props.onMuteNotifications(n.props.account,!0)},n.handleUnmuteNotifications=function(){n.props.onMuteNotifications(n.props.account,!1)},a=o,d()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=e.hidden;if(!t)return s()("div",{});if(n)return s()("div",{},void 0,t.get("display_name"),t.get("username"));var a=void 0;if(t.get("id")!==N.g&&null!==t.get("relationship",null)){var i=t.getIn(["relationship","following"]),c=t.getIn(["relationship","requested"]),r=t.getIn(["relationship","blocking"]),l=t.getIn(["relationship","muting"]);if(c)a=s()(k.a,{disabled:!0,icon:"hourglass",title:o.formatMessage(j.requested)});else if(r)a=s()(k.a,{active:!0,icon:"unlock-alt",title:o.formatMessage(j.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(l){var u=void 0;u=t.getIn(["relationship","muting_notifications"])?s()(k.a,{active:!0,icon:"bell",title:o.formatMessage(j.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):s()(k.a,{active:!0,icon:"bell-slash",title:o.formatMessage(j.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),a=s()(g.Fragment,{},void 0,s()(k.a,{active:!0,icon:"volume-up",title:o.formatMessage(j.unmute,{name:t.get("username")}),onClick:this.handleMute}),u)}else t.get("moved")&&!i||(a=s()(k.a,{icon:i?"user-times":"user-plus",title:o.formatMessage(i?j.unfollow:j.follow),onClick:this.handleFollow,active:i}))}return s()("div",{className:"account"},void 0,s()("div",{className:"account__wrapper"},void 0,s()(w.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),s()("div",{className:"account__avatar-wrapper"},void 0,s()(_.a,{account:t,size:36})),s()(M.a,{account:t})),s()("div",{className:"account__relationship"},void 0,a)))},t}(I.a),a.propTypes={account:m.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},n=i))||n},843:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(6)),s=function(){return a()("div",{className:"regeneration-indicator missing-indicator"},void 0,a()("div",{},void 0,a()("div",{className:"regeneration-indicator__label"},void 0,a()(c.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),a()(c.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=s},844:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(9)),s=o(66),r=o(845),l=o(22),u=o(18),d=o(282),f=o(26),p=o(6),g=o(11),h=Object(p.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),m=function(){var e=Object(s.c)();return function(t,o){var n=o.accountId;return{account:e(t,n)}}},v=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?g.j?Object(f.d)("CONFIRM",{message:a()(p.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(h.unfollowConfirm),onConfirm:function(){return e(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(f.d)("CONFIRM",{message:a()(p.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(h.blockConfirm),onConfirm:function(){return e(Object(l.q)(t.get("id")))}}))},onMention:function(t,o){e(Object(u.R)(t,o))},onDirect:function(t,o){e(Object(u.N)(t,o))},onReblogToggle:function(t){e(t.getIn(["relationship","showing_reblogs"])?Object(l.z)(t.get("id"),!1):Object(l.z)(t.get("id"),!0))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(d.a)(t))}}};t.a=Object(p.g)(Object(c.connect)(m,v)(r.a))},845:function(e,t,o){"use strict";o.d(t,"a",function(){return N});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=(o.n(p),o(13)),h=o.n(g),m=o(5),v=o.n(m),b=o(846),_=o(847),M=o(843),w=o(12),k=o.n(w),y=o(848),O=o(6),I=o(44),N=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMention=function(){n.props.onMention(n.props.account,n.context.router.history)},n.handleDirect=function(){n.props.onDirect(n.props.account,n.context.router.history)},n.handleReblogToggle=function(){n.props.onReblogToggle(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.hideTabs;return null===t?c()(M.a,{}):c()("div",{className:"account-timeline__header"},void 0,t.get("moved")&&c()(y.a,{from:t,to:t.get("moved")}),c()(b.a,{account:t,onFollow:this.handleFollow,onBlock:this.handleBlock}),c()(_.a,{account:t,onBlock:this.handleBlock,onMention:this.handleMention,onDirect:this.handleDirect,onReblogToggle:this.handleReblogToggle,onMute:this.handleMute}),!o&&c()("div",{className:"account__section-headline"},void 0,c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")},void 0,c()(O.b,{id:"account.posts",defaultMessage:"Toots"})),c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/with_replies"},void 0,c()(O.b,{id:"account.posts_with_replies",defaultMessage:"Toots and replies"})),c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/media"},void 0,c()(O.b,{id:"account.media",defaultMessage:"Media"}))))},t}(k.a),n.propTypes={account:h.a.map,onFollow:v.a.func.isRequired,onBlock:v.a.func.isRequired,onMention:v.a.func.isRequired,onDirect:v.a.func.isRequired,onReblogToggle:v.a.func.isRequired,onMute:v.a.func.isRequired,hideTabs:v.a.bool},n.contextTypes={router:v.a.object},a)},846:function(e,t,o){"use strict";o.d(t,"a",function(){return T});var n,a,i,c,s,r=o(2),l=o.n(r),u=o(1),d=o.n(u),f=o(3),p=o.n(f),g=o(4),h=o.n(g),m=o(0),v=(o.n(m),o(13)),b=o.n(v),_=o(5),M=o.n(_),w=o(6),k=o(23),y=o(27),O=(o.n(y),o(12)),I=o.n(O),N=o(11),j=o(10),C=o.n(j),R=Object(w.f)({unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},follow:{id:"account.follow",defaultMessage:"Follow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval. Click to cancel follow request"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"}}),q=(a=n=function(e){function t(){var o,n,a;d()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=p()(this,e.call.apply(e,[this].concat(c))),n.state={isHovered:!1},n.handleMouseOver=function(){n.state.isHovered||n.setState({isHovered:!0})},n.handleMouseOut=function(){n.state.isHovered&&n.setState({isHovered:!1})},a=o,p()(n,a)}return h()(t,e),t.prototype.render=function(){var e=this.props.account,t=this.state.isHovered;return l()("a",{href:e.get("url"),className:"account__header__avatar",role:"presentation",target:"_blank",rel:"noopener",style:{backgroundImage:"url("+(N.a||t?e.get("avatar"):e.get("avatar_static"))+")"},onMouseOver:this.handleMouseOver,onMouseOut:this.handleMouseOut,onFocus:this.handleMouseOver,onBlur:this.handleMouseOut},void 0,l()("span",{style:{display:"none"}},void 0,e.get("acct")))},t}(I.a),n.propTypes={account:b.a.map.isRequired},a),T=Object(w.g)((s=c=function(e){function t(){return d()(this,t),p()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl;if(!t)return null;var n="",a="",i="",c="";N.g!==t.get("id")&&t.getIn(["relationship","followed_by"])?n=l()("span",{className:"account--follows-info"},void 0,l()(w.b,{id:"account.follows_you",defaultMessage:"Follows you"})):N.g!==t.get("id")&&t.getIn(["relationship","blocking"])&&(n=l()("span",{className:"account--follows-info"},void 0,l()(w.b,{id:"account.blocked",defaultMessage:"Blocked"}))),N.g!==t.get("id")&&t.getIn(["relationship","muting"])?a=l()("span",{className:"account--muting-info"},void 0,l()(w.b,{id:"account.muted",defaultMessage:"Muted"})):N.g!==t.get("id")&&t.getIn(["relationship","domain_blocking"])&&(a=l()("span",{className:"account--muting-info"},void 0,l()(w.b,{id:"account.domain_blocked",defaultMessage:"Domain hidden"}))),N.g!==t.get("id")&&(t.getIn(["relationship","requested"])?i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,active:!0,icon:"hourglass",title:o.formatMessage(R.requested),onClick:this.props.onFollow})):t.getIn(["relationship","blocking"])?t.getIn(["relationship","blocking"])&&(i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:"unlock-alt",title:o.formatMessage(R.unblock,{name:t.get("username")}),onClick:this.props.onBlock}))):i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:t.getIn(["relationship","following"])?"user-times":"user-plus",active:t.getIn(["relationship","following"]),title:o.formatMessage(t.getIn(["relationship","following"])?R.unfollow:R.follow),onClick:this.props.onFollow}))),t.get("moved")&&!t.getIn(["relationship","following"])&&(i=""),t.get("locked")&&(c=l()("i",{className:"fa fa-lock"}));var s={__html:t.get("note_emojified")},r={__html:t.get("display_name_html")};return l()("div",{className:C()("account__header",{inactive:!!t.get("moved")}),style:{backgroundImage:"url("+t.get("header")+")"}},void 0,l()("div",{},void 0,l()(q,{account:t}),l()("span",{className:"account__header__display-name",dangerouslySetInnerHTML:r}),l()("span",{className:"account__header__username"},void 0,"@",t.get("acct")," ",c),l()("div",{className:"account__header__content",dangerouslySetInnerHTML:s}),n,a,i))},t}(I.a),c.propTypes={account:b.a.map,onFollow:M.a.func.isRequired,onBlock:M.a.func.isRequired,intl:M.a.object.isRequired},i=s))||i},847:function(e,t,o){"use strict";o.d(t,"a",function(){return _});var n,a=o(2),i=o.n(a),c=o(1),s=o.n(c),r=o(3),l=o.n(r),u=o(4),d=o.n(u),f=o(0),p=o.n(f),g=o(299),h=o(44),m=o(6),v=o(11),b=Object(m.f)({mention:{id:"account.mention",defaultMessage:"Mention @{name}"},direct:{id:"account.direct",defaultMessage:"Direct message @{name}"},edit_profile:{id:"account.edit_profile",defaultMessage:"Edit profile"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},block:{id:"account.block",defaultMessage:"Block @{name}"},follow:{id:"account.follow",defaultMessage:"Follow"},report:{id:"account.report",defaultMessage:"Report @{name}"},share:{id:"account.share",defaultMessage:"Share @{name}'s profile"},media:{id:"account.media",defaultMessage:"Media"},hideReblogs:{id:"account.hide_reblogs",defaultMessage:"Hide boosts from @{name}"},showReblogs:{id:"account.show_reblogs",defaultMessage:"Show boosts from @{name}"}}),_=Object(m.g)(n=function(e){function t(){var o,n,a;s()(this,t);for(var i=arguments.length,c=Array(i),r=0;r<i;r++)c[r]=arguments[r];return o=n=l()(this,e.call.apply(e,[this].concat(c))),n.handleShare=function(){navigator.share({url:n.props.account.get("url")})},a=o,l()(n,a)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=[],a="";return n.push({text:o.formatMessage(b.mention,{name:t.get("username")}),action:this.props.onMention}),n.push({text:o.formatMessage(b.direct,{name:t.get("username")}),action:this.props.onDirect}),"share"in navigator&&n.push({text:o.formatMessage(b.share,{name:t.get("username")}),action:this.handleShare}),n.push(null),t.get("id")===v.g?n.push({text:o.formatMessage(b.edit_profile),href:"/settings/profile"}):(t.getIn(["relationship","following"])&&(t.getIn(["relationship","showing_reblogs"])?n.push({text:o.formatMessage(b.hideReblogs,{name:t.get("username")}),action:this.props.onReblogToggle}):n.push({text:o.formatMessage(b.showReblogs,{name:t.get("username")}),action:this.props.onReblogToggle})),t.getIn(["relationship","blocking"])?n.push({text:o.formatMessage(b.unblock,{name:t.get("username")}),action:this.props.onBlock}):n.push({text:o.formatMessage(b.block,{name:t.get("username")}),action:this.props.onBlock}),n.push({text:o.formatMessage(b.report,{name:t.get("username")}),action:this.props.onReport})),t.get("acct")!==t.get("username")&&(a=i()("div",{className:"account__disclaimer"},void 0,i()(m.b,{id:"account.disclaimer_full",defaultMessage:"Information below may reflect the user's profile incompletely."})," ",i()("a",{target:"_blank",rel:"noopener",href:t.get("url")},void 0,i()(m.b,{id:"account.view_full_profile",defaultMessage:"View full profile"}))),n.push(null)),i()("div",{},void 0,a,i()("div",{className:"account__action-bar"},void 0,i()("div",{className:"account__action-bar-dropdown"},void 0,i()(g.a,{items:n,icon:"bars",size:24,direction:"right"})),i()("div",{className:"account__action-bar-links"},void 0,i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")},void 0,i()("span",{},void 0,i()(m.b,{id:"account.posts",defaultMessage:"Toots"})),i()("strong",{},void 0,i()(m.c,{value:t.get("statuses_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/following"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.follows",defaultMessage:"Follows"})),i()("strong",{},void 0,i()(m.c,{value:t.get("following_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/followers"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.followers",defaultMessage:"Followers"})),i()("strong",{},void 0,i()(m.c,{value:t.get("followers_count")}))))))},t}(p.a.PureComponent))||n},848:function(e,t,o){"use strict";o.d(t,"a",function(){return y});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=(o.n(p),o(5)),h=o.n(g),m=o(13),v=o.n(m),b=o(6),_=o(12),M=o.n(_),w=o(301),k=o(55),y=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),n.context.router.history.push("/accounts/"+n.props.to.get("id"))),e.stopPropagation()},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.from,o=e.to,n={__html:t.get("display_name_html")};return c()("div",{className:"account__moved-note"},void 0,c()("div",{className:"account__moved-note__message"},void 0,c()("div",{className:"account__moved-note__icon-wrapper"},void 0,c()("i",{className:"fa fa-fw fa-suitcase account__moved-note__icon"})),c()(b.b,{id:"account.moved_to",defaultMessage:"{name} has moved to:",values:{name:c()("bdi",{},void 0,c()("strong",{dangerouslySetInnerHTML:n}))}})),c()("a",{href:o.get("url"),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,c()("div",{className:"detailed-status__display-avatar"},void 0,c()(w.a,{account:o,friend:t})),c()(k.a,{account:o})))},t}(M.a),n.contextTypes={router:h.a.object},n.propTypes={from:v.a.map.isRequired,to:v.a.map.isRequired},a)}}); //# sourceMappingURL=followers.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/followers.js.map b/priv/static/packs/features/followers.js.map index c53d55f23..38c3d4491 100644 --- a/priv/static/packs/features/followers.js.map +++ b/priv/static/packs/features/followers.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/followers.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/followers/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/account_timeline/containers/header_container.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/action_bar.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_temp2","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","contextTypes","object","816","defineProperty","value","Followers","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9__actions_accounts__","__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_11__containers_account_container__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__","__WEBPACK_IMPORTED_MODULE_14__components_load_more__","__WEBPACK_IMPORTED_MODULE_15__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default","mapStateToProps","state","accountIds","getIn","params","accountId","hasMore","_ImmutablePureCompone","e","_e$target","target","scrollHeight","clientHeight","handleLoadMore","preventDefault","componentWillMount","componentWillReceiveProps","nextProps","loadMore","scrollKey","hideTabs","map","withNote","propTypes","isRequired","func","list","bool","843","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","messages","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","intl","onFollow","message","values","name","get","confirm","formatMessage","onConfirm","onBlock","onMute","onMuteNotifications","notifications","844","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","title","hidingNotificationsButton","href","to","size","845","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","846","__WEBPACK_IMPORTED_MODULE_3__selectors__","__WEBPACK_IMPORTED_MODULE_4__components_header__","__WEBPACK_IMPORTED_MODULE_5__actions_accounts__","__WEBPACK_IMPORTED_MODULE_6__actions_compose__","__WEBPACK_IMPORTED_MODULE_7__actions_mutes__","__WEBPACK_IMPORTED_MODULE_8__actions_reports__","__WEBPACK_IMPORTED_MODULE_9__actions_modal__","__WEBPACK_IMPORTED_MODULE_10_react_intl__","__WEBPACK_IMPORTED_MODULE_11__initial_state__","blockConfirm","_ref2","onMention","onDirect","onReblogToggle","onReport","847","Header","__WEBPACK_IMPORTED_MODULE_7__account_components_header__","__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__","__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_11__moved_note__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","handleMention","handleDirect","handleReport","handleReblogToggle","from","exact","848","_class3","_temp3","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","Avatar","isHovered","handleMouseOver","setState","handleMouseOut","rel","backgroundImage","onMouseOver","onMouseOut","onFocus","onBlur","display","_ImmutablePureCompone2","info","mutingInfo","actionBtn","lockedIcon","content","__html","displayNameHtml","inactive","dangerouslySetInnerHTML","849","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_router_dom__","__WEBPACK_IMPORTED_MODULE_8__initial_state__","mention","direct","edit_profile","block","report","share","media","hideReblogs","showReblogs","handleShare","navigator","url","menu","extraInfo","text","action","items","direction","850","MovedNote","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__","__WEBPACK_IMPORTED_MODULE_10__components_display_name__","handleAccountClick","button","stopPropagation","friend"],"mappings":"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","file":"features/followers.js","sourcesContent":["webpackJsonp([11],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 816:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Followers; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_account_container__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__ = __webpack_require__(846);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n accountIds: state.getIn(['user_lists', 'followers', props.params.accountId, 'items']),\n hasMore: !!state.getIn(['user_lists', 'followers', props.params.accountId, 'next'])\n };\n};\n\nvar Followers = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Followers, _ImmutablePureCompone);\n\n function Followers() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Followers);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n\n if (scrollTop === scrollHeight - clientHeight && _this.props.hasMore) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"s\" /* expandFollowers */])(_this.props.params.accountId));\n }\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"s\" /* expandFollowers */])(_this.props.params.accountId));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Followers.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"u\" /* fetchAccount */])(this.props.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"w\" /* fetchFollowers */])(this.props.params.accountId));\n };\n\n Followers.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"u\" /* fetchAccount */])(nextProps.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"w\" /* fetchFollowers */])(nextProps.params.accountId));\n }\n };\n\n Followers.prototype.render = function render() {\n var _props = this.props,\n accountIds = _props.accountIds,\n hasMore = _props.hasMore;\n\n\n var loadMore = null;\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n if (hasMore) {\n loadMore = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__components_load_more__[\"a\" /* default */], {\n onClick: this.handleLoadMore\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__[\"a\" /* default */], {\n accountId: this.props.params.accountId,\n hideTabs: true\n }), accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_account_container__[\"a\" /* default */], {\n id: id,\n withNote: false\n }, id);\n }), loadMore))));\n };\n\n return Followers;\n}(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n hasMore: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 846:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_header__ = __webpack_require__(847);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_3__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId;\n return {\n account: getAccount(state, accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var intl = _ref2.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onDirect: function onDirect(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"N\" /* directCompose */])(account, router));\n },\n onReblogToggle: function onReblogToggle(account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), false));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), true));\n }\n },\n onReport: function onReport(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_reports__[\"k\" /* initReport */])(account));\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_4__components_header__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 847:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__account_components_header__ = __webpack_require__(848);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__ = __webpack_require__(849);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__moved_note__ = __webpack_require__(850);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar Header = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone);\n\n function Header() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMention = function () {\n _this.props.onMention(_this.props.account, _this.context.router.history);\n }, _this.handleDirect = function () {\n _this.props.onDirect(_this.props.account, _this.context.router.history);\n }, _this.handleReport = function () {\n _this.props.onReport(_this.props.account);\n }, _this.handleReblogToggle = function () {\n _this.props.onReblogToggle(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n hideTabs = _props.hideTabs;\n\n\n if (account === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__[\"a\" /* default */], {});\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-timeline__header'\n }, void 0, account.get('moved') && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__moved_note__[\"a\" /* default */], {\n from: account,\n to: account.get('moved')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__account_components_header__[\"a\" /* default */], {\n account: account,\n onFollow: this.handleFollow,\n onBlock: this.handleBlock\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__[\"a\" /* default */], {\n account: account,\n onBlock: this.handleBlock,\n onMention: this.handleMention,\n onDirect: this.handleDirect,\n onReblogToggle: this.handleReblogToggle,\n onReport: this.handleReport,\n onMute: this.handleMute\n }), !hideTabs && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__section-headline'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/with_replies'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts_with_replies',\n defaultMessage: 'Toots and replies'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/media'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.media',\n defaultMessage: 'Media'\n }))));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDirect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReblogToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReport: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n hideTabs: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 848:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval. Click to cancel follow request'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n }\n});\n\nvar Avatar = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Avatar, _ImmutablePureCompone);\n\n function Avatar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Avatar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n isHovered: false\n }, _this.handleMouseOver = function () {\n if (_this.state.isHovered) return;\n _this.setState({ isHovered: true });\n }, _this.handleMouseOut = function () {\n if (!_this.state.isHovered) return;\n _this.setState({ isHovered: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Avatar.prototype.render = function render() {\n var account = this.props.account;\n var isHovered = this.state.isHovered;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: account.get('url'),\n className: 'account__header__avatar',\n role: 'presentation',\n target: '_blank',\n rel: 'noopener',\n style: { backgroundImage: 'url(' + (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"a\" /* autoPlayGif */] || isHovered ? account.get('avatar') : account.get('avatar_static')) + ')' },\n onMouseOver: this.handleMouseOver,\n onMouseOut: this.handleMouseOut,\n onFocus: this.handleMouseOver,\n onBlur: this.handleMouseOut\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, account.get('acct')));\n };\n\n return Avatar;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\nvar Header = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone2);\n\n function Header() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.apply(this, arguments));\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n if (!account) {\n return null;\n }\n\n var info = '';\n var mutingInfo = '';\n var actionBtn = '';\n var lockedIcon = '';\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows_you',\n defaultMessage: 'Follows you'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.blocked',\n defaultMessage: 'Blocked'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.muted',\n defaultMessage: 'Muted'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.domain_blocked',\n defaultMessage: 'Domain hidden'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n active: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested),\n onClick: this.props.onFollow\n }));\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus',\n active: account.getIn(['relationship', 'following']),\n title: intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow),\n onClick: this.props.onFollow\n }));\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.props.onBlock\n }));\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n });\n }\n\n var content = { __html: account.get('note_emojified') };\n var displayNameHtml = { __html: account.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('account__header', { inactive: !!account.get('moved') }),\n style: { backgroundImage: 'url(' + account.get('header') + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Avatar, {\n account: account\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__display-name',\n dangerouslySetInnerHTML: displayNameHtml\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__username'\n }, void 0, '@', account.get('acct'), ' ', lockedIcon), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n }), info, mutingInfo, actionBtn));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class3.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp3)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 849:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n mention: {\n 'id': 'account.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n direct: {\n 'id': 'account.direct',\n 'defaultMessage': 'Direct message @{name}'\n },\n edit_profile: {\n 'id': 'account.edit_profile',\n 'defaultMessage': 'Edit profile'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n block: {\n 'id': 'account.block',\n 'defaultMessage': 'Block @{name}'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n report: {\n 'id': 'account.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'account.share',\n 'defaultMessage': 'Share @{name}\\'s profile'\n },\n media: {\n 'id': 'account.media',\n 'defaultMessage': 'Media'\n },\n hideReblogs: {\n 'id': 'account.hide_reblogs',\n 'defaultMessage': 'Hide boosts from @{name}'\n },\n showReblogs: {\n 'id': 'account.show_reblogs',\n 'defaultMessage': 'Show boosts from @{name}'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleShare = function () {\n navigator.share({\n url: _this.props.account.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n var menu = [];\n var extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"g\" /* me */]) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__disclaimer'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.disclaimer_full',\n defaultMessage: 'Information below may reflect the user\\'s profile incompletely.'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n target: '_blank',\n rel: 'noopener',\n href: account.get('url')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.view_full_profile',\n defaultMessage: 'View full profile'\n })));\n\n menu.push(null);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, extraInfo, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n items: menu,\n icon: 'bars',\n size: 24,\n direction: 'right'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('statuses_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows',\n defaultMessage: 'Follows'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('following_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.followers',\n defaultMessage: 'Followers'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('followers_count')\n }))))));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 850:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MovedNote; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_display_name__ = __webpack_require__(55);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\nvar MovedNote = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MovedNote, _ImmutablePureCompone);\n\n function MovedNote() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MovedNote);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.to.get('id'));\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MovedNote.prototype.render = function render() {\n var _props = this.props,\n from = _props.from,\n to = _props.to;\n\n var displayNameHtml = { __html: from.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-suitcase account__moved-note__icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.moved_to',\n defaultMessage: '{name} has moved to:',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n dangerouslySetInnerHTML: displayNameHtml\n })) }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: to.get('url'),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__[\"a\" /* default */], {\n account: to,\n friend: from\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_display_name__[\"a\" /* default */], {\n account: to\n })));\n };\n\n return MovedNote;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n from: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n to: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/followers.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport {\n fetchAccount,\n fetchFollowers,\n expandFollowers,\n} from '../../actions/accounts';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport AccountContainer from '../../containers/account_container';\nimport Column from '../ui/components/column';\nimport HeaderContainer from '../account_timeline/containers/header_container';\nimport LoadMore from '../../components/load_more';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, props) => ({\n accountIds: state.getIn(['user_lists', 'followers', props.params.accountId, 'items']),\n hasMore: !!state.getIn(['user_lists', 'followers', props.params.accountId, 'next']),\n});\n\n@connect(mapStateToProps)\nexport default class Followers extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n hasMore: PropTypes.bool,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchAccount(this.props.params.accountId));\n this.props.dispatch(fetchFollowers(this.props.params.accountId));\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(fetchFollowers(nextProps.params.accountId));\n }\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n\n if (scrollTop === scrollHeight - clientHeight && this.props.hasMore) {\n this.props.dispatch(expandFollowers(this.props.params.accountId));\n }\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.dispatch(expandFollowers(this.props.params.accountId));\n }\n\n render () {\n const { accountIds, hasMore } = this.props;\n\n let loadMore = null;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n if (hasMore) {\n loadMore = <LoadMore onClick={this.handleLoadMore} />;\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='followers'>\n <div className='scrollable' onScroll={this.handleScroll}>\n <div className='followers'>\n <HeaderContainer accountId={this.props.params.accountId} hideTabs />\n {accountIds.map(id => <AccountContainer key={id} id={id} withNote={false} />)}\n {loadMore}\n </div>\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/followers/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport Header from '../components/header';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n unmuteAccount,\n} from '../../../actions/accounts';\nimport {\n mentionCompose,\n directCompose,\n} from '../../../actions/compose';\nimport { initMuteModal } from '../../../actions/mutes';\nimport { initReport } from '../../../actions/reports';\nimport { openModal } from '../../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { unfollowModal } from '../../../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId }) => ({\n account: getAccount(state, accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onDirect (account, router) {\n dispatch(directCompose(account, router));\n },\n\n onReblogToggle (account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(followAccount(account.get('id'), false));\n } else {\n dispatch(followAccount(account.get('id'), true));\n }\n },\n\n onReport (account) {\n dispatch(initReport(account));\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n }\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Header));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/containers/header_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport InnerHeader from '../../account/components/header';\nimport ActionBar from '../../account/components/action_bar';\nimport MissingIndicator from '../../../components/missing_indicator';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport MovedNote from './moved_note';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n hideTabs: PropTypes.bool,\n };\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMention = () => {\n this.props.onMention(this.props.account, this.context.router.history);\n }\n\n handleDirect = () => {\n this.props.onDirect(this.props.account, this.context.router.history);\n }\n\n handleReport = () => {\n this.props.onReport(this.props.account);\n }\n\n handleReblogToggle = () => {\n this.props.onReblogToggle(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n render () {\n const { account, hideTabs } = this.props;\n\n if (account === null) {\n return <MissingIndicator />;\n }\n\n return (\n <div className='account-timeline__header'>\n {account.get('moved') && <MovedNote from={account} to={account.get('moved')} />}\n\n <InnerHeader\n account={account}\n onFollow={this.handleFollow}\n onBlock={this.handleBlock}\n />\n\n <ActionBar\n account={account}\n onBlock={this.handleBlock}\n onMention={this.handleMention}\n onDirect={this.handleDirect}\n onReblogToggle={this.handleReblogToggle}\n onReport={this.handleReport}\n onMute={this.handleMute}\n />\n\n {!hideTabs && (\n <div className='account__section-headline'>\n <NavLink exact to={`/accounts/${account.get('id')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>\n </div>\n )}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { autoPlayGif, me } from '../../../initial_state';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval. Click to cancel follow request' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n});\n\nclass Avatar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n isHovered: false,\n };\n\n handleMouseOver = () => {\n if (this.state.isHovered) return;\n this.setState({ isHovered: true });\n }\n\n handleMouseOut = () => {\n if (!this.state.isHovered) return;\n this.setState({ isHovered: false });\n }\n\n render () {\n const { account } = this.props;\n const { isHovered } = this.state;\n\n return (\n <a\n href={account.get('url')}\n className='account__header__avatar'\n role='presentation'\n target='_blank'\n rel='noopener'\n style={{ backgroundImage: `url(${autoPlayGif || isHovered ? account.get('avatar') : account.get('avatar_static')})` }}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onFocus={this.handleMouseOver}\n onBlur={this.handleMouseOut}\n >\n <span style={{ display: 'none' }}>{account.get('acct')}</span>\n </a>\n );\n }\n\n}\n\n@injectIntl\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { account, intl } = this.props;\n\n if (!account) {\n return null;\n }\n\n let info = '';\n let mutingInfo = '';\n let actionBtn = '';\n let lockedIcon = '';\n\n if (me !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.follows_you' defaultMessage='Follows you' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.blocked' defaultMessage='Blocked' /></span>;\n }\n\n if (me !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.muted' defaultMessage='Muted' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.domain_blocked' defaultMessage='Domain hidden' /></span>;\n }\n\n if (me !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} active icon='hourglass' title={intl.formatMessage(messages.requested)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon={account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus'} active={account.getIn(['relationship', 'following'])} title={intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.props.onBlock} />\n </div>\n );\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = <i className='fa fa-lock' />;\n }\n\n const content = { __html: account.get('note_emojified') };\n const displayNameHtml = { __html: account.get('display_name_html') };\n\n return (\n <div className={classNames('account__header', { inactive: !!account.get('moved') })} style={{ backgroundImage: `url(${account.get('header')})` }}>\n <div>\n <Avatar account={account} />\n\n <span className='account__header__display-name' dangerouslySetInnerHTML={displayNameHtml} />\n <span className='account__header__username'>@{account.get('acct')} {lockedIcon}</span>\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n\n {info}\n {mutingInfo}\n {actionBtn}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { Link } from 'react-router-dom';\nimport { defineMessages, injectIntl, FormattedMessage, FormattedNumber } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n mention: { id: 'account.mention', defaultMessage: 'Mention @{name}' },\n direct: { id: 'account.direct', defaultMessage: 'Direct message @{name}' },\n edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n block: { id: 'account.block', defaultMessage: 'Block @{name}' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n report: { id: 'account.report', defaultMessage: 'Report @{name}' },\n share: { id: 'account.share', defaultMessage: 'Share @{name}\\'s profile' },\n media: { id: 'account.media', defaultMessage: 'Media' },\n hideReblogs: { id: 'account.hide_reblogs', defaultMessage: 'Hide boosts from @{name}' },\n showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleShare = () => {\n navigator.share({\n url: this.props.account.get('url'),\n });\n }\n\n render () {\n const { account, intl } = this.props;\n\n let menu = [];\n let extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === me) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = (\n <div className='account__disclaimer'>\n <FormattedMessage\n id='account.disclaimer_full'\n defaultMessage=\"Information below may reflect the user's profile incompletely.\"\n />\n {' '}\n <a target='_blank' rel='noopener' href={account.get('url')}>\n <FormattedMessage id='account.view_full_profile' defaultMessage='View full profile' />\n </a>\n </div>\n );\n\n menu.push(null);\n }\n\n return (\n <div>\n {extraInfo}\n\n <div className='account__action-bar'>\n <div className='account__action-bar-dropdown'>\n <DropdownMenuContainer items={menu} icon='bars' size={24} direction='right' />\n </div>\n\n <div className='account__action-bar-links'>\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}`}>\n <span><FormattedMessage id='account.posts' defaultMessage='Toots' /></span>\n <strong><FormattedNumber value={account.get('statuses_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/following`}>\n <span><FormattedMessage id='account.follows' defaultMessage='Follows' /></span>\n <strong><FormattedNumber value={account.get('following_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/followers`}>\n <span><FormattedMessage id='account.followers' defaultMessage='Followers' /></span>\n <strong><FormattedNumber value={account.get('followers_count')} /></strong>\n </Link>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/action_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport AvatarOverlay from '../../../components/avatar_overlay';\nimport DisplayName from '../../../components/display_name';\n\nexport default class MovedNote extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n from: ImmutablePropTypes.map.isRequired,\n to: ImmutablePropTypes.map.isRequired,\n };\n\n handleAccountClick = e => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.to.get('id')}`);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { from, to } = this.props;\n const displayNameHtml = { __html: from.get('display_name_html') };\n\n return (\n <div className='account__moved-note'>\n <div className='account__moved-note__message'>\n <div className='account__moved-note__icon-wrapper'><i className='fa fa-fw fa-suitcase account__moved-note__icon' /></div>\n <FormattedMessage id='account.moved_to' defaultMessage='{name} has moved to:' values={{ name: <bdi><strong dangerouslySetInnerHTML={displayNameHtml} /></bdi> }} />\n </div>\n\n <a href={to.get('url')} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><AvatarOverlay account={to} friend={from} /></div>\n <DisplayName account={to} />\n </a>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/followers.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/followers/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/account_timeline/containers/header_container.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/action_bar.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_temp2","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","contextTypes","object","815","defineProperty","value","Followers","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9__actions_accounts__","__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_11__containers_account_container__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__","__WEBPACK_IMPORTED_MODULE_14__components_load_more__","__WEBPACK_IMPORTED_MODULE_15__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default","mapStateToProps","state","accountIds","getIn","params","accountId","hasMore","_ImmutablePureCompone","e","_e$target","target","scrollHeight","clientHeight","handleLoadMore","preventDefault","componentWillMount","componentWillReceiveProps","nextProps","loadMore","scrollKey","hideTabs","map","withNote","propTypes","isRequired","func","list","bool","841","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","messages","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","intl","onFollow","message","values","name","get","confirm","formatMessage","onConfirm","onBlock","onMute","onMuteNotifications","notifications","842","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","title","hidingNotificationsButton","href","to","size","843","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","844","__WEBPACK_IMPORTED_MODULE_3__selectors__","__WEBPACK_IMPORTED_MODULE_4__components_header__","__WEBPACK_IMPORTED_MODULE_5__actions_accounts__","__WEBPACK_IMPORTED_MODULE_6__actions_compose__","__WEBPACK_IMPORTED_MODULE_7__actions_mutes__","__WEBPACK_IMPORTED_MODULE_8__actions_modal__","__WEBPACK_IMPORTED_MODULE_9_react_intl__","__WEBPACK_IMPORTED_MODULE_10__initial_state__","blockConfirm","_ref2","onMention","onDirect","onReblogToggle","845","Header","__WEBPACK_IMPORTED_MODULE_7__account_components_header__","__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__","__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_11__moved_note__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","handleMention","handleDirect","handleReblogToggle","from","exact","846","_class3","_temp3","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_11__initial_state__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","Avatar","isHovered","handleMouseOver","setState","handleMouseOut","rel","backgroundImage","onMouseOver","onMouseOut","onFocus","onBlur","display","_ImmutablePureCompone2","info","mutingInfo","actionBtn","lockedIcon","content","__html","displayNameHtml","inactive","dangerouslySetInnerHTML","847","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_router_dom__","__WEBPACK_IMPORTED_MODULE_8__initial_state__","mention","direct","edit_profile","block","report","share","media","hideReblogs","showReblogs","handleShare","navigator","url","menu","extraInfo","text","action","onReport","items","direction","848","MovedNote","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__","__WEBPACK_IMPORTED_MODULE_10__components_display_name__","handleAccountClick","button","stopPropagation","friend"],"mappings":"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","file":"features/followers.js","sourcesContent":["webpackJsonp([13],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 815:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Followers; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_account_container__ = __webpack_require__(841);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n accountIds: state.getIn(['user_lists', 'followers', props.params.accountId, 'items']),\n hasMore: !!state.getIn(['user_lists', 'followers', props.params.accountId, 'next'])\n };\n};\n\nvar Followers = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Followers, _ImmutablePureCompone);\n\n function Followers() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Followers);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n\n if (scrollTop === scrollHeight - clientHeight && _this.props.hasMore) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"s\" /* expandFollowers */])(_this.props.params.accountId));\n }\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"s\" /* expandFollowers */])(_this.props.params.accountId));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Followers.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"u\" /* fetchAccount */])(this.props.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"w\" /* fetchFollowers */])(this.props.params.accountId));\n };\n\n Followers.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"u\" /* fetchAccount */])(nextProps.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"w\" /* fetchFollowers */])(nextProps.params.accountId));\n }\n };\n\n Followers.prototype.render = function render() {\n var _props = this.props,\n accountIds = _props.accountIds,\n hasMore = _props.hasMore;\n\n\n var loadMore = null;\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n if (hasMore) {\n loadMore = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__components_load_more__[\"a\" /* default */], {\n onClick: this.handleLoadMore\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__[\"a\" /* default */], {\n accountId: this.props.params.accountId,\n hideTabs: true\n }), accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_account_container__[\"a\" /* default */], {\n id: id,\n withNote: false\n }, id);\n }), loadMore))));\n };\n\n return Followers;\n}(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n hasMore: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class);\n\n\n/***/ }),\n\n/***/ 841:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(842);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 842:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_header__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_3__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId;\n return {\n account: getAccount(state, accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var intl = _ref2.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_10__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onDirect: function onDirect(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"N\" /* directCompose */])(account, router));\n },\n onReblogToggle: function onReblogToggle(account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), false));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), true));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_4__components_header__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__account_components_header__ = __webpack_require__(846);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__ = __webpack_require__(847);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__moved_note__ = __webpack_require__(848);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar Header = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone);\n\n function Header() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMention = function () {\n _this.props.onMention(_this.props.account, _this.context.router.history);\n }, _this.handleDirect = function () {\n _this.props.onDirect(_this.props.account, _this.context.router.history);\n }, _this.handleReblogToggle = function () {\n _this.props.onReblogToggle(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n hideTabs = _props.hideTabs;\n\n\n if (account === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__[\"a\" /* default */], {});\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-timeline__header'\n }, void 0, account.get('moved') && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__moved_note__[\"a\" /* default */], {\n from: account,\n to: account.get('moved')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__account_components_header__[\"a\" /* default */], {\n account: account,\n onFollow: this.handleFollow,\n onBlock: this.handleBlock\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__[\"a\" /* default */], {\n account: account,\n onBlock: this.handleBlock,\n onMention: this.handleMention,\n onDirect: this.handleDirect,\n onReblogToggle: this.handleReblogToggle,\n onMute: this.handleMute\n }), !hideTabs && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__section-headline'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/with_replies'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts_with_replies',\n defaultMessage: 'Toots and replies'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/media'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.media',\n defaultMessage: 'Media'\n }))));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDirect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReblogToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n hideTabs: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 846:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval. Click to cancel follow request'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n }\n});\n\nvar Avatar = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Avatar, _ImmutablePureCompone);\n\n function Avatar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Avatar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n isHovered: false\n }, _this.handleMouseOver = function () {\n if (_this.state.isHovered) return;\n _this.setState({ isHovered: true });\n }, _this.handleMouseOut = function () {\n if (!_this.state.isHovered) return;\n _this.setState({ isHovered: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Avatar.prototype.render = function render() {\n var account = this.props.account;\n var isHovered = this.state.isHovered;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: account.get('url'),\n className: 'account__header__avatar',\n role: 'presentation',\n target: '_blank',\n rel: 'noopener',\n style: { backgroundImage: 'url(' + (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"a\" /* autoPlayGif */] || isHovered ? account.get('avatar') : account.get('avatar_static')) + ')' },\n onMouseOver: this.handleMouseOver,\n onMouseOut: this.handleMouseOut,\n onFocus: this.handleMouseOver,\n onBlur: this.handleMouseOut\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, account.get('acct')));\n };\n\n return Avatar;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\nvar Header = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone2);\n\n function Header() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.apply(this, arguments));\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n if (!account) {\n return null;\n }\n\n var info = '';\n var mutingInfo = '';\n var actionBtn = '';\n var lockedIcon = '';\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows_you',\n defaultMessage: 'Follows you'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.blocked',\n defaultMessage: 'Blocked'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.muted',\n defaultMessage: 'Muted'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.domain_blocked',\n defaultMessage: 'Domain hidden'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n active: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested),\n onClick: this.props.onFollow\n }));\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus',\n active: account.getIn(['relationship', 'following']),\n title: intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow),\n onClick: this.props.onFollow\n }));\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.props.onBlock\n }));\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n });\n }\n\n var content = { __html: account.get('note_emojified') };\n var displayNameHtml = { __html: account.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('account__header', { inactive: !!account.get('moved') }),\n style: { backgroundImage: 'url(' + account.get('header') + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Avatar, {\n account: account\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__display-name',\n dangerouslySetInnerHTML: displayNameHtml\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__username'\n }, void 0, '@', account.get('acct'), ' ', lockedIcon), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n }), info, mutingInfo, actionBtn));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class3.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp3)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 847:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n mention: {\n 'id': 'account.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n direct: {\n 'id': 'account.direct',\n 'defaultMessage': 'Direct message @{name}'\n },\n edit_profile: {\n 'id': 'account.edit_profile',\n 'defaultMessage': 'Edit profile'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n block: {\n 'id': 'account.block',\n 'defaultMessage': 'Block @{name}'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n report: {\n 'id': 'account.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'account.share',\n 'defaultMessage': 'Share @{name}\\'s profile'\n },\n media: {\n 'id': 'account.media',\n 'defaultMessage': 'Media'\n },\n hideReblogs: {\n 'id': 'account.hide_reblogs',\n 'defaultMessage': 'Hide boosts from @{name}'\n },\n showReblogs: {\n 'id': 'account.show_reblogs',\n 'defaultMessage': 'Show boosts from @{name}'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleShare = function () {\n navigator.share({\n url: _this.props.account.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n var menu = [];\n var extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"g\" /* me */]) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__disclaimer'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.disclaimer_full',\n defaultMessage: 'Information below may reflect the user\\'s profile incompletely.'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n target: '_blank',\n rel: 'noopener',\n href: account.get('url')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.view_full_profile',\n defaultMessage: 'View full profile'\n })));\n\n menu.push(null);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, extraInfo, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n items: menu,\n icon: 'bars',\n size: 24,\n direction: 'right'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('statuses_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows',\n defaultMessage: 'Follows'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('following_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.followers',\n defaultMessage: 'Followers'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('followers_count')\n }))))));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 848:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MovedNote; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_display_name__ = __webpack_require__(55);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\nvar MovedNote = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MovedNote, _ImmutablePureCompone);\n\n function MovedNote() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MovedNote);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.to.get('id'));\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MovedNote.prototype.render = function render() {\n var _props = this.props,\n from = _props.from,\n to = _props.to;\n\n var displayNameHtml = { __html: from.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-suitcase account__moved-note__icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.moved_to',\n defaultMessage: '{name} has moved to:',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n dangerouslySetInnerHTML: displayNameHtml\n })) }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: to.get('url'),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__[\"a\" /* default */], {\n account: to,\n friend: from\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_display_name__[\"a\" /* default */], {\n account: to\n })));\n };\n\n return MovedNote;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n from: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n to: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/followers.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport {\n fetchAccount,\n fetchFollowers,\n expandFollowers,\n} from '../../actions/accounts';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport AccountContainer from '../../containers/account_container';\nimport Column from '../ui/components/column';\nimport HeaderContainer from '../account_timeline/containers/header_container';\nimport LoadMore from '../../components/load_more';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, props) => ({\n accountIds: state.getIn(['user_lists', 'followers', props.params.accountId, 'items']),\n hasMore: !!state.getIn(['user_lists', 'followers', props.params.accountId, 'next']),\n});\n\n@connect(mapStateToProps)\nexport default class Followers extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n hasMore: PropTypes.bool,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchAccount(this.props.params.accountId));\n this.props.dispatch(fetchFollowers(this.props.params.accountId));\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(fetchFollowers(nextProps.params.accountId));\n }\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n\n if (scrollTop === scrollHeight - clientHeight && this.props.hasMore) {\n this.props.dispatch(expandFollowers(this.props.params.accountId));\n }\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.dispatch(expandFollowers(this.props.params.accountId));\n }\n\n render () {\n const { accountIds, hasMore } = this.props;\n\n let loadMore = null;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n if (hasMore) {\n loadMore = <LoadMore onClick={this.handleLoadMore} />;\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='followers'>\n <div className='scrollable' onScroll={this.handleScroll}>\n <div className='followers'>\n <HeaderContainer accountId={this.props.params.accountId} hideTabs />\n {accountIds.map(id => <AccountContainer key={id} id={id} withNote={false} />)}\n {loadMore}\n </div>\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/followers/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport Header from '../components/header';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n unmuteAccount,\n} from '../../../actions/accounts';\nimport {\n mentionCompose,\n directCompose,\n} from '../../../actions/compose';\nimport { initMuteModal } from '../../../actions/mutes';\nimport { openModal } from '../../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { unfollowModal } from '../../../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId }) => ({\n account: getAccount(state, accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onDirect (account, router) {\n dispatch(directCompose(account, router));\n },\n\n onReblogToggle (account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(followAccount(account.get('id'), false));\n } else {\n dispatch(followAccount(account.get('id'), true));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n }\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Header));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/containers/header_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport InnerHeader from '../../account/components/header';\nimport ActionBar from '../../account/components/action_bar';\nimport MissingIndicator from '../../../components/missing_indicator';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport MovedNote from './moved_note';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n hideTabs: PropTypes.bool,\n };\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMention = () => {\n this.props.onMention(this.props.account, this.context.router.history);\n }\n\n handleDirect = () => {\n this.props.onDirect(this.props.account, this.context.router.history);\n }\n\n handleReblogToggle = () => {\n this.props.onReblogToggle(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n render () {\n const { account, hideTabs } = this.props;\n\n if (account === null) {\n return <MissingIndicator />;\n }\n\n return (\n <div className='account-timeline__header'>\n {account.get('moved') && <MovedNote from={account} to={account.get('moved')} />}\n\n <InnerHeader\n account={account}\n onFollow={this.handleFollow}\n onBlock={this.handleBlock}\n />\n\n <ActionBar\n account={account}\n onBlock={this.handleBlock}\n onMention={this.handleMention}\n onDirect={this.handleDirect}\n onReblogToggle={this.handleReblogToggle}\n onMute={this.handleMute}\n />\n\n {!hideTabs && (\n <div className='account__section-headline'>\n <NavLink exact to={`/accounts/${account.get('id')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>\n </div>\n )}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { autoPlayGif, me } from '../../../initial_state';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval. Click to cancel follow request' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n});\n\nclass Avatar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n isHovered: false,\n };\n\n handleMouseOver = () => {\n if (this.state.isHovered) return;\n this.setState({ isHovered: true });\n }\n\n handleMouseOut = () => {\n if (!this.state.isHovered) return;\n this.setState({ isHovered: false });\n }\n\n render () {\n const { account } = this.props;\n const { isHovered } = this.state;\n\n return (\n <a\n href={account.get('url')}\n className='account__header__avatar'\n role='presentation'\n target='_blank'\n rel='noopener'\n style={{ backgroundImage: `url(${autoPlayGif || isHovered ? account.get('avatar') : account.get('avatar_static')})` }}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onFocus={this.handleMouseOver}\n onBlur={this.handleMouseOut}\n >\n <span style={{ display: 'none' }}>{account.get('acct')}</span>\n </a>\n );\n }\n\n}\n\n@injectIntl\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { account, intl } = this.props;\n\n if (!account) {\n return null;\n }\n\n let info = '';\n let mutingInfo = '';\n let actionBtn = '';\n let lockedIcon = '';\n\n if (me !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.follows_you' defaultMessage='Follows you' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.blocked' defaultMessage='Blocked' /></span>;\n }\n\n if (me !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.muted' defaultMessage='Muted' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.domain_blocked' defaultMessage='Domain hidden' /></span>;\n }\n\n if (me !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} active icon='hourglass' title={intl.formatMessage(messages.requested)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon={account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus'} active={account.getIn(['relationship', 'following'])} title={intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.props.onBlock} />\n </div>\n );\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = <i className='fa fa-lock' />;\n }\n\n const content = { __html: account.get('note_emojified') };\n const displayNameHtml = { __html: account.get('display_name_html') };\n\n return (\n <div className={classNames('account__header', { inactive: !!account.get('moved') })} style={{ backgroundImage: `url(${account.get('header')})` }}>\n <div>\n <Avatar account={account} />\n\n <span className='account__header__display-name' dangerouslySetInnerHTML={displayNameHtml} />\n <span className='account__header__username'>@{account.get('acct')} {lockedIcon}</span>\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n\n {info}\n {mutingInfo}\n {actionBtn}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { Link } from 'react-router-dom';\nimport { defineMessages, injectIntl, FormattedMessage, FormattedNumber } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n mention: { id: 'account.mention', defaultMessage: 'Mention @{name}' },\n direct: { id: 'account.direct', defaultMessage: 'Direct message @{name}' },\n edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n block: { id: 'account.block', defaultMessage: 'Block @{name}' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n report: { id: 'account.report', defaultMessage: 'Report @{name}' },\n share: { id: 'account.share', defaultMessage: 'Share @{name}\\'s profile' },\n media: { id: 'account.media', defaultMessage: 'Media' },\n hideReblogs: { id: 'account.hide_reblogs', defaultMessage: 'Hide boosts from @{name}' },\n showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleShare = () => {\n navigator.share({\n url: this.props.account.get('url'),\n });\n }\n\n render () {\n const { account, intl } = this.props;\n\n let menu = [];\n let extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === me) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = (\n <div className='account__disclaimer'>\n <FormattedMessage\n id='account.disclaimer_full'\n defaultMessage=\"Information below may reflect the user's profile incompletely.\"\n />\n {' '}\n <a target='_blank' rel='noopener' href={account.get('url')}>\n <FormattedMessage id='account.view_full_profile' defaultMessage='View full profile' />\n </a>\n </div>\n );\n\n menu.push(null);\n }\n\n return (\n <div>\n {extraInfo}\n\n <div className='account__action-bar'>\n <div className='account__action-bar-dropdown'>\n <DropdownMenuContainer items={menu} icon='bars' size={24} direction='right' />\n </div>\n\n <div className='account__action-bar-links'>\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}`}>\n <span><FormattedMessage id='account.posts' defaultMessage='Toots' /></span>\n <strong><FormattedNumber value={account.get('statuses_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/following`}>\n <span><FormattedMessage id='account.follows' defaultMessage='Follows' /></span>\n <strong><FormattedNumber value={account.get('following_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/followers`}>\n <span><FormattedMessage id='account.followers' defaultMessage='Followers' /></span>\n <strong><FormattedNumber value={account.get('followers_count')} /></strong>\n </Link>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/action_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport AvatarOverlay from '../../../components/avatar_overlay';\nimport DisplayName from '../../../components/display_name';\n\nexport default class MovedNote extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n from: ImmutablePropTypes.map.isRequired,\n to: ImmutablePropTypes.map.isRequired,\n };\n\n handleAccountClick = e => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.to.get('id')}`);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { from, to } = this.props;\n const displayNameHtml = { __html: from.get('display_name_html') };\n\n return (\n <div className='account__moved-note'>\n <div className='account__moved-note__message'>\n <div className='account__moved-note__icon-wrapper'><i className='fa fa-fw fa-suitcase account__moved-note__icon' /></div>\n <FormattedMessage id='account.moved_to' defaultMessage='{name} has moved to:' values={{ name: <bdi><strong dangerouslySetInnerHTML={displayNameHtml} /></bdi> }} />\n </div>\n\n <a href={to.get('url')} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><AvatarOverlay account={to} friend={from} /></div>\n <DisplayName account={to} />\n </a>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/following.js b/priv/static/packs/features/following.js index 835bfefa7..48d3f981d 100644 --- a/priv/static/packs/features/following.js +++ b/priv/static/packs/features/following.js @@ -1,2 +1,2 @@ -webpackJsonp([10],{149:function(e,t,o){"use strict";o.d(t,"a",function(){return m});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=o.n(p),h=o(6),m=(a=n=function(e){function t(){return r()(this,t),u()(this,e.apply(this,arguments))}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,o=e.visible;return c()("button",{className:"load-more",disabled:t||!o,style:{visibility:o?"visible":"hidden"},onClick:this.props.onClick},void 0,c()(h.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(g.a.PureComponent),n.defaultProps={visible:!0},a)},150:function(e,t,o){"use strict";o.d(t,"a",function(){return h});var n=o(2),a=o.n(n),i=o(1),c=o.n(i),s=o(3),r=o.n(s),l=o(4),u=o.n(l),d=o(0),f=o.n(d),p=o(10),g=o.n(p),h=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),l=0;l<i;l++)s[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(s))),n.handleClick=function(){n.props.onClick()},a=o,r()(n,a)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,o=e.type,n=e.active,i=e.columnHeaderId,c="";return t&&(c=a()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),a()("h1",{className:g()("column-header",{active:n}),id:i||null},void 0,a()("button",{onClick:this.handleClick},void 0,c,o))},t}(f.a.PureComponent)},283:function(e,t,o){"use strict";function n(e){return function(t){t({type:i,account:e}),t(Object(a.d)("MUTE"))}}t.a=n;var a=(o(14),o(22),o(15),o(26)),i="MUTES_INIT_MODAL"},284:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n=o(2),a=o.n(n),i=o(1),c=o.n(i),s=o(3),r=o.n(s),l=o(4),u=o.n(l),d=o(34),f=o.n(d),p=o(0),g=o.n(p),h=o(150),m=o(90),v=o(35),b=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),l=0;l<i;l++)s[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(s))),n.handleHeaderClick=function(){var e=n.node.querySelector(".scrollable");e&&(n._interruptScrollAnimation=Object(m.b)(e))},n.handleScroll=f()(function(){void 0!==n._interruptScrollAnimation&&n._interruptScrollAnimation()},200),n.setRef=function(e){n.node=e},a=o,r()(n,a)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(m.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,o=e.icon,n=e.children,i=e.active,c=e.hideHeadingOnMobile,s=t&&(!c||c&&!Object(v.b)(window.innerWidth)),r=s&&t.replace(/ /g,"-"),l=s&&a()(h.a,{icon:o,active:i,type:t,onClick:this.handleHeaderClick,columnHeaderId:r});return g.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":r,className:"column",onScroll:this.handleScroll},l,n)},t}(g.a.PureComponent)},286:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=o.n(p),h=o(6),m=o(5),v=o.n(m),b=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleClick=function(){window.history&&1===window.history.length?n.context.router.history.push("/"):n.context.router.history.goBack()},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(g.a.PureComponent),n.contextTypes={router:v.a.object},a)},817:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o.d(t,"default",function(){return F});var n,a,i,c,s=o(2),r=o.n(s),l=o(1),u=o.n(l),d=o(3),f=o.n(d),p=o(4),g=o.n(p),h=o(0),m=(o.n(h),o(9)),v=o(5),b=o.n(v),_=o(13),M=o.n(_),w=o(296),k=o(22),y=o(152),O=o(843),I=o(284),N=o(846),j=o(149),R=o(286),C=o(12),q=o.n(C),T=function(e,t){return{accountIds:e.getIn(["user_lists","following",t.params.accountId,"items"]),hasMore:!!e.getIn(["user_lists","following",t.params.accountId,"next"])}},F=(n=Object(m.connect)(T))((c=i=function(e){function t(){var o,n,a;u()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=f()(this,e.call.apply(e,[this].concat(c))),n.handleScroll=function(e){var t=e.target;t.scrollTop===t.scrollHeight-t.clientHeight&&n.props.hasMore&&n.props.dispatch(Object(k.t)(n.props.params.accountId))},n.handleLoadMore=function(e){e.preventDefault(),n.props.dispatch(Object(k.t)(n.props.params.accountId))},a=o,f()(n,a)}return g()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(k.u)(this.props.params.accountId)),this.props.dispatch(Object(k.x)(this.props.params.accountId))},t.prototype.componentWillReceiveProps=function(e){e.params.accountId!==this.props.params.accountId&&e.params.accountId&&(this.props.dispatch(Object(k.u)(e.params.accountId)),this.props.dispatch(Object(k.x)(e.params.accountId)))},t.prototype.render=function(){var e=this.props,t=e.accountIds,o=e.hasMore,n=null;return t?(o&&(n=r()(j.a,{onClick:this.handleLoadMore})),r()(I.a,{},void 0,r()(R.a,{}),r()(y.a,{scrollKey:"following"},void 0,r()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,r()("div",{className:"following"},void 0,r()(N.a,{accountId:this.props.params.accountId,hideTabs:!0}),t.map(function(e){return r()(O.a,{id:e,withNote:!1},e)}),n))))):r()(I.a,{},void 0,r()(w.a,{}))},t}(q.a),i.propTypes={params:b.a.object.isRequired,dispatch:b.a.func.isRequired,accountIds:M.a.list,hasMore:b.a.bool},a=c))||a},843:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(9)),s=o(6),r=o(66),l=o(844),u=o(22),d=o(26),f=o(283),p=o(11),g=Object(s.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var e=Object(r.c)();return function(t,o){return{account:e(t,o.id)}}},m=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:a()(s.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(g.unfollowConfirm),onConfirm:function(){return e(Object(u.D)(t.get("id")))}}):Object(u.D)(t.get("id")):Object(u.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(u.C)(t.get("id")):Object(u.q)(t.get("id")))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(u.E)(t.get("id")):Object(f.a)(t))},onMuteNotifications:function(t,o){e(Object(u.A)(t.get("id"),o))}}};t.a=Object(s.g)(Object(c.connect)(h,m)(l.a))},844:function(e,t,o){"use strict";o.d(t,"a",function(){return R});var n,a,i,c=o(2),s=o.n(c),r=o(1),l=o.n(r),u=o(3),d=o.n(u),f=o(4),p=o.n(f),g=o(0),h=(o.n(g),o(13)),m=o.n(h),v=o(5),b=o.n(v),_=o(56),M=o(55),w=o(295),k=o(23),y=o(6),O=o(12),I=o.n(O),N=o(11),j=Object(y.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),R=Object(y.g)((i=a=function(e){function t(){var o,n,a;l()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=d()(this,e.call.apply(e,[this].concat(c))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},n.handleMuteNotifications=function(){n.props.onMuteNotifications(n.props.account,!0)},n.handleUnmuteNotifications=function(){n.props.onMuteNotifications(n.props.account,!1)},a=o,d()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=e.hidden;if(!t)return s()("div",{});if(n)return s()("div",{},void 0,t.get("display_name"),t.get("username"));var a=void 0;if(t.get("id")!==N.g&&null!==t.get("relationship",null)){var i=t.getIn(["relationship","following"]),c=t.getIn(["relationship","requested"]),r=t.getIn(["relationship","blocking"]),l=t.getIn(["relationship","muting"]);if(c)a=s()(k.a,{disabled:!0,icon:"hourglass",title:o.formatMessage(j.requested)});else if(r)a=s()(k.a,{active:!0,icon:"unlock-alt",title:o.formatMessage(j.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(l){var u=void 0;u=t.getIn(["relationship","muting_notifications"])?s()(k.a,{active:!0,icon:"bell",title:o.formatMessage(j.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):s()(k.a,{active:!0,icon:"bell-slash",title:o.formatMessage(j.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),a=s()(g.Fragment,{},void 0,s()(k.a,{active:!0,icon:"volume-up",title:o.formatMessage(j.unmute,{name:t.get("username")}),onClick:this.handleMute}),u)}else t.get("moved")&&!i||(a=s()(k.a,{icon:i?"user-times":"user-plus",title:o.formatMessage(i?j.unfollow:j.follow),onClick:this.handleFollow,active:i}))}return s()("div",{className:"account"},void 0,s()("div",{className:"account__wrapper"},void 0,s()(w.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),s()("div",{className:"account__avatar-wrapper"},void 0,s()(_.a,{account:t,size:36})),s()(M.a,{account:t})),s()("div",{className:"account__relationship"},void 0,a)))},t}(I.a),a.propTypes={account:m.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},n=i))||n},845:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(6)),s=function(){return a()("div",{className:"regeneration-indicator missing-indicator"},void 0,a()("div",{},void 0,a()("div",{className:"regeneration-indicator__label"},void 0,a()(c.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),a()(c.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=s},846:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(9)),s=o(66),r=o(847),l=o(22),u=o(18),d=o(283),f=o(151),p=o(26),g=o(6),h=o(11),m=Object(g.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),v=function(){var e=Object(s.c)();return function(t,o){var n=o.accountId;return{account:e(t,n)}}},b=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?h.j?Object(p.d)("CONFIRM",{message:a()(g.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(m.unfollowConfirm),onConfirm:function(){return e(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(p.d)("CONFIRM",{message:a()(g.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(l.q)(t.get("id")))}}))},onMention:function(t,o){e(Object(u.R)(t,o))},onDirect:function(t,o){e(Object(u.N)(t,o))},onReblogToggle:function(t){e(t.getIn(["relationship","showing_reblogs"])?Object(l.z)(t.get("id"),!1):Object(l.z)(t.get("id"),!0))},onReport:function(t){e(Object(f.k)(t))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(d.a)(t))}}};t.a=Object(g.g)(Object(c.connect)(v,b)(r.a))},847:function(e,t,o){"use strict";o.d(t,"a",function(){return N});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=(o.n(p),o(13)),h=o.n(g),m=o(5),v=o.n(m),b=o(848),_=o(849),M=o(845),w=o(12),k=o.n(w),y=o(850),O=o(6),I=o(44),N=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMention=function(){n.props.onMention(n.props.account,n.context.router.history)},n.handleDirect=function(){n.props.onDirect(n.props.account,n.context.router.history)},n.handleReport=function(){n.props.onReport(n.props.account)},n.handleReblogToggle=function(){n.props.onReblogToggle(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.hideTabs;return null===t?c()(M.a,{}):c()("div",{className:"account-timeline__header"},void 0,t.get("moved")&&c()(y.a,{from:t,to:t.get("moved")}),c()(b.a,{account:t,onFollow:this.handleFollow,onBlock:this.handleBlock}),c()(_.a,{account:t,onBlock:this.handleBlock,onMention:this.handleMention,onDirect:this.handleDirect,onReblogToggle:this.handleReblogToggle,onReport:this.handleReport,onMute:this.handleMute}),!o&&c()("div",{className:"account__section-headline"},void 0,c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")},void 0,c()(O.b,{id:"account.posts",defaultMessage:"Toots"})),c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/with_replies"},void 0,c()(O.b,{id:"account.posts_with_replies",defaultMessage:"Toots and replies"})),c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/media"},void 0,c()(O.b,{id:"account.media",defaultMessage:"Media"}))))},t}(k.a),n.propTypes={account:h.a.map,onFollow:v.a.func.isRequired,onBlock:v.a.func.isRequired,onMention:v.a.func.isRequired,onDirect:v.a.func.isRequired,onReblogToggle:v.a.func.isRequired,onReport:v.a.func.isRequired,onMute:v.a.func.isRequired,hideTabs:v.a.bool},n.contextTypes={router:v.a.object},a)},848:function(e,t,o){"use strict";o.d(t,"a",function(){return T});var n,a,i,c,s,r=o(2),l=o.n(r),u=o(1),d=o.n(u),f=o(3),p=o.n(f),g=o(4),h=o.n(g),m=o(0),v=(o.n(m),o(13)),b=o.n(v),_=o(5),M=o.n(_),w=o(6),k=o(23),y=o(27),O=(o.n(y),o(12)),I=o.n(O),N=o(11),j=o(10),R=o.n(j),C=Object(w.f)({unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},follow:{id:"account.follow",defaultMessage:"Follow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval. Click to cancel follow request"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"}}),q=(a=n=function(e){function t(){var o,n,a;d()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=p()(this,e.call.apply(e,[this].concat(c))),n.state={isHovered:!1},n.handleMouseOver=function(){n.state.isHovered||n.setState({isHovered:!0})},n.handleMouseOut=function(){n.state.isHovered&&n.setState({isHovered:!1})},a=o,p()(n,a)}return h()(t,e),t.prototype.render=function(){var e=this.props.account,t=this.state.isHovered;return l()("a",{href:e.get("url"),className:"account__header__avatar",role:"presentation",target:"_blank",rel:"noopener",style:{backgroundImage:"url("+(N.a||t?e.get("avatar"):e.get("avatar_static"))+")"},onMouseOver:this.handleMouseOver,onMouseOut:this.handleMouseOut,onFocus:this.handleMouseOver,onBlur:this.handleMouseOut},void 0,l()("span",{style:{display:"none"}},void 0,e.get("acct")))},t}(I.a),n.propTypes={account:b.a.map.isRequired},a),T=Object(w.g)((s=c=function(e){function t(){return d()(this,t),p()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl;if(!t)return null;var n="",a="",i="",c="";N.g!==t.get("id")&&t.getIn(["relationship","followed_by"])?n=l()("span",{className:"account--follows-info"},void 0,l()(w.b,{id:"account.follows_you",defaultMessage:"Follows you"})):N.g!==t.get("id")&&t.getIn(["relationship","blocking"])&&(n=l()("span",{className:"account--follows-info"},void 0,l()(w.b,{id:"account.blocked",defaultMessage:"Blocked"}))),N.g!==t.get("id")&&t.getIn(["relationship","muting"])?a=l()("span",{className:"account--muting-info"},void 0,l()(w.b,{id:"account.muted",defaultMessage:"Muted"})):N.g!==t.get("id")&&t.getIn(["relationship","domain_blocking"])&&(a=l()("span",{className:"account--muting-info"},void 0,l()(w.b,{id:"account.domain_blocked",defaultMessage:"Domain hidden"}))),N.g!==t.get("id")&&(t.getIn(["relationship","requested"])?i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,active:!0,icon:"hourglass",title:o.formatMessage(C.requested),onClick:this.props.onFollow})):t.getIn(["relationship","blocking"])?t.getIn(["relationship","blocking"])&&(i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:"unlock-alt",title:o.formatMessage(C.unblock,{name:t.get("username")}),onClick:this.props.onBlock}))):i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:t.getIn(["relationship","following"])?"user-times":"user-plus",active:t.getIn(["relationship","following"]),title:o.formatMessage(t.getIn(["relationship","following"])?C.unfollow:C.follow),onClick:this.props.onFollow}))),t.get("moved")&&!t.getIn(["relationship","following"])&&(i=""),t.get("locked")&&(c=l()("i",{className:"fa fa-lock"}));var s={__html:t.get("note_emojified")},r={__html:t.get("display_name_html")};return l()("div",{className:R()("account__header",{inactive:!!t.get("moved")}),style:{backgroundImage:"url("+t.get("header")+")"}},void 0,l()("div",{},void 0,l()(q,{account:t}),l()("span",{className:"account__header__display-name",dangerouslySetInnerHTML:r}),l()("span",{className:"account__header__username"},void 0,"@",t.get("acct")," ",c),l()("div",{className:"account__header__content",dangerouslySetInnerHTML:s}),n,a,i))},t}(I.a),c.propTypes={account:b.a.map,onFollow:M.a.func.isRequired,onBlock:M.a.func.isRequired,intl:M.a.object.isRequired},i=s))||i},849:function(e,t,o){"use strict";o.d(t,"a",function(){return _});var n,a=o(2),i=o.n(a),c=o(1),s=o.n(c),r=o(3),l=o.n(r),u=o(4),d=o.n(u),f=o(0),p=o.n(f),g=o(299),h=o(44),m=o(6),v=o(11),b=Object(m.f)({mention:{id:"account.mention",defaultMessage:"Mention @{name}"},direct:{id:"account.direct",defaultMessage:"Direct message @{name}"},edit_profile:{id:"account.edit_profile",defaultMessage:"Edit profile"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},block:{id:"account.block",defaultMessage:"Block @{name}"},follow:{id:"account.follow",defaultMessage:"Follow"},report:{id:"account.report",defaultMessage:"Report @{name}"},share:{id:"account.share",defaultMessage:"Share @{name}'s profile"},media:{id:"account.media",defaultMessage:"Media"},hideReblogs:{id:"account.hide_reblogs",defaultMessage:"Hide boosts from @{name}"},showReblogs:{id:"account.show_reblogs",defaultMessage:"Show boosts from @{name}"}}),_=Object(m.g)(n=function(e){function t(){var o,n,a;s()(this,t);for(var i=arguments.length,c=Array(i),r=0;r<i;r++)c[r]=arguments[r];return o=n=l()(this,e.call.apply(e,[this].concat(c))),n.handleShare=function(){navigator.share({url:n.props.account.get("url")})},a=o,l()(n,a)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=[],a="";return n.push({text:o.formatMessage(b.mention,{name:t.get("username")}),action:this.props.onMention}),n.push({text:o.formatMessage(b.direct,{name:t.get("username")}),action:this.props.onDirect}),"share"in navigator&&n.push({text:o.formatMessage(b.share,{name:t.get("username")}),action:this.handleShare}),n.push(null),t.get("id")===v.g?n.push({text:o.formatMessage(b.edit_profile),href:"/settings/profile"}):(t.getIn(["relationship","following"])&&(t.getIn(["relationship","showing_reblogs"])?n.push({text:o.formatMessage(b.hideReblogs,{name:t.get("username")}),action:this.props.onReblogToggle}):n.push({text:o.formatMessage(b.showReblogs,{name:t.get("username")}),action:this.props.onReblogToggle})),t.getIn(["relationship","blocking"])?n.push({text:o.formatMessage(b.unblock,{name:t.get("username")}),action:this.props.onBlock}):n.push({text:o.formatMessage(b.block,{name:t.get("username")}),action:this.props.onBlock}),n.push({text:o.formatMessage(b.report,{name:t.get("username")}),action:this.props.onReport})),t.get("acct")!==t.get("username")&&(a=i()("div",{className:"account__disclaimer"},void 0,i()(m.b,{id:"account.disclaimer_full",defaultMessage:"Information below may reflect the user's profile incompletely."})," ",i()("a",{target:"_blank",rel:"noopener",href:t.get("url")},void 0,i()(m.b,{id:"account.view_full_profile",defaultMessage:"View full profile"}))),n.push(null)),i()("div",{},void 0,a,i()("div",{className:"account__action-bar"},void 0,i()("div",{className:"account__action-bar-dropdown"},void 0,i()(g.a,{items:n,icon:"bars",size:24,direction:"right"})),i()("div",{className:"account__action-bar-links"},void 0,i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")},void 0,i()("span",{},void 0,i()(m.b,{id:"account.posts",defaultMessage:"Toots"})),i()("strong",{},void 0,i()(m.c,{value:t.get("statuses_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/following"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.follows",defaultMessage:"Follows"})),i()("strong",{},void 0,i()(m.c,{value:t.get("following_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/followers"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.followers",defaultMessage:"Followers"})),i()("strong",{},void 0,i()(m.c,{value:t.get("followers_count")}))))))},t}(p.a.PureComponent))||n},850:function(e,t,o){"use strict";o.d(t,"a",function(){return y});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=(o.n(p),o(5)),h=o.n(g),m=o(13),v=o.n(m),b=o(6),_=o(12),M=o.n(_),w=o(301),k=o(55),y=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),n.context.router.history.push("/accounts/"+n.props.to.get("id"))),e.stopPropagation()},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.from,o=e.to,n={__html:t.get("display_name_html")};return c()("div",{className:"account__moved-note"},void 0,c()("div",{className:"account__moved-note__message"},void 0,c()("div",{className:"account__moved-note__icon-wrapper"},void 0,c()("i",{className:"fa fa-fw fa-suitcase account__moved-note__icon"})),c()(b.b,{id:"account.moved_to",defaultMessage:"{name} has moved to:",values:{name:c()("bdi",{},void 0,c()("strong",{dangerouslySetInnerHTML:n}))}})),c()("a",{href:o.get("url"),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,c()("div",{className:"detailed-status__display-avatar"},void 0,c()(w.a,{account:o,friend:t})),c()(k.a,{account:o})))},t}(M.a),n.contextTypes={router:h.a.object},n.propTypes={from:v.a.map.isRequired,to:v.a.map.isRequired},a)}}); +webpackJsonp([12],{149:function(e,t,o){"use strict";o.d(t,"a",function(){return m});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=o.n(p),h=o(6),m=(a=n=function(e){function t(){return r()(this,t),u()(this,e.apply(this,arguments))}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,o=e.visible;return c()("button",{className:"load-more",disabled:t||!o,style:{visibility:o?"visible":"hidden"},onClick:this.props.onClick},void 0,c()(h.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(g.a.PureComponent),n.defaultProps={visible:!0},a)},150:function(e,t,o){"use strict";o.d(t,"a",function(){return h});var n=o(2),a=o.n(n),i=o(1),c=o.n(i),s=o(3),r=o.n(s),l=o(4),u=o.n(l),d=o(0),f=o.n(d),p=o(10),g=o.n(p),h=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),l=0;l<i;l++)s[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(s))),n.handleClick=function(){n.props.onClick()},a=o,r()(n,a)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,o=e.type,n=e.active,i=e.columnHeaderId,c="";return t&&(c=a()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),a()("h1",{className:g()("column-header",{active:n}),id:i||null},void 0,a()("button",{onClick:this.handleClick},void 0,c,o))},t}(f.a.PureComponent)},282:function(e,t,o){"use strict";function n(e){return function(t){t({type:i,account:e}),t(Object(a.d)("MUTE"))}}t.a=n;var a=(o(14),o(22),o(15),o(26)),i="MUTES_INIT_MODAL"},283:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n=o(2),a=o.n(n),i=o(1),c=o.n(i),s=o(3),r=o.n(s),l=o(4),u=o.n(l),d=o(34),f=o.n(d),p=o(0),g=o.n(p),h=o(150),m=o(90),v=o(35),b=function(e){function t(){var o,n,a;c()(this,t);for(var i=arguments.length,s=Array(i),l=0;l<i;l++)s[l]=arguments[l];return o=n=r()(this,e.call.apply(e,[this].concat(s))),n.handleHeaderClick=function(){var e=n.node.querySelector(".scrollable");e&&(n._interruptScrollAnimation=Object(m.b)(e))},n.handleScroll=f()(function(){void 0!==n._interruptScrollAnimation&&n._interruptScrollAnimation()},200),n.setRef=function(e){n.node=e},a=o,r()(n,a)}return u()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(m.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,o=e.icon,n=e.children,i=e.active,c=e.hideHeadingOnMobile,s=t&&(!c||c&&!Object(v.b)(window.innerWidth)),r=s&&t.replace(/ /g,"-"),l=s&&a()(h.a,{icon:o,active:i,type:t,onClick:this.handleHeaderClick,columnHeaderId:r});return g.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":r,className:"column",onScroll:this.handleScroll},l,n)},t}(g.a.PureComponent)},286:function(e,t,o){"use strict";o.d(t,"a",function(){return b});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=o.n(p),h=o(6),m=o(5),v=o.n(m),b=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleClick=function(){window.history&&1===window.history.length?n.context.router.history.push("/"):n.context.router.history.goBack()},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(g.a.PureComponent),n.contextTypes={router:v.a.object},a)},816:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o.d(t,"default",function(){return F});var n,a,i,c,s=o(2),r=o.n(s),l=o(1),u=o.n(l),d=o(3),f=o.n(d),p=o(4),g=o.n(p),h=o(0),m=(o.n(h),o(9)),v=o(5),b=o.n(v),_=o(13),M=o.n(_),w=o(296),k=o(22),y=o(151),O=o(841),I=o(283),N=o(844),j=o(149),C=o(286),R=o(12),q=o.n(R),T=function(e,t){return{accountIds:e.getIn(["user_lists","following",t.params.accountId,"items"]),hasMore:!!e.getIn(["user_lists","following",t.params.accountId,"next"])}},F=(n=Object(m.connect)(T))((c=i=function(e){function t(){var o,n,a;u()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=f()(this,e.call.apply(e,[this].concat(c))),n.handleScroll=function(e){var t=e.target;t.scrollTop===t.scrollHeight-t.clientHeight&&n.props.hasMore&&n.props.dispatch(Object(k.t)(n.props.params.accountId))},n.handleLoadMore=function(e){e.preventDefault(),n.props.dispatch(Object(k.t)(n.props.params.accountId))},a=o,f()(n,a)}return g()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(k.u)(this.props.params.accountId)),this.props.dispatch(Object(k.x)(this.props.params.accountId))},t.prototype.componentWillReceiveProps=function(e){e.params.accountId!==this.props.params.accountId&&e.params.accountId&&(this.props.dispatch(Object(k.u)(e.params.accountId)),this.props.dispatch(Object(k.x)(e.params.accountId)))},t.prototype.render=function(){var e=this.props,t=e.accountIds,o=e.hasMore,n=null;return t?(o&&(n=r()(j.a,{onClick:this.handleLoadMore})),r()(I.a,{},void 0,r()(C.a,{}),r()(y.a,{scrollKey:"following"},void 0,r()("div",{className:"scrollable",onScroll:this.handleScroll},void 0,r()("div",{className:"following"},void 0,r()(N.a,{accountId:this.props.params.accountId,hideTabs:!0}),t.map(function(e){return r()(O.a,{id:e,withNote:!1},e)}),n))))):r()(I.a,{},void 0,r()(w.a,{}))},t}(q.a),i.propTypes={params:b.a.object.isRequired,dispatch:b.a.func.isRequired,accountIds:M.a.list,hasMore:b.a.bool},a=c))||a},841:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(9)),s=o(6),r=o(66),l=o(842),u=o(22),d=o(26),f=o(282),p=o(11),g=Object(s.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var e=Object(r.c)();return function(t,o){return{account:e(t,o.id)}}},m=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:a()(s.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(g.unfollowConfirm),onConfirm:function(){return e(Object(u.D)(t.get("id")))}}):Object(u.D)(t.get("id")):Object(u.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(u.C)(t.get("id")):Object(u.q)(t.get("id")))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(u.E)(t.get("id")):Object(f.a)(t))},onMuteNotifications:function(t,o){e(Object(u.A)(t.get("id"),o))}}};t.a=Object(s.g)(Object(c.connect)(h,m)(l.a))},842:function(e,t,o){"use strict";o.d(t,"a",function(){return C});var n,a,i,c=o(2),s=o.n(c),r=o(1),l=o.n(r),u=o(3),d=o.n(u),f=o(4),p=o.n(f),g=o(0),h=(o.n(g),o(13)),m=o.n(h),v=o(5),b=o.n(v),_=o(56),M=o(55),w=o(295),k=o(23),y=o(6),O=o(12),I=o.n(O),N=o(11),j=Object(y.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),C=Object(y.g)((i=a=function(e){function t(){var o,n,a;l()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=d()(this,e.call.apply(e,[this].concat(c))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},n.handleMuteNotifications=function(){n.props.onMuteNotifications(n.props.account,!0)},n.handleUnmuteNotifications=function(){n.props.onMuteNotifications(n.props.account,!1)},a=o,d()(n,a)}return p()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=e.hidden;if(!t)return s()("div",{});if(n)return s()("div",{},void 0,t.get("display_name"),t.get("username"));var a=void 0;if(t.get("id")!==N.g&&null!==t.get("relationship",null)){var i=t.getIn(["relationship","following"]),c=t.getIn(["relationship","requested"]),r=t.getIn(["relationship","blocking"]),l=t.getIn(["relationship","muting"]);if(c)a=s()(k.a,{disabled:!0,icon:"hourglass",title:o.formatMessage(j.requested)});else if(r)a=s()(k.a,{active:!0,icon:"unlock-alt",title:o.formatMessage(j.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(l){var u=void 0;u=t.getIn(["relationship","muting_notifications"])?s()(k.a,{active:!0,icon:"bell",title:o.formatMessage(j.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):s()(k.a,{active:!0,icon:"bell-slash",title:o.formatMessage(j.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),a=s()(g.Fragment,{},void 0,s()(k.a,{active:!0,icon:"volume-up",title:o.formatMessage(j.unmute,{name:t.get("username")}),onClick:this.handleMute}),u)}else t.get("moved")&&!i||(a=s()(k.a,{icon:i?"user-times":"user-plus",title:o.formatMessage(i?j.unfollow:j.follow),onClick:this.handleFollow,active:i}))}return s()("div",{className:"account"},void 0,s()("div",{className:"account__wrapper"},void 0,s()(w.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),s()("div",{className:"account__avatar-wrapper"},void 0,s()(_.a,{account:t,size:36})),s()(M.a,{account:t})),s()("div",{className:"account__relationship"},void 0,a)))},t}(I.a),a.propTypes={account:m.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},n=i))||n},843:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(6)),s=function(){return a()("div",{className:"regeneration-indicator missing-indicator"},void 0,a()("div",{},void 0,a()("div",{className:"regeneration-indicator__label"},void 0,a()(c.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),a()(c.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=s},844:function(e,t,o){"use strict";var n=o(2),a=o.n(n),i=o(0),c=(o.n(i),o(9)),s=o(66),r=o(845),l=o(22),u=o(18),d=o(282),f=o(26),p=o(6),g=o(11),h=Object(p.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),m=function(){var e=Object(s.c)();return function(t,o){var n=o.accountId;return{account:e(t,n)}}},v=function(e,t){var o=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?g.j?Object(f.d)("CONFIRM",{message:a()(p.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(h.unfollowConfirm),onConfirm:function(){return e(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(f.d)("CONFIRM",{message:a()(p.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:o.formatMessage(h.blockConfirm),onConfirm:function(){return e(Object(l.q)(t.get("id")))}}))},onMention:function(t,o){e(Object(u.R)(t,o))},onDirect:function(t,o){e(Object(u.N)(t,o))},onReblogToggle:function(t){e(t.getIn(["relationship","showing_reblogs"])?Object(l.z)(t.get("id"),!1):Object(l.z)(t.get("id"),!0))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(d.a)(t))}}};t.a=Object(p.g)(Object(c.connect)(m,v)(r.a))},845:function(e,t,o){"use strict";o.d(t,"a",function(){return N});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=(o.n(p),o(13)),h=o.n(g),m=o(5),v=o.n(m),b=o(846),_=o(847),M=o(843),w=o(12),k=o.n(w),y=o(848),O=o(6),I=o(44),N=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleFollow=function(){n.props.onFollow(n.props.account)},n.handleBlock=function(){n.props.onBlock(n.props.account)},n.handleMention=function(){n.props.onMention(n.props.account,n.context.router.history)},n.handleDirect=function(){n.props.onDirect(n.props.account,n.context.router.history)},n.handleReblogToggle=function(){n.props.onReblogToggle(n.props.account)},n.handleMute=function(){n.props.onMute(n.props.account)},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.hideTabs;return null===t?c()(M.a,{}):c()("div",{className:"account-timeline__header"},void 0,t.get("moved")&&c()(y.a,{from:t,to:t.get("moved")}),c()(b.a,{account:t,onFollow:this.handleFollow,onBlock:this.handleBlock}),c()(_.a,{account:t,onBlock:this.handleBlock,onMention:this.handleMention,onDirect:this.handleDirect,onReblogToggle:this.handleReblogToggle,onMute:this.handleMute}),!o&&c()("div",{className:"account__section-headline"},void 0,c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")},void 0,c()(O.b,{id:"account.posts",defaultMessage:"Toots"})),c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/with_replies"},void 0,c()(O.b,{id:"account.posts_with_replies",defaultMessage:"Toots and replies"})),c()(I.c,{exact:!0,to:"/accounts/"+t.get("id")+"/media"},void 0,c()(O.b,{id:"account.media",defaultMessage:"Media"}))))},t}(k.a),n.propTypes={account:h.a.map,onFollow:v.a.func.isRequired,onBlock:v.a.func.isRequired,onMention:v.a.func.isRequired,onDirect:v.a.func.isRequired,onReblogToggle:v.a.func.isRequired,onMute:v.a.func.isRequired,hideTabs:v.a.bool},n.contextTypes={router:v.a.object},a)},846:function(e,t,o){"use strict";o.d(t,"a",function(){return T});var n,a,i,c,s,r=o(2),l=o.n(r),u=o(1),d=o.n(u),f=o(3),p=o.n(f),g=o(4),h=o.n(g),m=o(0),v=(o.n(m),o(13)),b=o.n(v),_=o(5),M=o.n(_),w=o(6),k=o(23),y=o(27),O=(o.n(y),o(12)),I=o.n(O),N=o(11),j=o(10),C=o.n(j),R=Object(w.f)({unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},follow:{id:"account.follow",defaultMessage:"Follow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval. Click to cancel follow request"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"}}),q=(a=n=function(e){function t(){var o,n,a;d()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=p()(this,e.call.apply(e,[this].concat(c))),n.state={isHovered:!1},n.handleMouseOver=function(){n.state.isHovered||n.setState({isHovered:!0})},n.handleMouseOut=function(){n.state.isHovered&&n.setState({isHovered:!1})},a=o,p()(n,a)}return h()(t,e),t.prototype.render=function(){var e=this.props.account,t=this.state.isHovered;return l()("a",{href:e.get("url"),className:"account__header__avatar",role:"presentation",target:"_blank",rel:"noopener",style:{backgroundImage:"url("+(N.a||t?e.get("avatar"):e.get("avatar_static"))+")"},onMouseOver:this.handleMouseOver,onMouseOut:this.handleMouseOut,onFocus:this.handleMouseOver,onBlur:this.handleMouseOut},void 0,l()("span",{style:{display:"none"}},void 0,e.get("acct")))},t}(I.a),n.propTypes={account:b.a.map.isRequired},a),T=Object(w.g)((s=c=function(e){function t(){return d()(this,t),p()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl;if(!t)return null;var n="",a="",i="",c="";N.g!==t.get("id")&&t.getIn(["relationship","followed_by"])?n=l()("span",{className:"account--follows-info"},void 0,l()(w.b,{id:"account.follows_you",defaultMessage:"Follows you"})):N.g!==t.get("id")&&t.getIn(["relationship","blocking"])&&(n=l()("span",{className:"account--follows-info"},void 0,l()(w.b,{id:"account.blocked",defaultMessage:"Blocked"}))),N.g!==t.get("id")&&t.getIn(["relationship","muting"])?a=l()("span",{className:"account--muting-info"},void 0,l()(w.b,{id:"account.muted",defaultMessage:"Muted"})):N.g!==t.get("id")&&t.getIn(["relationship","domain_blocking"])&&(a=l()("span",{className:"account--muting-info"},void 0,l()(w.b,{id:"account.domain_blocked",defaultMessage:"Domain hidden"}))),N.g!==t.get("id")&&(t.getIn(["relationship","requested"])?i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,active:!0,icon:"hourglass",title:o.formatMessage(R.requested),onClick:this.props.onFollow})):t.getIn(["relationship","blocking"])?t.getIn(["relationship","blocking"])&&(i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:"unlock-alt",title:o.formatMessage(R.unblock,{name:t.get("username")}),onClick:this.props.onBlock}))):i=l()("div",{className:"account--action-button"},void 0,l()(k.a,{size:26,icon:t.getIn(["relationship","following"])?"user-times":"user-plus",active:t.getIn(["relationship","following"]),title:o.formatMessage(t.getIn(["relationship","following"])?R.unfollow:R.follow),onClick:this.props.onFollow}))),t.get("moved")&&!t.getIn(["relationship","following"])&&(i=""),t.get("locked")&&(c=l()("i",{className:"fa fa-lock"}));var s={__html:t.get("note_emojified")},r={__html:t.get("display_name_html")};return l()("div",{className:C()("account__header",{inactive:!!t.get("moved")}),style:{backgroundImage:"url("+t.get("header")+")"}},void 0,l()("div",{},void 0,l()(q,{account:t}),l()("span",{className:"account__header__display-name",dangerouslySetInnerHTML:r}),l()("span",{className:"account__header__username"},void 0,"@",t.get("acct")," ",c),l()("div",{className:"account__header__content",dangerouslySetInnerHTML:s}),n,a,i))},t}(I.a),c.propTypes={account:b.a.map,onFollow:M.a.func.isRequired,onBlock:M.a.func.isRequired,intl:M.a.object.isRequired},i=s))||i},847:function(e,t,o){"use strict";o.d(t,"a",function(){return _});var n,a=o(2),i=o.n(a),c=o(1),s=o.n(c),r=o(3),l=o.n(r),u=o(4),d=o.n(u),f=o(0),p=o.n(f),g=o(299),h=o(44),m=o(6),v=o(11),b=Object(m.f)({mention:{id:"account.mention",defaultMessage:"Mention @{name}"},direct:{id:"account.direct",defaultMessage:"Direct message @{name}"},edit_profile:{id:"account.edit_profile",defaultMessage:"Edit profile"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},block:{id:"account.block",defaultMessage:"Block @{name}"},follow:{id:"account.follow",defaultMessage:"Follow"},report:{id:"account.report",defaultMessage:"Report @{name}"},share:{id:"account.share",defaultMessage:"Share @{name}'s profile"},media:{id:"account.media",defaultMessage:"Media"},hideReblogs:{id:"account.hide_reblogs",defaultMessage:"Hide boosts from @{name}"},showReblogs:{id:"account.show_reblogs",defaultMessage:"Show boosts from @{name}"}}),_=Object(m.g)(n=function(e){function t(){var o,n,a;s()(this,t);for(var i=arguments.length,c=Array(i),r=0;r<i;r++)c[r]=arguments[r];return o=n=l()(this,e.call.apply(e,[this].concat(c))),n.handleShare=function(){navigator.share({url:n.props.account.get("url")})},a=o,l()(n,a)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,o=e.intl,n=[],a="";return n.push({text:o.formatMessage(b.mention,{name:t.get("username")}),action:this.props.onMention}),n.push({text:o.formatMessage(b.direct,{name:t.get("username")}),action:this.props.onDirect}),"share"in navigator&&n.push({text:o.formatMessage(b.share,{name:t.get("username")}),action:this.handleShare}),n.push(null),t.get("id")===v.g?n.push({text:o.formatMessage(b.edit_profile),href:"/settings/profile"}):(t.getIn(["relationship","following"])&&(t.getIn(["relationship","showing_reblogs"])?n.push({text:o.formatMessage(b.hideReblogs,{name:t.get("username")}),action:this.props.onReblogToggle}):n.push({text:o.formatMessage(b.showReblogs,{name:t.get("username")}),action:this.props.onReblogToggle})),t.getIn(["relationship","blocking"])?n.push({text:o.formatMessage(b.unblock,{name:t.get("username")}),action:this.props.onBlock}):n.push({text:o.formatMessage(b.block,{name:t.get("username")}),action:this.props.onBlock}),n.push({text:o.formatMessage(b.report,{name:t.get("username")}),action:this.props.onReport})),t.get("acct")!==t.get("username")&&(a=i()("div",{className:"account__disclaimer"},void 0,i()(m.b,{id:"account.disclaimer_full",defaultMessage:"Information below may reflect the user's profile incompletely."})," ",i()("a",{target:"_blank",rel:"noopener",href:t.get("url")},void 0,i()(m.b,{id:"account.view_full_profile",defaultMessage:"View full profile"}))),n.push(null)),i()("div",{},void 0,a,i()("div",{className:"account__action-bar"},void 0,i()("div",{className:"account__action-bar-dropdown"},void 0,i()(g.a,{items:n,icon:"bars",size:24,direction:"right"})),i()("div",{className:"account__action-bar-links"},void 0,i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")},void 0,i()("span",{},void 0,i()(m.b,{id:"account.posts",defaultMessage:"Toots"})),i()("strong",{},void 0,i()(m.c,{value:t.get("statuses_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/following"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.follows",defaultMessage:"Follows"})),i()("strong",{},void 0,i()(m.c,{value:t.get("following_count")}))),i()(h.b,{className:"account__action-bar__tab",to:"/accounts/"+t.get("id")+"/followers"},void 0,i()("span",{},void 0,i()(m.b,{id:"account.followers",defaultMessage:"Followers"})),i()("strong",{},void 0,i()(m.c,{value:t.get("followers_count")}))))))},t}(p.a.PureComponent))||n},848:function(e,t,o){"use strict";o.d(t,"a",function(){return y});var n,a,i=o(2),c=o.n(i),s=o(1),r=o.n(s),l=o(3),u=o.n(l),d=o(4),f=o.n(d),p=o(0),g=(o.n(p),o(5)),h=o.n(g),m=o(13),v=o.n(m),b=o(6),_=o(12),M=o.n(_),w=o(301),k=o(55),y=(a=n=function(e){function t(){var o,n,a;r()(this,t);for(var i=arguments.length,c=Array(i),s=0;s<i;s++)c[s]=arguments[s];return o=n=u()(this,e.call.apply(e,[this].concat(c))),n.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),n.context.router.history.push("/accounts/"+n.props.to.get("id"))),e.stopPropagation()},a=o,u()(n,a)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.from,o=e.to,n={__html:t.get("display_name_html")};return c()("div",{className:"account__moved-note"},void 0,c()("div",{className:"account__moved-note__message"},void 0,c()("div",{className:"account__moved-note__icon-wrapper"},void 0,c()("i",{className:"fa fa-fw fa-suitcase account__moved-note__icon"})),c()(b.b,{id:"account.moved_to",defaultMessage:"{name} has moved to:",values:{name:c()("bdi",{},void 0,c()("strong",{dangerouslySetInnerHTML:n}))}})),c()("a",{href:o.get("url"),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,c()("div",{className:"detailed-status__display-avatar"},void 0,c()(w.a,{account:o,friend:t})),c()(k.a,{account:o})))},t}(M.a),n.contextTypes={router:h.a.object},n.propTypes={from:v.a.map.isRequired,to:v.a.map.isRequired},a)}}); //# sourceMappingURL=following.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/following.js.map b/priv/static/packs/features/following.js.map index 52009b8a1..89f3d1582 100644 --- a/priv/static/packs/features/following.js.map +++ b/priv/static/packs/features/following.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/following.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/following/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/account_timeline/containers/header_container.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/action_bar.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_temp2","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","contextTypes","object","817","defineProperty","value","Following","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9__actions_accounts__","__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_11__containers_account_container__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__","__WEBPACK_IMPORTED_MODULE_14__components_load_more__","__WEBPACK_IMPORTED_MODULE_15__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default","mapStateToProps","state","accountIds","getIn","params","accountId","hasMore","_ImmutablePureCompone","e","_e$target","target","scrollHeight","clientHeight","handleLoadMore","preventDefault","componentWillMount","componentWillReceiveProps","nextProps","loadMore","scrollKey","hideTabs","map","withNote","propTypes","isRequired","func","list","bool","843","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","messages","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","intl","onFollow","message","values","name","get","confirm","formatMessage","onConfirm","onBlock","onMute","onMuteNotifications","notifications","844","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","title","hidingNotificationsButton","href","to","size","845","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","846","__WEBPACK_IMPORTED_MODULE_3__selectors__","__WEBPACK_IMPORTED_MODULE_4__components_header__","__WEBPACK_IMPORTED_MODULE_5__actions_accounts__","__WEBPACK_IMPORTED_MODULE_6__actions_compose__","__WEBPACK_IMPORTED_MODULE_7__actions_mutes__","__WEBPACK_IMPORTED_MODULE_8__actions_reports__","__WEBPACK_IMPORTED_MODULE_9__actions_modal__","__WEBPACK_IMPORTED_MODULE_10_react_intl__","__WEBPACK_IMPORTED_MODULE_11__initial_state__","blockConfirm","_ref2","onMention","onDirect","onReblogToggle","onReport","847","Header","__WEBPACK_IMPORTED_MODULE_7__account_components_header__","__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__","__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_11__moved_note__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","handleMention","handleDirect","handleReport","handleReblogToggle","from","exact","848","_class3","_temp3","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","Avatar","isHovered","handleMouseOver","setState","handleMouseOut","rel","backgroundImage","onMouseOver","onMouseOut","onFocus","onBlur","display","_ImmutablePureCompone2","info","mutingInfo","actionBtn","lockedIcon","content","__html","displayNameHtml","inactive","dangerouslySetInnerHTML","849","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_router_dom__","__WEBPACK_IMPORTED_MODULE_8__initial_state__","mention","direct","edit_profile","block","report","share","media","hideReblogs","showReblogs","handleShare","navigator","url","menu","extraInfo","text","action","items","direction","850","MovedNote","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__","__WEBPACK_IMPORTED_MODULE_10__components_display_name__","handleAccountClick","button","stopPropagation","friend"],"mappings":"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","file":"features/following.js","sourcesContent":["webpackJsonp([10],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Following; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_account_container__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__ = __webpack_require__(846);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n accountIds: state.getIn(['user_lists', 'following', props.params.accountId, 'items']),\n hasMore: !!state.getIn(['user_lists', 'following', props.params.accountId, 'next'])\n };\n};\n\nvar Following = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Following, _ImmutablePureCompone);\n\n function Following() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Following);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n\n if (scrollTop === scrollHeight - clientHeight && _this.props.hasMore) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"t\" /* expandFollowing */])(_this.props.params.accountId));\n }\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"t\" /* expandFollowing */])(_this.props.params.accountId));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Following.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"u\" /* fetchAccount */])(this.props.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"x\" /* fetchFollowing */])(this.props.params.accountId));\n };\n\n Following.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"u\" /* fetchAccount */])(nextProps.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"x\" /* fetchFollowing */])(nextProps.params.accountId));\n }\n };\n\n Following.prototype.render = function render() {\n var _props = this.props,\n accountIds = _props.accountIds,\n hasMore = _props.hasMore;\n\n\n var loadMore = null;\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n if (hasMore) {\n loadMore = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__components_load_more__[\"a\" /* default */], {\n onClick: this.handleLoadMore\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__[\"a\" /* default */], {\n accountId: this.props.params.accountId,\n hideTabs: true\n }), accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_account_container__[\"a\" /* default */], {\n id: id,\n withNote: false\n }, id);\n }), loadMore))));\n };\n\n return Following;\n}(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n hasMore: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 846:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_header__ = __webpack_require__(847);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_3__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId;\n return {\n account: getAccount(state, accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var intl = _ref2.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onDirect: function onDirect(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"N\" /* directCompose */])(account, router));\n },\n onReblogToggle: function onReblogToggle(account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), false));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), true));\n }\n },\n onReport: function onReport(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_reports__[\"k\" /* initReport */])(account));\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_4__components_header__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 847:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__account_components_header__ = __webpack_require__(848);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__ = __webpack_require__(849);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__moved_note__ = __webpack_require__(850);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar Header = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone);\n\n function Header() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMention = function () {\n _this.props.onMention(_this.props.account, _this.context.router.history);\n }, _this.handleDirect = function () {\n _this.props.onDirect(_this.props.account, _this.context.router.history);\n }, _this.handleReport = function () {\n _this.props.onReport(_this.props.account);\n }, _this.handleReblogToggle = function () {\n _this.props.onReblogToggle(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n hideTabs = _props.hideTabs;\n\n\n if (account === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__[\"a\" /* default */], {});\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-timeline__header'\n }, void 0, account.get('moved') && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__moved_note__[\"a\" /* default */], {\n from: account,\n to: account.get('moved')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__account_components_header__[\"a\" /* default */], {\n account: account,\n onFollow: this.handleFollow,\n onBlock: this.handleBlock\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__[\"a\" /* default */], {\n account: account,\n onBlock: this.handleBlock,\n onMention: this.handleMention,\n onDirect: this.handleDirect,\n onReblogToggle: this.handleReblogToggle,\n onReport: this.handleReport,\n onMute: this.handleMute\n }), !hideTabs && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__section-headline'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/with_replies'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts_with_replies',\n defaultMessage: 'Toots and replies'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/media'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.media',\n defaultMessage: 'Media'\n }))));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDirect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReblogToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReport: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n hideTabs: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 848:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval. Click to cancel follow request'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n }\n});\n\nvar Avatar = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Avatar, _ImmutablePureCompone);\n\n function Avatar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Avatar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n isHovered: false\n }, _this.handleMouseOver = function () {\n if (_this.state.isHovered) return;\n _this.setState({ isHovered: true });\n }, _this.handleMouseOut = function () {\n if (!_this.state.isHovered) return;\n _this.setState({ isHovered: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Avatar.prototype.render = function render() {\n var account = this.props.account;\n var isHovered = this.state.isHovered;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: account.get('url'),\n className: 'account__header__avatar',\n role: 'presentation',\n target: '_blank',\n rel: 'noopener',\n style: { backgroundImage: 'url(' + (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"a\" /* autoPlayGif */] || isHovered ? account.get('avatar') : account.get('avatar_static')) + ')' },\n onMouseOver: this.handleMouseOver,\n onMouseOut: this.handleMouseOut,\n onFocus: this.handleMouseOver,\n onBlur: this.handleMouseOut\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, account.get('acct')));\n };\n\n return Avatar;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\nvar Header = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone2);\n\n function Header() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.apply(this, arguments));\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n if (!account) {\n return null;\n }\n\n var info = '';\n var mutingInfo = '';\n var actionBtn = '';\n var lockedIcon = '';\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows_you',\n defaultMessage: 'Follows you'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.blocked',\n defaultMessage: 'Blocked'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.muted',\n defaultMessage: 'Muted'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.domain_blocked',\n defaultMessage: 'Domain hidden'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n active: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested),\n onClick: this.props.onFollow\n }));\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus',\n active: account.getIn(['relationship', 'following']),\n title: intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow),\n onClick: this.props.onFollow\n }));\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.props.onBlock\n }));\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n });\n }\n\n var content = { __html: account.get('note_emojified') };\n var displayNameHtml = { __html: account.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('account__header', { inactive: !!account.get('moved') }),\n style: { backgroundImage: 'url(' + account.get('header') + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Avatar, {\n account: account\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__display-name',\n dangerouslySetInnerHTML: displayNameHtml\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__username'\n }, void 0, '@', account.get('acct'), ' ', lockedIcon), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n }), info, mutingInfo, actionBtn));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class3.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp3)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 849:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n mention: {\n 'id': 'account.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n direct: {\n 'id': 'account.direct',\n 'defaultMessage': 'Direct message @{name}'\n },\n edit_profile: {\n 'id': 'account.edit_profile',\n 'defaultMessage': 'Edit profile'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n block: {\n 'id': 'account.block',\n 'defaultMessage': 'Block @{name}'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n report: {\n 'id': 'account.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'account.share',\n 'defaultMessage': 'Share @{name}\\'s profile'\n },\n media: {\n 'id': 'account.media',\n 'defaultMessage': 'Media'\n },\n hideReblogs: {\n 'id': 'account.hide_reblogs',\n 'defaultMessage': 'Hide boosts from @{name}'\n },\n showReblogs: {\n 'id': 'account.show_reblogs',\n 'defaultMessage': 'Show boosts from @{name}'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleShare = function () {\n navigator.share({\n url: _this.props.account.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n var menu = [];\n var extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"g\" /* me */]) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__disclaimer'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.disclaimer_full',\n defaultMessage: 'Information below may reflect the user\\'s profile incompletely.'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n target: '_blank',\n rel: 'noopener',\n href: account.get('url')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.view_full_profile',\n defaultMessage: 'View full profile'\n })));\n\n menu.push(null);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, extraInfo, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n items: menu,\n icon: 'bars',\n size: 24,\n direction: 'right'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('statuses_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows',\n defaultMessage: 'Follows'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('following_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.followers',\n defaultMessage: 'Followers'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('followers_count')\n }))))));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 850:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MovedNote; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_display_name__ = __webpack_require__(55);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\nvar MovedNote = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MovedNote, _ImmutablePureCompone);\n\n function MovedNote() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MovedNote);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.to.get('id'));\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MovedNote.prototype.render = function render() {\n var _props = this.props,\n from = _props.from,\n to = _props.to;\n\n var displayNameHtml = { __html: from.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-suitcase account__moved-note__icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.moved_to',\n defaultMessage: '{name} has moved to:',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n dangerouslySetInnerHTML: displayNameHtml\n })) }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: to.get('url'),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__[\"a\" /* default */], {\n account: to,\n friend: from\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_display_name__[\"a\" /* default */], {\n account: to\n })));\n };\n\n return MovedNote;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n from: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n to: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/following.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport {\n fetchAccount,\n fetchFollowing,\n expandFollowing,\n} from '../../actions/accounts';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport AccountContainer from '../../containers/account_container';\nimport Column from '../ui/components/column';\nimport HeaderContainer from '../account_timeline/containers/header_container';\nimport LoadMore from '../../components/load_more';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, props) => ({\n accountIds: state.getIn(['user_lists', 'following', props.params.accountId, 'items']),\n hasMore: !!state.getIn(['user_lists', 'following', props.params.accountId, 'next']),\n});\n\n@connect(mapStateToProps)\nexport default class Following extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n hasMore: PropTypes.bool,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchAccount(this.props.params.accountId));\n this.props.dispatch(fetchFollowing(this.props.params.accountId));\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(fetchFollowing(nextProps.params.accountId));\n }\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n\n if (scrollTop === scrollHeight - clientHeight && this.props.hasMore) {\n this.props.dispatch(expandFollowing(this.props.params.accountId));\n }\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.dispatch(expandFollowing(this.props.params.accountId));\n }\n\n render () {\n const { accountIds, hasMore } = this.props;\n\n let loadMore = null;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n if (hasMore) {\n loadMore = <LoadMore onClick={this.handleLoadMore} />;\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='following'>\n <div className='scrollable' onScroll={this.handleScroll}>\n <div className='following'>\n <HeaderContainer accountId={this.props.params.accountId} hideTabs />\n {accountIds.map(id => <AccountContainer key={id} id={id} withNote={false} />)}\n {loadMore}\n </div>\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/following/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport Header from '../components/header';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n unmuteAccount,\n} from '../../../actions/accounts';\nimport {\n mentionCompose,\n directCompose,\n} from '../../../actions/compose';\nimport { initMuteModal } from '../../../actions/mutes';\nimport { initReport } from '../../../actions/reports';\nimport { openModal } from '../../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { unfollowModal } from '../../../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId }) => ({\n account: getAccount(state, accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onDirect (account, router) {\n dispatch(directCompose(account, router));\n },\n\n onReblogToggle (account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(followAccount(account.get('id'), false));\n } else {\n dispatch(followAccount(account.get('id'), true));\n }\n },\n\n onReport (account) {\n dispatch(initReport(account));\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n }\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Header));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/containers/header_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport InnerHeader from '../../account/components/header';\nimport ActionBar from '../../account/components/action_bar';\nimport MissingIndicator from '../../../components/missing_indicator';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport MovedNote from './moved_note';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n hideTabs: PropTypes.bool,\n };\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMention = () => {\n this.props.onMention(this.props.account, this.context.router.history);\n }\n\n handleDirect = () => {\n this.props.onDirect(this.props.account, this.context.router.history);\n }\n\n handleReport = () => {\n this.props.onReport(this.props.account);\n }\n\n handleReblogToggle = () => {\n this.props.onReblogToggle(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n render () {\n const { account, hideTabs } = this.props;\n\n if (account === null) {\n return <MissingIndicator />;\n }\n\n return (\n <div className='account-timeline__header'>\n {account.get('moved') && <MovedNote from={account} to={account.get('moved')} />}\n\n <InnerHeader\n account={account}\n onFollow={this.handleFollow}\n onBlock={this.handleBlock}\n />\n\n <ActionBar\n account={account}\n onBlock={this.handleBlock}\n onMention={this.handleMention}\n onDirect={this.handleDirect}\n onReblogToggle={this.handleReblogToggle}\n onReport={this.handleReport}\n onMute={this.handleMute}\n />\n\n {!hideTabs && (\n <div className='account__section-headline'>\n <NavLink exact to={`/accounts/${account.get('id')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>\n </div>\n )}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { autoPlayGif, me } from '../../../initial_state';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval. Click to cancel follow request' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n});\n\nclass Avatar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n isHovered: false,\n };\n\n handleMouseOver = () => {\n if (this.state.isHovered) return;\n this.setState({ isHovered: true });\n }\n\n handleMouseOut = () => {\n if (!this.state.isHovered) return;\n this.setState({ isHovered: false });\n }\n\n render () {\n const { account } = this.props;\n const { isHovered } = this.state;\n\n return (\n <a\n href={account.get('url')}\n className='account__header__avatar'\n role='presentation'\n target='_blank'\n rel='noopener'\n style={{ backgroundImage: `url(${autoPlayGif || isHovered ? account.get('avatar') : account.get('avatar_static')})` }}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onFocus={this.handleMouseOver}\n onBlur={this.handleMouseOut}\n >\n <span style={{ display: 'none' }}>{account.get('acct')}</span>\n </a>\n );\n }\n\n}\n\n@injectIntl\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { account, intl } = this.props;\n\n if (!account) {\n return null;\n }\n\n let info = '';\n let mutingInfo = '';\n let actionBtn = '';\n let lockedIcon = '';\n\n if (me !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.follows_you' defaultMessage='Follows you' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.blocked' defaultMessage='Blocked' /></span>;\n }\n\n if (me !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.muted' defaultMessage='Muted' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.domain_blocked' defaultMessage='Domain hidden' /></span>;\n }\n\n if (me !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} active icon='hourglass' title={intl.formatMessage(messages.requested)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon={account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus'} active={account.getIn(['relationship', 'following'])} title={intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.props.onBlock} />\n </div>\n );\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = <i className='fa fa-lock' />;\n }\n\n const content = { __html: account.get('note_emojified') };\n const displayNameHtml = { __html: account.get('display_name_html') };\n\n return (\n <div className={classNames('account__header', { inactive: !!account.get('moved') })} style={{ backgroundImage: `url(${account.get('header')})` }}>\n <div>\n <Avatar account={account} />\n\n <span className='account__header__display-name' dangerouslySetInnerHTML={displayNameHtml} />\n <span className='account__header__username'>@{account.get('acct')} {lockedIcon}</span>\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n\n {info}\n {mutingInfo}\n {actionBtn}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { Link } from 'react-router-dom';\nimport { defineMessages, injectIntl, FormattedMessage, FormattedNumber } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n mention: { id: 'account.mention', defaultMessage: 'Mention @{name}' },\n direct: { id: 'account.direct', defaultMessage: 'Direct message @{name}' },\n edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n block: { id: 'account.block', defaultMessage: 'Block @{name}' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n report: { id: 'account.report', defaultMessage: 'Report @{name}' },\n share: { id: 'account.share', defaultMessage: 'Share @{name}\\'s profile' },\n media: { id: 'account.media', defaultMessage: 'Media' },\n hideReblogs: { id: 'account.hide_reblogs', defaultMessage: 'Hide boosts from @{name}' },\n showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleShare = () => {\n navigator.share({\n url: this.props.account.get('url'),\n });\n }\n\n render () {\n const { account, intl } = this.props;\n\n let menu = [];\n let extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === me) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = (\n <div className='account__disclaimer'>\n <FormattedMessage\n id='account.disclaimer_full'\n defaultMessage=\"Information below may reflect the user's profile incompletely.\"\n />\n {' '}\n <a target='_blank' rel='noopener' href={account.get('url')}>\n <FormattedMessage id='account.view_full_profile' defaultMessage='View full profile' />\n </a>\n </div>\n );\n\n menu.push(null);\n }\n\n return (\n <div>\n {extraInfo}\n\n <div className='account__action-bar'>\n <div className='account__action-bar-dropdown'>\n <DropdownMenuContainer items={menu} icon='bars' size={24} direction='right' />\n </div>\n\n <div className='account__action-bar-links'>\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}`}>\n <span><FormattedMessage id='account.posts' defaultMessage='Toots' /></span>\n <strong><FormattedNumber value={account.get('statuses_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/following`}>\n <span><FormattedMessage id='account.follows' defaultMessage='Follows' /></span>\n <strong><FormattedNumber value={account.get('following_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/followers`}>\n <span><FormattedMessage id='account.followers' defaultMessage='Followers' /></span>\n <strong><FormattedNumber value={account.get('followers_count')} /></strong>\n </Link>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/action_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport AvatarOverlay from '../../../components/avatar_overlay';\nimport DisplayName from '../../../components/display_name';\n\nexport default class MovedNote extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n from: ImmutablePropTypes.map.isRequired,\n to: ImmutablePropTypes.map.isRequired,\n };\n\n handleAccountClick = e => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.to.get('id')}`);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { from, to } = this.props;\n const displayNameHtml = { __html: from.get('display_name_html') };\n\n return (\n <div className='account__moved-note'>\n <div className='account__moved-note__message'>\n <div className='account__moved-note__icon-wrapper'><i className='fa fa-fw fa-suitcase account__moved-note__icon' /></div>\n <FormattedMessage id='account.moved_to' defaultMessage='{name} has moved to:' values={{ name: <bdi><strong dangerouslySetInnerHTML={displayNameHtml} /></bdi> }} />\n </div>\n\n <a href={to.get('url')} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><AvatarOverlay account={to} friend={from} /></div>\n <DisplayName account={to} />\n </a>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/following.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/following/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/account_timeline/containers/header_container.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/header.js","webpack:///./app/javascript/mastodon/features/account/components/action_bar.js","webpack:///./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","150","ColumnHeader","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_this","_ret","_len","length","args","Array","_key","call","concat","handleClick","icon","type","active","columnHeaderId","iconElement","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_temp2","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","contextTypes","object","816","defineProperty","value","Following","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9__actions_accounts__","__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_11__containers_account_container__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__","__WEBPACK_IMPORTED_MODULE_14__components_load_more__","__WEBPACK_IMPORTED_MODULE_15__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default","mapStateToProps","state","accountIds","getIn","params","accountId","hasMore","_ImmutablePureCompone","e","_e$target","target","scrollHeight","clientHeight","handleLoadMore","preventDefault","componentWillMount","componentWillReceiveProps","nextProps","loadMore","scrollKey","hideTabs","map","withNote","propTypes","isRequired","func","list","bool","841","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","messages","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","intl","onFollow","message","values","name","get","confirm","formatMessage","onConfirm","onBlock","onMute","onMuteNotifications","notifications","842","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","title","hidingNotificationsButton","href","to","size","843","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","844","__WEBPACK_IMPORTED_MODULE_3__selectors__","__WEBPACK_IMPORTED_MODULE_4__components_header__","__WEBPACK_IMPORTED_MODULE_5__actions_accounts__","__WEBPACK_IMPORTED_MODULE_6__actions_compose__","__WEBPACK_IMPORTED_MODULE_7__actions_mutes__","__WEBPACK_IMPORTED_MODULE_8__actions_modal__","__WEBPACK_IMPORTED_MODULE_9_react_intl__","__WEBPACK_IMPORTED_MODULE_10__initial_state__","blockConfirm","_ref2","onMention","onDirect","onReblogToggle","845","Header","__WEBPACK_IMPORTED_MODULE_7__account_components_header__","__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__","__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_11__moved_note__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","handleMention","handleDirect","handleReblogToggle","from","exact","846","_class3","_temp3","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_11__initial_state__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","Avatar","isHovered","handleMouseOver","setState","handleMouseOut","rel","backgroundImage","onMouseOver","onMouseOut","onFocus","onBlur","display","_ImmutablePureCompone2","info","mutingInfo","actionBtn","lockedIcon","content","__html","displayNameHtml","inactive","dangerouslySetInnerHTML","847","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_router_dom__","__WEBPACK_IMPORTED_MODULE_8__initial_state__","mention","direct","edit_profile","block","report","share","media","hideReblogs","showReblogs","handleShare","navigator","url","menu","extraInfo","text","action","onReport","items","direction","848","MovedNote","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__","__WEBPACK_IMPORTED_MODULE_10__components_display_name__","handleAccountClick","button","stopPropagation","friend"],"mappings":"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","file":"features/following.js","sourcesContent":["webpackJsonp([12],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 816:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Following; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_account_container__ = __webpack_require__(841);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n accountIds: state.getIn(['user_lists', 'following', props.params.accountId, 'items']),\n hasMore: !!state.getIn(['user_lists', 'following', props.params.accountId, 'next'])\n };\n};\n\nvar Following = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Following, _ImmutablePureCompone);\n\n function Following() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Following);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleScroll = function (e) {\n var _e$target = e.target,\n scrollTop = _e$target.scrollTop,\n scrollHeight = _e$target.scrollHeight,\n clientHeight = _e$target.clientHeight;\n\n\n if (scrollTop === scrollHeight - clientHeight && _this.props.hasMore) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"t\" /* expandFollowing */])(_this.props.params.accountId));\n }\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"t\" /* expandFollowing */])(_this.props.params.accountId));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Following.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"u\" /* fetchAccount */])(this.props.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"x\" /* fetchFollowing */])(this.props.params.accountId));\n };\n\n Following.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"u\" /* fetchAccount */])(nextProps.params.accountId));\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_accounts__[\"x\" /* fetchFollowing */])(nextProps.params.accountId));\n }\n };\n\n Following.prototype.render = function render() {\n var _props = this.props,\n accountIds = _props.accountIds,\n hasMore = _props.hasMore;\n\n\n var loadMore = null;\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n if (hasMore) {\n loadMore = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__components_load_more__[\"a\" /* default */], {\n onClick: this.handleLoadMore\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable',\n onScroll: this.handleScroll\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__account_timeline_containers_header_container__[\"a\" /* default */], {\n accountId: this.props.params.accountId,\n hideTabs: true\n }), accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_account_container__[\"a\" /* default */], {\n id: id,\n withNote: false\n }, id);\n }), loadMore))));\n };\n\n return Following;\n}(__WEBPACK_IMPORTED_MODULE_16_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n hasMore: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class);\n\n\n/***/ }),\n\n/***/ 841:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(842);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 842:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_header__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_3__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId;\n return {\n account: getAccount(state, accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var intl = _ref2.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_10__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onDirect: function onDirect(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_compose__[\"N\" /* directCompose */])(account, router));\n },\n onReblogToggle: function onReblogToggle(account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), false));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"z\" /* followAccount */])(account.get('id'), true));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_4__components_header__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__account_components_header__ = __webpack_require__(846);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__ = __webpack_require__(847);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__moved_note__ = __webpack_require__(848);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar Header = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone);\n\n function Header() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMention = function () {\n _this.props.onMention(_this.props.account, _this.context.router.history);\n }, _this.handleDirect = function () {\n _this.props.onDirect(_this.props.account, _this.context.router.history);\n }, _this.handleReblogToggle = function () {\n _this.props.onReblogToggle(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n hideTabs = _props.hideTabs;\n\n\n if (account === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_missing_indicator__[\"a\" /* default */], {});\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account-timeline__header'\n }, void 0, account.get('moved') && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__moved_note__[\"a\" /* default */], {\n from: account,\n to: account.get('moved')\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__account_components_header__[\"a\" /* default */], {\n account: account,\n onFollow: this.handleFollow,\n onBlock: this.handleBlock\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__account_components_action_bar__[\"a\" /* default */], {\n account: account,\n onBlock: this.handleBlock,\n onMention: this.handleMention,\n onDirect: this.handleDirect,\n onReblogToggle: this.handleReblogToggle,\n onMute: this.handleMute\n }), !hideTabs && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__section-headline'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/with_replies'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts_with_replies',\n defaultMessage: 'Toots and replies'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"c\" /* NavLink */], {\n exact: true,\n to: '/accounts/' + account.get('id') + '/media'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.media',\n defaultMessage: 'Media'\n }))));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onDirect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onReblogToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n hideTabs: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 846:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Header; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval. Click to cancel follow request'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n }\n});\n\nvar Avatar = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Avatar, _ImmutablePureCompone);\n\n function Avatar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Avatar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n isHovered: false\n }, _this.handleMouseOver = function () {\n if (_this.state.isHovered) return;\n _this.setState({ isHovered: true });\n }, _this.handleMouseOut = function () {\n if (!_this.state.isHovered) return;\n _this.setState({ isHovered: false });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Avatar.prototype.render = function render() {\n var account = this.props.account;\n var isHovered = this.state.isHovered;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: account.get('url'),\n className: 'account__header__avatar',\n role: 'presentation',\n target: '_blank',\n rel: 'noopener',\n style: { backgroundImage: 'url(' + (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"a\" /* autoPlayGif */] || isHovered ? account.get('avatar') : account.get('avatar_static')) + ')' },\n onMouseOver: this.handleMouseOver,\n onMouseOut: this.handleMouseOut,\n onFocus: this.handleMouseOver,\n onBlur: this.handleMouseOut\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, account.get('acct')));\n };\n\n return Avatar;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\nvar Header = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Header, _ImmutablePureCompone2);\n\n function Header() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Header);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.apply(this, arguments));\n }\n\n Header.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n if (!account) {\n return null;\n }\n\n var info = '';\n var mutingInfo = '';\n var actionBtn = '';\n var lockedIcon = '';\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows_you',\n defaultMessage: 'Follows you'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--follows-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.blocked',\n defaultMessage: 'Blocked'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.muted',\n defaultMessage: 'Muted'\n }));\n } else if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account--muting-info'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.domain_blocked',\n defaultMessage: 'Domain hidden'\n }));\n }\n\n if (__WEBPACK_IMPORTED_MODULE_11__initial_state__[\"g\" /* me */] !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n active: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested),\n onClick: this.props.onFollow\n }));\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus',\n active: account.getIn(['relationship', 'following']),\n title: intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow),\n onClick: this.props.onFollow\n }));\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account--action-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n size: 26,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.props.onBlock\n }));\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-lock'\n });\n }\n\n var content = { __html: account.get('note_emojified') };\n var displayNameHtml = { __html: account.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('account__header', { inactive: !!account.get('moved') }),\n style: { backgroundImage: 'url(' + account.get('header') + ')' }\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Avatar, {\n account: account\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__display-name',\n dangerouslySetInnerHTML: displayNameHtml\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'account__header__username'\n }, void 0, '@', account.get('acct'), ' ', lockedIcon), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__header__content',\n dangerouslySetInnerHTML: content\n }), info, mutingInfo, actionBtn));\n };\n\n return Header;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class3.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp3)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 847:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n mention: {\n 'id': 'account.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n direct: {\n 'id': 'account.direct',\n 'defaultMessage': 'Direct message @{name}'\n },\n edit_profile: {\n 'id': 'account.edit_profile',\n 'defaultMessage': 'Edit profile'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n block: {\n 'id': 'account.block',\n 'defaultMessage': 'Block @{name}'\n },\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n report: {\n 'id': 'account.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'account.share',\n 'defaultMessage': 'Share @{name}\\'s profile'\n },\n media: {\n 'id': 'account.media',\n 'defaultMessage': 'Media'\n },\n hideReblogs: {\n 'id': 'account.hide_reblogs',\n 'defaultMessage': 'Hide boosts from @{name}'\n },\n showReblogs: {\n 'id': 'account.show_reblogs',\n 'defaultMessage': 'Show boosts from @{name}'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleShare = function () {\n navigator.share({\n url: _this.props.account.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl;\n\n\n var menu = [];\n var extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === __WEBPACK_IMPORTED_MODULE_8__initial_state__[\"g\" /* me */]) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__disclaimer'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.disclaimer_full',\n defaultMessage: 'Information below may reflect the user\\'s profile incompletely.'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n target: '_blank',\n rel: 'noopener',\n href: account.get('url')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.view_full_profile',\n defaultMessage: 'View full profile'\n })));\n\n menu.push(null);\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, extraInfo, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n items: menu,\n icon: 'bars',\n size: 24,\n direction: 'right'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__action-bar-links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id')\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.posts',\n defaultMessage: 'Toots'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('statuses_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/following'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.follows',\n defaultMessage: 'Follows'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('following_count')\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_dom__[\"b\" /* Link */], {\n className: 'account__action-bar__tab',\n to: '/accounts/' + account.get('id') + '/followers'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.followers',\n defaultMessage: 'Followers'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"c\" /* FormattedNumber */], {\n value: account.get('followers_count')\n }))))));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 848:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MovedNote; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_display_name__ = __webpack_require__(55);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\nvar MovedNote = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MovedNote, _ImmutablePureCompone);\n\n function MovedNote() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MovedNote);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.to.get('id'));\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n MovedNote.prototype.render = function render() {\n var _props = this.props,\n from = _props.from,\n to = _props.to;\n\n var displayNameHtml = { __html: from.get('display_name_html') };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__moved-note__icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-suitcase account__moved-note__icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'account.moved_to',\n defaultMessage: '{name} has moved to:',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n dangerouslySetInnerHTML: displayNameHtml\n })) }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: to.get('url'),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_avatar_overlay__[\"a\" /* default */], {\n account: to,\n friend: from\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_display_name__[\"a\" /* default */], {\n account: to\n })));\n };\n\n return MovedNote;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n from: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n to: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired\n}, _temp2);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/following.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport {\n fetchAccount,\n fetchFollowing,\n expandFollowing,\n} from '../../actions/accounts';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport AccountContainer from '../../containers/account_container';\nimport Column from '../ui/components/column';\nimport HeaderContainer from '../account_timeline/containers/header_container';\nimport LoadMore from '../../components/load_more';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, props) => ({\n accountIds: state.getIn(['user_lists', 'following', props.params.accountId, 'items']),\n hasMore: !!state.getIn(['user_lists', 'following', props.params.accountId, 'next']),\n});\n\n@connect(mapStateToProps)\nexport default class Following extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n hasMore: PropTypes.bool,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchAccount(this.props.params.accountId));\n this.props.dispatch(fetchFollowing(this.props.params.accountId));\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(fetchFollowing(nextProps.params.accountId));\n }\n }\n\n handleScroll = (e) => {\n const { scrollTop, scrollHeight, clientHeight } = e.target;\n\n if (scrollTop === scrollHeight - clientHeight && this.props.hasMore) {\n this.props.dispatch(expandFollowing(this.props.params.accountId));\n }\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.dispatch(expandFollowing(this.props.params.accountId));\n }\n\n render () {\n const { accountIds, hasMore } = this.props;\n\n let loadMore = null;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n if (hasMore) {\n loadMore = <LoadMore onClick={this.handleLoadMore} />;\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='following'>\n <div className='scrollable' onScroll={this.handleScroll}>\n <div className='following'>\n <HeaderContainer accountId={this.props.params.accountId} hideTabs />\n {accountIds.map(id => <AccountContainer key={id} id={id} withNote={false} />)}\n {loadMore}\n </div>\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/following/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport Header from '../components/header';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n unmuteAccount,\n} from '../../../actions/accounts';\nimport {\n mentionCompose,\n directCompose,\n} from '../../../actions/compose';\nimport { initMuteModal } from '../../../actions/mutes';\nimport { openModal } from '../../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { unfollowModal } from '../../../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId }) => ({\n account: getAccount(state, accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onDirect (account, router) {\n dispatch(directCompose(account, router));\n },\n\n onReblogToggle (account) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n dispatch(followAccount(account.get('id'), false));\n } else {\n dispatch(followAccount(account.get('id'), true));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n }\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Header));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/containers/header_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport InnerHeader from '../../account/components/header';\nimport ActionBar from '../../account/components/action_bar';\nimport MissingIndicator from '../../../components/missing_indicator';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport MovedNote from './moved_note';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n hideTabs: PropTypes.bool,\n };\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMention = () => {\n this.props.onMention(this.props.account, this.context.router.history);\n }\n\n handleDirect = () => {\n this.props.onDirect(this.props.account, this.context.router.history);\n }\n\n handleReblogToggle = () => {\n this.props.onReblogToggle(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n render () {\n const { account, hideTabs } = this.props;\n\n if (account === null) {\n return <MissingIndicator />;\n }\n\n return (\n <div className='account-timeline__header'>\n {account.get('moved') && <MovedNote from={account} to={account.get('moved')} />}\n\n <InnerHeader\n account={account}\n onFollow={this.handleFollow}\n onBlock={this.handleBlock}\n />\n\n <ActionBar\n account={account}\n onBlock={this.handleBlock}\n onMention={this.handleMention}\n onDirect={this.handleDirect}\n onReblogToggle={this.handleReblogToggle}\n onMute={this.handleMute}\n />\n\n {!hideTabs && (\n <div className='account__section-headline'>\n <NavLink exact to={`/accounts/${account.get('id')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>\n <NavLink exact to={`/accounts/${account.get('id')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>\n </div>\n )}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { autoPlayGif, me } from '../../../initial_state';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval. Click to cancel follow request' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n});\n\nclass Avatar extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n };\n\n state = {\n isHovered: false,\n };\n\n handleMouseOver = () => {\n if (this.state.isHovered) return;\n this.setState({ isHovered: true });\n }\n\n handleMouseOut = () => {\n if (!this.state.isHovered) return;\n this.setState({ isHovered: false });\n }\n\n render () {\n const { account } = this.props;\n const { isHovered } = this.state;\n\n return (\n <a\n href={account.get('url')}\n className='account__header__avatar'\n role='presentation'\n target='_blank'\n rel='noopener'\n style={{ backgroundImage: `url(${autoPlayGif || isHovered ? account.get('avatar') : account.get('avatar_static')})` }}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onFocus={this.handleMouseOver}\n onBlur={this.handleMouseOut}\n >\n <span style={{ display: 'none' }}>{account.get('acct')}</span>\n </a>\n );\n }\n\n}\n\n@injectIntl\nexport default class Header extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { account, intl } = this.props;\n\n if (!account) {\n return null;\n }\n\n let info = '';\n let mutingInfo = '';\n let actionBtn = '';\n let lockedIcon = '';\n\n if (me !== account.get('id') && account.getIn(['relationship', 'followed_by'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.follows_you' defaultMessage='Follows you' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'blocking'])) {\n info = <span className='account--follows-info'><FormattedMessage id='account.blocked' defaultMessage='Blocked' /></span>;\n }\n\n if (me !== account.get('id') && account.getIn(['relationship', 'muting'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.muted' defaultMessage='Muted' /></span>;\n } else if (me !== account.get('id') && account.getIn(['relationship', 'domain_blocking'])) {\n mutingInfo = <span className='account--muting-info'><FormattedMessage id='account.domain_blocked' defaultMessage='Domain hidden' /></span>;\n }\n\n if (me !== account.get('id')) {\n if (account.getIn(['relationship', 'requested'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} active icon='hourglass' title={intl.formatMessage(messages.requested)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (!account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon={account.getIn(['relationship', 'following']) ? 'user-times' : 'user-plus'} active={account.getIn(['relationship', 'following'])} title={intl.formatMessage(account.getIn(['relationship', 'following']) ? messages.unfollow : messages.follow)} onClick={this.props.onFollow} />\n </div>\n );\n } else if (account.getIn(['relationship', 'blocking'])) {\n actionBtn = (\n <div className='account--action-button'>\n <IconButton size={26} icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.props.onBlock} />\n </div>\n );\n }\n }\n\n if (account.get('moved') && !account.getIn(['relationship', 'following'])) {\n actionBtn = '';\n }\n\n if (account.get('locked')) {\n lockedIcon = <i className='fa fa-lock' />;\n }\n\n const content = { __html: account.get('note_emojified') };\n const displayNameHtml = { __html: account.get('display_name_html') };\n\n return (\n <div className={classNames('account__header', { inactive: !!account.get('moved') })} style={{ backgroundImage: `url(${account.get('header')})` }}>\n <div>\n <Avatar account={account} />\n\n <span className='account__header__display-name' dangerouslySetInnerHTML={displayNameHtml} />\n <span className='account__header__username'>@{account.get('acct')} {lockedIcon}</span>\n <div className='account__header__content' dangerouslySetInnerHTML={content} />\n\n {info}\n {mutingInfo}\n {actionBtn}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { Link } from 'react-router-dom';\nimport { defineMessages, injectIntl, FormattedMessage, FormattedNumber } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n mention: { id: 'account.mention', defaultMessage: 'Mention @{name}' },\n direct: { id: 'account.direct', defaultMessage: 'Direct message @{name}' },\n edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n block: { id: 'account.block', defaultMessage: 'Block @{name}' },\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n report: { id: 'account.report', defaultMessage: 'Report @{name}' },\n share: { id: 'account.share', defaultMessage: 'Share @{name}\\'s profile' },\n media: { id: 'account.media', defaultMessage: 'Media' },\n hideReblogs: { id: 'account.hide_reblogs', defaultMessage: 'Hide boosts from @{name}' },\n showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func,\n onBlock: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onDirect: PropTypes.func.isRequired,\n onReblogToggle: PropTypes.func.isRequired,\n onReport: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleShare = () => {\n navigator.share({\n url: this.props.account.get('url'),\n });\n }\n\n render () {\n const { account, intl } = this.props;\n\n let menu = [];\n let extraInfo = '';\n\n menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });\n menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });\n\n if ('share' in navigator) {\n menu.push({ text: intl.formatMessage(messages.share, { name: account.get('username') }), action: this.handleShare });\n }\n\n menu.push(null);\n\n if (account.get('id') === me) {\n menu.push({ text: intl.formatMessage(messages.edit_profile), href: '/settings/profile' });\n } else {\n if (account.getIn(['relationship', 'following'])) {\n if (account.getIn(['relationship', 'showing_reblogs'])) {\n menu.push({ text: intl.formatMessage(messages.hideReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n } else {\n menu.push({ text: intl.formatMessage(messages.showReblogs, { name: account.get('username') }), action: this.props.onReblogToggle });\n }\n }\n\n if (account.getIn(['relationship', 'blocking'])) {\n menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.props.onBlock });\n } else {\n menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.props.onBlock });\n }\n\n menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.props.onReport });\n }\n\n if (account.get('acct') !== account.get('username')) {\n extraInfo = (\n <div className='account__disclaimer'>\n <FormattedMessage\n id='account.disclaimer_full'\n defaultMessage=\"Information below may reflect the user's profile incompletely.\"\n />\n {' '}\n <a target='_blank' rel='noopener' href={account.get('url')}>\n <FormattedMessage id='account.view_full_profile' defaultMessage='View full profile' />\n </a>\n </div>\n );\n\n menu.push(null);\n }\n\n return (\n <div>\n {extraInfo}\n\n <div className='account__action-bar'>\n <div className='account__action-bar-dropdown'>\n <DropdownMenuContainer items={menu} icon='bars' size={24} direction='right' />\n </div>\n\n <div className='account__action-bar-links'>\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}`}>\n <span><FormattedMessage id='account.posts' defaultMessage='Toots' /></span>\n <strong><FormattedNumber value={account.get('statuses_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/following`}>\n <span><FormattedMessage id='account.follows' defaultMessage='Follows' /></span>\n <strong><FormattedNumber value={account.get('following_count')} /></strong>\n </Link>\n\n <Link className='account__action-bar__tab' to={`/accounts/${account.get('id')}/followers`}>\n <span><FormattedMessage id='account.followers' defaultMessage='Followers' /></span>\n <strong><FormattedNumber value={account.get('followers_count')} /></strong>\n </Link>\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account/components/action_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport AvatarOverlay from '../../../components/avatar_overlay';\nimport DisplayName from '../../../components/display_name';\n\nexport default class MovedNote extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n from: ImmutablePropTypes.map.isRequired,\n to: ImmutablePropTypes.map.isRequired,\n };\n\n handleAccountClick = e => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.to.get('id')}`);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { from, to } = this.props;\n const displayNameHtml = { __html: from.get('display_name_html') };\n\n return (\n <div className='account__moved-note'>\n <div className='account__moved-note__message'>\n <div className='account__moved-note__icon-wrapper'><i className='fa fa-fw fa-suitcase account__moved-note__icon' /></div>\n <FormattedMessage id='account.moved_to' defaultMessage='{name} has moved to:' values={{ name: <bdi><strong dangerouslySetInnerHTML={displayNameHtml} /></bdi> }} />\n </div>\n\n <a href={to.get('url')} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><AvatarOverlay account={to} friend={from} /></div>\n <DisplayName account={to} />\n </a>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/account_timeline/components/moved_note.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/generic_not_found.js b/priv/static/packs/features/generic_not_found.js index df421191e..cf772c50f 100644 --- a/priv/static/packs/features/generic_not_found.js +++ b/priv/static/packs/features/generic_not_found.js @@ -1,2 +1,2 @@ -webpackJsonp([24],{150:function(n,e,i){"use strict";i.d(e,"a",function(){return v});var t=i(2),r=i.n(t),o=i(1),a=i.n(o),c=i(3),l=i.n(c),u=i(4),s=i.n(u),d=i(0),f=i.n(d),h=i(10),p=i.n(h),v=function(n){function e(){var i,t,r;a()(this,e);for(var o=arguments.length,c=Array(o),u=0;u<o;u++)c[u]=arguments[u];return i=t=l()(this,n.call.apply(n,[this].concat(c))),t.handleClick=function(){t.props.onClick()},r=i,l()(t,r)}return s()(e,n),e.prototype.render=function(){var n=this.props,e=n.icon,i=n.type,t=n.active,o=n.columnHeaderId,a="";return e&&(a=r()("i",{className:"fa fa-fw fa-"+e+" column-header__icon"})),r()("h1",{className:p()("column-header",{active:t}),id:o||null},void 0,r()("button",{onClick:this.handleClick},void 0,a,i))},e}(f.a.PureComponent)},284:function(n,e,i){"use strict";i.d(e,"a",function(){return g});var t=i(2),r=i.n(t),o=i(1),a=i.n(o),c=i(3),l=i.n(c),u=i(4),s=i.n(u),d=i(34),f=i.n(d),h=i(0),p=i.n(h),v=i(150),b=i(90),m=i(35),g=function(n){function e(){var i,t,r;a()(this,e);for(var o=arguments.length,c=Array(o),u=0;u<o;u++)c[u]=arguments[u];return i=t=l()(this,n.call.apply(n,[this].concat(c))),t.handleHeaderClick=function(){var n=t.node.querySelector(".scrollable");n&&(t._interruptScrollAnimation=Object(b.b)(n))},t.handleScroll=f()(function(){void 0!==t._interruptScrollAnimation&&t._interruptScrollAnimation()},200),t.setRef=function(n){t.node=n},r=i,l()(t,r)}return s()(e,n),e.prototype.scrollTop=function(){var n=this.node.querySelector(".scrollable");n&&(this._interruptScrollAnimation=Object(b.b)(n))},e.prototype.render=function(){var n=this.props,e=n.heading,i=n.icon,t=n.children,o=n.active,a=n.hideHeadingOnMobile,c=e&&(!a||a&&!Object(m.b)(window.innerWidth)),l=c&&e.replace(/ /g,"-"),u=c&&r()(v.a,{icon:i,active:o,type:e,onClick:this.handleHeaderClick,columnHeaderId:l});return p.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":l,className:"column",onScroll:this.handleScroll},u,t)},e}(p.a.PureComponent)},821:function(n,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var t=i(2),r=i.n(t),o=i(0),a=(i.n(o),i(284)),c=i(845),l=function(){return r()(a.a,{},void 0,r()(c.a,{}))};e.default=l},845:function(n,e,i){"use strict";var t=i(2),r=i.n(t),o=i(0),a=(i.n(o),i(6)),c=function(){return r()("div",{className:"regeneration-indicator missing-indicator"},void 0,r()("div",{},void 0,r()("div",{className:"regeneration-indicator__label"},void 0,r()(a.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),r()(a.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};e.a=c}}); +webpackJsonp([23],{150:function(n,e,i){"use strict";i.d(e,"a",function(){return v});var t=i(2),r=i.n(t),o=i(1),a=i.n(o),c=i(3),l=i.n(c),u=i(4),s=i.n(u),d=i(0),f=i.n(d),h=i(10),p=i.n(h),v=function(n){function e(){var i,t,r;a()(this,e);for(var o=arguments.length,c=Array(o),u=0;u<o;u++)c[u]=arguments[u];return i=t=l()(this,n.call.apply(n,[this].concat(c))),t.handleClick=function(){t.props.onClick()},r=i,l()(t,r)}return s()(e,n),e.prototype.render=function(){var n=this.props,e=n.icon,i=n.type,t=n.active,o=n.columnHeaderId,a="";return e&&(a=r()("i",{className:"fa fa-fw fa-"+e+" column-header__icon"})),r()("h1",{className:p()("column-header",{active:t}),id:o||null},void 0,r()("button",{onClick:this.handleClick},void 0,a,i))},e}(f.a.PureComponent)},283:function(n,e,i){"use strict";i.d(e,"a",function(){return g});var t=i(2),r=i.n(t),o=i(1),a=i.n(o),c=i(3),l=i.n(c),u=i(4),s=i.n(u),d=i(34),f=i.n(d),h=i(0),p=i.n(h),v=i(150),b=i(90),m=i(35),g=function(n){function e(){var i,t,r;a()(this,e);for(var o=arguments.length,c=Array(o),u=0;u<o;u++)c[u]=arguments[u];return i=t=l()(this,n.call.apply(n,[this].concat(c))),t.handleHeaderClick=function(){var n=t.node.querySelector(".scrollable");n&&(t._interruptScrollAnimation=Object(b.b)(n))},t.handleScroll=f()(function(){void 0!==t._interruptScrollAnimation&&t._interruptScrollAnimation()},200),t.setRef=function(n){t.node=n},r=i,l()(t,r)}return s()(e,n),e.prototype.scrollTop=function(){var n=this.node.querySelector(".scrollable");n&&(this._interruptScrollAnimation=Object(b.b)(n))},e.prototype.render=function(){var n=this.props,e=n.heading,i=n.icon,t=n.children,o=n.active,a=n.hideHeadingOnMobile,c=e&&(!a||a&&!Object(m.b)(window.innerWidth)),l=c&&e.replace(/ /g,"-"),u=c&&r()(v.a,{icon:i,active:o,type:e,onClick:this.handleHeaderClick,columnHeaderId:l});return p.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":l,className:"column",onScroll:this.handleScroll},u,t)},e}(p.a.PureComponent)},820:function(n,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var t=i(2),r=i.n(t),o=i(0),a=(i.n(o),i(283)),c=i(843),l=function(){return r()(a.a,{},void 0,r()(c.a,{}))};e.default=l},843:function(n,e,i){"use strict";var t=i(2),r=i.n(t),o=i(0),a=(i.n(o),i(6)),c=function(){return r()("div",{className:"regeneration-indicator missing-indicator"},void 0,r()("div",{},void 0,r()("div",{className:"regeneration-indicator__label"},void 0,r()(a.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),r()(a.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};e.a=c}}); //# sourceMappingURL=generic_not_found.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/generic_not_found.js.map b/priv/static/packs/features/generic_not_found.js.map index a031a6f36..1e9286ea2 100644 --- a/priv/static/packs/features/generic_not_found.js.map +++ b/priv/static/packs/features/generic_not_found.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/generic_not_found.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/features/generic_not_found/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","Object","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","821","defineProperty","value","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2__ui_components_column__","__WEBPACK_IMPORTED_MODULE_3__components_missing_indicator__","GenericNotFound","845","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","defaultMessage"],"mappings":"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","file":"features/generic_not_found.js","sourcesContent":["webpackJsonp([24],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 821:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_missing_indicator__ = __webpack_require__(845);\n\n\n\n\n\nvar GenericNotFound = function GenericNotFound() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_missing_indicator__[\"a\" /* default */], {}));\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (GenericNotFound);\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/generic_not_found.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport Column from '../ui/components/column';\nimport MissingIndicator from '../../components/missing_indicator';\n\nconst GenericNotFound = () => (\n <Column>\n <MissingIndicator />\n </Column>\n);\n\nexport default GenericNotFound;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/generic_not_found/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/generic_not_found.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/features/generic_not_found/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","Object","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","820","defineProperty","value","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2__ui_components_column__","__WEBPACK_IMPORTED_MODULE_3__components_missing_indicator__","GenericNotFound","843","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","defaultMessage"],"mappings":"AAAAA,cAAc,KAERC,IACA,SAAUC,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOG,IAC9E,IAAIC,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpEE,EAA2Cd,EAAoB,IAC/De,EAAmDf,EAAoBK,EAAES,GCd7EZ,EDuBF,SAAUc,GAG3B,QAASd,KACP,GAAIe,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMlB,EAEnF,KAAK,GAAImB,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,ECzBrNY,YAAc,WACZZ,EAAKa,MAAMC,WDwBJb,EAEJF,EAAQR,IAAwFS,EAAOC,GA0B5G,MAvCAR,KAAuET,EAAcc,GAgBrFd,EAAa+B,UC1BbC,OD0BgC,WC1BtB,GAAAC,GACuCf,KAAKW,MAA5CK,EADAD,EACAC,KAAMC,EADNF,EACME,KAAMC,EADZH,EACYG,OAAQC,EADpBJ,EACoBI,eACxBC,EAAc,EAMlB,OAJIJ,KACFI,EAAApC,IAAAoC,KAAAC,UAAA,eAA2CL,EAA3C,0BAGFhC,IAAA,MAAAqC,UACiB1B,IAAW,iBAAmBuB,WAD/CI,GAC8DH,GAAkB,UADhF,GAAAnC,IAAA,UAAA4B,QAEqBZ,KAAKU,iBAF1B,GAGOU,EACAH,KDqCFnC,GC/DiCW,EAAA8B,EAAMC,gBDsE1CC,IACA,SAAU/C,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAO+C,IAC9E,IAAI3C,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FqC,EAAgD/C,EAAoB,IACpEgD,EAAwDhD,EAAoBK,EAAE0C,GAC9EE,EAAsCjD,EAAoB,GAC1DkD,EAA8ClD,EAAoBK,EAAE4C,GACpEE,EAA+CnD,EAAoB,KACnEoD,EAAwCpD,EAAoB,IAC5DqD,EAA2CrD,EAAoB,IEtFnE8C,EFkGR,SAAU9B,GAGrB,QAAS8B,KACP,GAAI7B,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAM0B,EAEnF,KAAK,GAAIzB,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,EEpGrNoC,kBAAoB,WAClB,GAAMC,GAAarC,EAAKsC,KAAKC,cAAc,cAEtCF,KAILrC,EAAKwC,0BAA4BC,OAAAP,EAAA,GAAUG,KFqGxCrC,EEvFL0C,aAAeZ,IAAS,eACwB,KAAnC9B,EAAKwC,2BACdxC,EAAKwC,6BAEN,KFuFQxC,EErFX2C,OAAS,SAACC,GACR5C,EAAKsC,KAAOM,GFwEL3C,EAcJF,EAAQR,IAAwFS,EAAOC,GA8C5G,MAvEAR,KAAuEmC,EAAQ9B,GA4B/E8B,EAAOb,UE3GP8B,UF2G6B,WE1G3B,GAAMR,GAAanC,KAAKoC,KAAKC,cAAc,cAEtCF,KAILnC,KAAKsC,0BAA4BC,OAAAP,EAAA,GAAUG,KF8G7CT,EAAOb,UEhGPC,OFgG0B,WEhGhB,GAAAC,GACyDf,KAAKW,MAA9DiC,EADA7B,EACA6B,QAAS5B,EADTD,EACSC,KAAM6B,EADf9B,EACe8B,SAAU3B,EADzBH,EACyBG,OAAQ4B,EADjC/B,EACiC+B,oBAEnCC,EAAcH,KAAaE,GAAwBA,IAAwBP,OAAAN,EAAA,GAASe,OAAOC,aAE3F9B,EAAiB4B,GAAeH,EAAQM,QAAQ,KAAM,KACtDC,EAASJ,GAAA/D,IACZ+C,EAAA,GADYf,KACOA,EADPE,OACqBA,EADrBD,KACmC2B,EADnChC,QACqDZ,KAAKkC,kBAD1Df,eAC6FA,GAE5G,OACEW,GAAAP,EAAA6B,cAAA,OACEC,IAAKrD,KAAKyC,OACVa,KAAK,SACLC,kBAAiBpC,EACjBE,UAAU,SACVmC,SAAUxD,KAAKwC,cAEdW,EACAN,IF+GAnB,GE1K2BI,EAAAP,EAAMC,gBFiLpCiC,IACA,SAAU/E,EAAQC,EAAqBC,GAE7C,YACA2D,QAAOmB,eAAe/E,EAAqB,cAAgBgF,OAAO,GAC7C,IAAI5E,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxF6E,EAAsChF,EAAoB,GAE1DiF,GAD8CjF,EAAoBK,EAAE2E,GACdhF,EAAoB,MAC1EkF,EAA8DlF,EAAoB,KG9LrGmF,EAAkB,iBAAA/E,KACrB6E,EAAA,SADqB,GAAA7E,IAEnB8E,EAAA,OAILnF,GAAA,WHsMMqF,IACA,SAAUtF,EAAQC,EAAqBC,GAE7C,YACqB,IAAIG,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxF6E,EAAsChF,EAAoB,GAE1DqF,GAD8CrF,EAAoBK,EAAE2E,GACzBhF,EAAoB,IIrNlFsF,EAAmB,iBAAAlF,KAAA,OAAAqC,UACR,gDADQ,GAAArC,IAAA,gBAAAA,IAAA,OAAAqC,UAGJ,qCAHI,GAAArC,IAIhBiF,EAAA,GAJgB3C,GAII,0BAJJ6C,QAIsC,SAJtCC,eAI8D,cAJ9DpF,IAKhBiF,EAAA,GALgB3C,GAKI,6BALJ8C,eAKgD,wCAMzEzF,GAAA","file":"features/generic_not_found.js","sourcesContent":["webpackJsonp([23],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 820:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_missing_indicator__ = __webpack_require__(843);\n\n\n\n\n\nvar GenericNotFound = function GenericNotFound() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_missing_indicator__[\"a\" /* default */], {}));\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (GenericNotFound);\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/generic_not_found.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport Column from '../ui/components/column';\nimport MissingIndicator from '../../components/missing_indicator';\n\nconst GenericNotFound = () => (\n <Column>\n <MissingIndicator />\n </Column>\n);\n\nexport default GenericNotFound;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/generic_not_found/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/getting_started.js b/priv/static/packs/features/getting_started.js index ffeb27a6e..3057db7ff 100644 --- a/priv/static/packs/features/getting_started.js +++ b/priv/static/packs/features/getting_started.js @@ -1,2 +1,2 @@ -webpackJsonp([22],{150:function(e,t,n){"use strict";n.d(t,"a",function(){return h});var i=n(2),o=n.n(i),a=n(1),s=n.n(a),r=n(3),u=n.n(r),l=n(4),c=n.n(l),d=n(0),f=n.n(d),g=n(10),m=n.n(g),h=function(e){function t(){var n,i,o;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=i=u()(this,e.call.apply(e,[this].concat(r))),i.handleClick=function(){i.props.onClick()},o=n,u()(i,o)}return c()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,n=e.type,i=e.active,a=e.columnHeaderId,s="";return t&&(s=o()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),o()("h1",{className:m()("column-header",{active:i}),id:a||null},void 0,o()("button",{onClick:this.handleClick},void 0,s,n))},t}(f.a.PureComponent)},284:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var i=n(2),o=n.n(i),a=n(1),s=n.n(a),r=n(3),u=n.n(r),l=n(4),c=n.n(l),d=n(34),f=n.n(d),g=n(0),m=n.n(g),h=n(150),b=n(90),p=n(35),v=function(e){function t(){var n,i,o;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=i=u()(this,e.call.apply(e,[this].concat(r))),i.handleHeaderClick=function(){var e=i.node.querySelector(".scrollable");e&&(i._interruptScrollAnimation=Object(b.b)(e))},i.handleScroll=f()(function(){void 0!==i._interruptScrollAnimation&&i._interruptScrollAnimation()},200),i.setRef=function(e){i.node=e},o=n,u()(i,o)}return c()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(b.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,n=e.icon,i=e.children,a=e.active,s=e.hideHeadingOnMobile,r=t&&(!s||s&&!Object(p.b)(window.innerWidth)),u=r&&t.replace(/ /g,"-"),l=r&&o()(h.a,{icon:n,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:u});return m.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":u,className:"column",onScroll:this.handleScroll},l,i)},t}(m.a.PureComponent)},812:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return j});var i,o,a,s,r=n(2),u=n.n(r),l=n(1),c=n.n(l),d=n(3),f=n.n(d),g=n(4),m=n.n(g),h=n(0),b=(n.n(h),n(284)),p=n(967),v=n(968),_=n(6),M=n(9),y=n(5),k=n.n(y),q=n(13),w=n.n(q),N=n(12),A=n.n(N),O=n(11),x=n(22),C=n(8),F=(n.n(C),Object(_.f)({heading:{id:"getting_started.heading",defaultMessage:"Getting started"},home_timeline:{id:"tabs_bar.home",defaultMessage:"Home"},notifications:{id:"tabs_bar.notifications",defaultMessage:"Notifications"},public_timeline:{id:"navigation_bar.public_timeline",defaultMessage:"Federated timeline"},navigation_subheading:{id:"column_subheading.navigation",defaultMessage:"Navigation"},settings_subheading:{id:"column_subheading.settings",defaultMessage:"Settings"},community_timeline:{id:"navigation_bar.community_timeline",defaultMessage:"Local timeline"},preferences:{id:"navigation_bar.preferences",defaultMessage:"Preferences"},follow_requests:{id:"navigation_bar.follow_requests",defaultMessage:"Follow requests"},sign_out:{id:"navigation_bar.logout",defaultMessage:"Logout"},favourites:{id:"navigation_bar.favourites",defaultMessage:"Favourites"},blocks:{id:"navigation_bar.blocks",defaultMessage:"Blocked users"},keyboard_shortcuts:{id:"navigation_bar.keyboard_shortcuts",defaultMessage:"Keyboard shortcuts"}})),I=function(e){return{myAccount:e.getIn(["accounts",O.g]),columns:e.getIn(["settings","columns"]),unreadFollowRequests:e.getIn(["user_lists","follow_requests","items"],Object(C.List)()).size,unreadNotifications:e.getIn(["notifications","unread"])}},R=function(e){return{fetchFollowRequests:function(){return e(Object(x.v)())}}},S=function(e,t){return 0===e?void 0:t&&e>=t?t+"+":e},j=(i=Object(M.connect)(I,R))(o=Object(_.g)((s=a=function(e){function t(){return c()(this,t),f()(this,e.apply(this,arguments))}return m()(t,e),t.prototype.componentDidMount=function(){var e=this.props,t=e.myAccount,n=e.fetchFollowRequests;t.get("locked")&&n()},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.myAccount,i=e.columns,o=e.multiColumn,a=e.unreadFollowRequests,s=e.unreadNotifications,r=[];return o&&(i.find(function(e){return"HOME"===e.get("id")})||r.push(u()(p.a,{icon:"home",text:t.formatMessage(F.home_timeline),to:"/timelines/home"},"0")),i.find(function(e){return"NOTIFICATIONS"===e.get("id")})||r.push(u()(p.a,{icon:"bell",text:t.formatMessage(F.notifications),badge:S(s),to:"/notifications"},"1")),i.find(function(e){return"COMMUNITY"===e.get("id")})||r.push(u()(p.a,{icon:"users",text:t.formatMessage(F.community_timeline),to:"/timelines/public/local"},"2")),i.find(function(e){return"PUBLIC"===e.get("id")})||r.push(u()(p.a,{icon:"globe",text:t.formatMessage(F.public_timeline),to:"/timelines/public"},"3"))),r.push(u()(p.a,{icon:"star",text:t.formatMessage(F.favourites),to:"/favourites"},"4")),n.get("locked")&&r.push(u()(p.a,{icon:"users",text:t.formatMessage(F.follow_requests),badge:S(a,40),to:"/follow_requests"},"6")),o&&r.push(u()(p.a,{icon:"question",text:t.formatMessage(F.keyboard_shortcuts),to:"/keyboard-shortcuts"},"7")),u()(b.a,{icon:"asterisk",heading:t.formatMessage(F.heading),hideHeadingOnMobile:!0},void 0,u()("div",{className:"getting-started__wrapper"},void 0,u()(v.a,{text:t.formatMessage(F.navigation_subheading)}),r,u()(v.a,{text:t.formatMessage(F.settings_subheading)}),u()(p.a,{icon:"ban",text:t.formatMessage(F.blocks),to:"/blocks"}),u()(p.a,{icon:"cog",text:t.formatMessage(F.preferences),href:"/user-settings"}),u()(p.a,{icon:"sign-out",text:t.formatMessage(F.sign_out),href:"/auth/sign_out",method:"delete"})),u()("div",{className:"static-content getting-started"},void 0,u()("p",{},void 0,u()("a",{href:"https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md",rel:"noopener",target:"_blank"},void 0,u()(_.b,{id:"getting_started.faq",defaultMessage:"FAQ"}))," • ",u()("a",{href:"https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md",rel:"noopener",target:"_blank"},void 0,u()(_.b,{id:"getting_started.userguide",defaultMessage:"User Guide"}))," • ",u()("a",{href:"https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md",rel:"noopener",target:"_blank"},void 0,u()(_.b,{id:"getting_started.appsshort",defaultMessage:"Apps"}))," • ",u()("a",{href:"https://git.pleroma.social/pleroma/pleroma"},void 0,u()(_.b,{id:"getting_started.pleroma",defaultMessage:"Pleroma"})))))},t}(A.a),a.propTypes={intl:k.a.object.isRequired,myAccount:w.a.map.isRequired,columns:w.a.list,multiColumn:k.a.bool,fetchFollowRequests:k.a.func.isRequired,unreadFollowRequests:k.a.number,unreadNotifications:k.a.number},o=s))||o)||o},967:function(e,t,n){"use strict";var i=n(2),o=n.n(i),a=n(0),s=(n.n(a),n(44)),r=function(e){var t=e.icon,n=e.text,i=e.to,a=e.href,r=e.method,u=e.badge,l=void 0!==u?o()("span",{className:"column-link__badge"},void 0,u):null;return a?o()("a",{href:a,className:"column-link","data-method":r},void 0,o()("i",{className:"fa fa-fw fa-"+t+" column-link__icon"}),n,l):o()(s.b,{to:i,className:"column-link"},void 0,o()("i",{className:"fa fa-fw fa-"+t+" column-link__icon"}),n,l)};t.a=r},968:function(e,t,n){"use strict";var i=n(2),o=n.n(i),a=n(0),s=(n.n(a),function(e){var t=e.text;return o()("div",{className:"column-subheading"},void 0,t)});t.a=s}}); +webpackJsonp([21],{150:function(e,t,n){"use strict";n.d(t,"a",function(){return h});var i=n(2),o=n.n(i),a=n(1),s=n.n(a),r=n(3),u=n.n(r),l=n(4),c=n.n(l),d=n(0),f=n.n(d),g=n(10),m=n.n(g),h=function(e){function t(){var n,i,o;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=i=u()(this,e.call.apply(e,[this].concat(r))),i.handleClick=function(){i.props.onClick()},o=n,u()(i,o)}return c()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,n=e.type,i=e.active,a=e.columnHeaderId,s="";return t&&(s=o()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),o()("h1",{className:m()("column-header",{active:i}),id:a||null},void 0,o()("button",{onClick:this.handleClick},void 0,s,n))},t}(f.a.PureComponent)},283:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var i=n(2),o=n.n(i),a=n(1),s=n.n(a),r=n(3),u=n.n(r),l=n(4),c=n.n(l),d=n(34),f=n.n(d),g=n(0),m=n.n(g),h=n(150),b=n(90),p=n(35),v=function(e){function t(){var n,i,o;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=i=u()(this,e.call.apply(e,[this].concat(r))),i.handleHeaderClick=function(){var e=i.node.querySelector(".scrollable");e&&(i._interruptScrollAnimation=Object(b.b)(e))},i.handleScroll=f()(function(){void 0!==i._interruptScrollAnimation&&i._interruptScrollAnimation()},200),i.setRef=function(e){i.node=e},o=n,u()(i,o)}return c()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(b.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,n=e.icon,i=e.children,a=e.active,s=e.hideHeadingOnMobile,r=t&&(!s||s&&!Object(p.b)(window.innerWidth)),u=r&&t.replace(/ /g,"-"),l=r&&o()(h.a,{icon:n,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:u});return m.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":u,className:"column",onScroll:this.handleScroll},l,i)},t}(m.a.PureComponent)},811:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return j});var i,o,a,s,r=n(2),u=n.n(r),l=n(1),c=n.n(l),d=n(3),f=n.n(d),g=n(4),m=n.n(g),h=n(0),b=(n.n(h),n(283)),p=n(965),v=n(966),_=n(6),M=n(9),y=n(5),k=n.n(y),q=n(13),w=n.n(q),N=n(12),A=n.n(N),O=n(11),x=n(22),C=n(8),F=(n.n(C),Object(_.f)({heading:{id:"getting_started.heading",defaultMessage:"Getting started"},home_timeline:{id:"tabs_bar.home",defaultMessage:"Home"},notifications:{id:"tabs_bar.notifications",defaultMessage:"Notifications"},public_timeline:{id:"navigation_bar.public_timeline",defaultMessage:"Federated timeline"},navigation_subheading:{id:"column_subheading.navigation",defaultMessage:"Navigation"},settings_subheading:{id:"column_subheading.settings",defaultMessage:"Settings"},community_timeline:{id:"navigation_bar.community_timeline",defaultMessage:"Local timeline"},preferences:{id:"navigation_bar.preferences",defaultMessage:"Preferences"},follow_requests:{id:"navigation_bar.follow_requests",defaultMessage:"Follow requests"},sign_out:{id:"navigation_bar.logout",defaultMessage:"Logout"},favourites:{id:"navigation_bar.favourites",defaultMessage:"Favourites"},blocks:{id:"navigation_bar.blocks",defaultMessage:"Blocked users"},keyboard_shortcuts:{id:"navigation_bar.keyboard_shortcuts",defaultMessage:"Keyboard shortcuts"}})),I=function(e){return{myAccount:e.getIn(["accounts",O.g]),columns:e.getIn(["settings","columns"]),unreadFollowRequests:e.getIn(["user_lists","follow_requests","items"],Object(C.List)()).size,unreadNotifications:e.getIn(["notifications","unread"])}},R=function(e){return{fetchFollowRequests:function(){return e(Object(x.v)())}}},S=function(e,t){return 0===e?void 0:t&&e>=t?t+"+":e},j=(i=Object(M.connect)(I,R))(o=Object(_.g)((s=a=function(e){function t(){return c()(this,t),f()(this,e.apply(this,arguments))}return m()(t,e),t.prototype.componentDidMount=function(){var e=this.props,t=e.myAccount,n=e.fetchFollowRequests;t.get("locked")&&n()},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.myAccount,i=e.columns,o=e.multiColumn,a=e.unreadFollowRequests,s=e.unreadNotifications,r=[];return o&&(i.find(function(e){return"HOME"===e.get("id")})||r.push(u()(p.a,{icon:"home",text:t.formatMessage(F.home_timeline),to:"/timelines/home"},"0")),i.find(function(e){return"NOTIFICATIONS"===e.get("id")})||r.push(u()(p.a,{icon:"bell",text:t.formatMessage(F.notifications),badge:S(s),to:"/notifications"},"1")),i.find(function(e){return"COMMUNITY"===e.get("id")})||r.push(u()(p.a,{icon:"users",text:t.formatMessage(F.community_timeline),to:"/timelines/public/local"},"2")),i.find(function(e){return"PUBLIC"===e.get("id")})||r.push(u()(p.a,{icon:"globe",text:t.formatMessage(F.public_timeline),to:"/timelines/public"},"3"))),r.push(u()(p.a,{icon:"star",text:t.formatMessage(F.favourites),to:"/favourites"},"4")),n.get("locked")&&r.push(u()(p.a,{icon:"users",text:t.formatMessage(F.follow_requests),badge:S(a,40),to:"/follow_requests"},"6")),o&&r.push(u()(p.a,{icon:"question",text:t.formatMessage(F.keyboard_shortcuts),to:"/keyboard-shortcuts"},"7")),u()(b.a,{icon:"asterisk",heading:t.formatMessage(F.heading),hideHeadingOnMobile:!0},void 0,u()("div",{className:"getting-started__wrapper"},void 0,u()(v.a,{text:t.formatMessage(F.navigation_subheading)}),r,u()(v.a,{text:t.formatMessage(F.settings_subheading)}),u()(p.a,{icon:"ban",text:t.formatMessage(F.blocks),to:"/blocks"}),u()(p.a,{icon:"cog",text:t.formatMessage(F.preferences),href:"/user-settings"}),u()(p.a,{icon:"sign-out",text:t.formatMessage(F.sign_out),href:"/auth/sign_out",method:"delete"})),u()("div",{className:"static-content getting-started"},void 0,u()("p",{},void 0,u()("a",{href:"https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md",rel:"noopener",target:"_blank"},void 0,u()(_.b,{id:"getting_started.faq",defaultMessage:"FAQ"}))," • ",u()("a",{href:"https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md",rel:"noopener",target:"_blank"},void 0,u()(_.b,{id:"getting_started.userguide",defaultMessage:"User Guide"}))," • ",u()("a",{href:"https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md",rel:"noopener",target:"_blank"},void 0,u()(_.b,{id:"getting_started.appsshort",defaultMessage:"Apps"}))," • ",u()("a",{href:"https://pleroma.social"},void 0,u()(_.b,{id:"getting_started.pleroma",defaultMessage:"Pleroma"})))))},t}(A.a),a.propTypes={intl:k.a.object.isRequired,myAccount:w.a.map.isRequired,columns:w.a.list,multiColumn:k.a.bool,fetchFollowRequests:k.a.func.isRequired,unreadFollowRequests:k.a.number,unreadNotifications:k.a.number},o=s))||o)||o},965:function(e,t,n){"use strict";var i=n(2),o=n.n(i),a=n(0),s=(n.n(a),n(44)),r=function(e){var t=e.icon,n=e.text,i=e.to,a=e.href,r=e.method,u=e.badge,l=void 0!==u?o()("span",{className:"column-link__badge"},void 0,u):null;return a?o()("a",{href:a,className:"column-link","data-method":r},void 0,o()("i",{className:"fa fa-fw fa-"+t+" column-link__icon"}),n,l):o()(s.b,{to:i,className:"column-link"},void 0,o()("i",{className:"fa fa-fw fa-"+t+" column-link__icon"}),n,l)};t.a=r},966:function(e,t,n){"use strict";var i=n(2),o=n.n(i),a=n(0),s=(n.n(a),function(e){var t=e.text;return o()("div",{className:"column-subheading"},void 0,t)});t.a=s}}); //# sourceMappingURL=getting_started.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/getting_started.js.map b/priv/static/packs/features/getting_started.js.map index e82e8485e..eac71e7fe 100644 --- a/priv/static/packs/features/getting_started.js.map +++ b/priv/static/packs/features/getting_started.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/getting_started.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/features/getting_started/index.js","webpack:///./app/javascript/mastodon/features/ui/components/column_link.js","webpack:///./app/javascript/mastodon/features/ui/components/column_subheading.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","Object","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","812","defineProperty","value","GettingStarted","_dec","_class","_class2","__WEBPACK_IMPORTED_MODULE_5__ui_components_column__","__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__","__WEBPACK_IMPORTED_MODULE_7__ui_components_column_subheading__","__WEBPACK_IMPORTED_MODULE_8_react_intl__","__WEBPACK_IMPORTED_MODULE_9_react_redux__","__WEBPACK_IMPORTED_MODULE_10_prop_types__","__WEBPACK_IMPORTED_MODULE_10_prop_types___default","__WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","__WEBPACK_IMPORTED_MODULE_14__actions_accounts__","__WEBPACK_IMPORTED_MODULE_15_immutable__","messages","defaultMessage","home_timeline","notifications","public_timeline","navigation_subheading","settings_subheading","community_timeline","preferences","follow_requests","sign_out","favourites","blocks","keyboard_shortcuts","mapStateToProps","state","myAccount","getIn","columns","unreadFollowRequests","size","unreadNotifications","mapDispatchToProps","dispatch","fetchFollowRequests","badgeDisplay","number","limit","_ImmutablePureCompone","componentDidMount","get","_props2","intl","multiColumn","navItems","find","item","push","text","formatMessage","to","badge","href","method","rel","target","propTypes","object","isRequired","map","list","bool","func","967","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_router_dom__","ColumnLink","_ref","badgeElement","data-method","968","ColumnSubheading"],"mappings":"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","file":"features/getting_started.js","sourcesContent":["webpackJsonp([22],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 812:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return GettingStarted; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__ = __webpack_require__(967);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_components_column_subheading__ = __webpack_require__(968);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_immutable__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'getting_started.heading',\n 'defaultMessage': 'Getting started'\n },\n home_timeline: {\n 'id': 'tabs_bar.home',\n 'defaultMessage': 'Home'\n },\n notifications: {\n 'id': 'tabs_bar.notifications',\n 'defaultMessage': 'Notifications'\n },\n public_timeline: {\n 'id': 'navigation_bar.public_timeline',\n 'defaultMessage': 'Federated timeline'\n },\n navigation_subheading: {\n 'id': 'column_subheading.navigation',\n 'defaultMessage': 'Navigation'\n },\n settings_subheading: {\n 'id': 'column_subheading.settings',\n 'defaultMessage': 'Settings'\n },\n community_timeline: {\n 'id': 'navigation_bar.community_timeline',\n 'defaultMessage': 'Local timeline'\n },\n preferences: {\n 'id': 'navigation_bar.preferences',\n 'defaultMessage': 'Preferences'\n },\n follow_requests: {\n 'id': 'navigation_bar.follow_requests',\n 'defaultMessage': 'Follow requests'\n },\n sign_out: {\n 'id': 'navigation_bar.logout',\n 'defaultMessage': 'Logout'\n },\n favourites: {\n 'id': 'navigation_bar.favourites',\n 'defaultMessage': 'Favourites'\n },\n blocks: {\n 'id': 'navigation_bar.blocks',\n 'defaultMessage': 'Blocked users'\n },\n keyboard_shortcuts: {\n 'id': 'navigation_bar.keyboard_shortcuts',\n 'defaultMessage': 'Keyboard shortcuts'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n myAccount: state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */]]),\n columns: state.getIn(['settings', 'columns']),\n unreadFollowRequests: state.getIn(['user_lists', 'follow_requests', 'items'], Object(__WEBPACK_IMPORTED_MODULE_15_immutable__[\"List\"])()).size,\n unreadNotifications: state.getIn(['notifications', 'unread'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n fetchFollowRequests: function fetchFollowRequests() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_accounts__[\"v\" /* fetchFollowRequests */])());\n }\n };\n};\n\nvar badgeDisplay = function badgeDisplay(number, limit) {\n if (number === 0) {\n return undefined;\n } else if (limit && number >= limit) {\n return limit + '+';\n } else {\n return number;\n }\n};\n\nvar GettingStarted = (_dec = Object(__WEBPACK_IMPORTED_MODULE_9_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(GettingStarted, _ImmutablePureCompone);\n\n function GettingStarted() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, GettingStarted);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n GettingStarted.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n myAccount = _props.myAccount,\n fetchFollowRequests = _props.fetchFollowRequests;\n\n\n if (myAccount.get('locked')) {\n fetchFollowRequests();\n }\n };\n\n GettingStarted.prototype.render = function render() {\n var _props2 = this.props,\n intl = _props2.intl,\n myAccount = _props2.myAccount,\n columns = _props2.columns,\n multiColumn = _props2.multiColumn,\n unreadFollowRequests = _props2.unreadFollowRequests,\n unreadNotifications = _props2.unreadNotifications;\n\n\n var navItems = [];\n\n if (multiColumn) {\n if (!columns.find(function (item) {\n return item.get('id') === 'HOME';\n })) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'home',\n text: intl.formatMessage(messages.home_timeline),\n to: '/timelines/home'\n }, '0'));\n }\n\n if (!columns.find(function (item) {\n return item.get('id') === 'NOTIFICATIONS';\n })) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'bell',\n text: intl.formatMessage(messages.notifications),\n badge: badgeDisplay(unreadNotifications),\n to: '/notifications'\n }, '1'));\n }\n\n if (!columns.find(function (item) {\n return item.get('id') === 'COMMUNITY';\n })) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'users',\n text: intl.formatMessage(messages.community_timeline),\n to: '/timelines/public/local'\n }, '2'));\n }\n\n if (!columns.find(function (item) {\n return item.get('id') === 'PUBLIC';\n })) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'globe',\n text: intl.formatMessage(messages.public_timeline),\n to: '/timelines/public'\n }, '3'));\n }\n }\n\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'star',\n text: intl.formatMessage(messages.favourites),\n to: '/favourites'\n }, '4'));\n\n if (myAccount.get('locked')) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'users',\n text: intl.formatMessage(messages.follow_requests),\n badge: badgeDisplay(unreadFollowRequests, 40),\n to: '/follow_requests'\n }, '6'));\n }\n\n if (multiColumn) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'question',\n text: intl.formatMessage(messages.keyboard_shortcuts),\n to: '/keyboard-shortcuts'\n }, '7'));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_components_column__[\"a\" /* default */], {\n icon: 'asterisk',\n heading: intl.formatMessage(messages.heading),\n hideHeadingOnMobile: true\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'getting-started__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_components_column_subheading__[\"a\" /* default */], {\n text: intl.formatMessage(messages.navigation_subheading)\n }), navItems, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_components_column_subheading__[\"a\" /* default */], {\n text: intl.formatMessage(messages.settings_subheading)\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'ban',\n text: intl.formatMessage(messages.blocks),\n to: '/blocks'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'cog',\n text: intl.formatMessage(messages.preferences),\n href: '/user-settings'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'sign-out',\n text: intl.formatMessage(messages.sign_out),\n href: '/auth/sign_out',\n method: 'delete'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'static-content getting-started'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('p', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: 'https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md',\n rel: 'noopener',\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'getting_started.faq',\n defaultMessage: 'FAQ'\n })), ' \\u2022 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: 'https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md',\n rel: 'noopener',\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'getting_started.userguide',\n defaultMessage: 'User Guide'\n })), ' \\u2022 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: 'https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md',\n rel: 'noopener',\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'getting_started.appsshort',\n defaultMessage: 'Apps'\n })), ' \\u2022 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: 'https://git.pleroma.social/pleroma/pleroma'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'getting_started.pleroma',\n defaultMessage: 'Pleroma'\n })))));\n };\n\n return GettingStarted;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n intl: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.object.isRequired,\n myAccount: __WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes___default.a.map.isRequired,\n columns: __WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes___default.a.list,\n multiColumn: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.bool,\n fetchFollowRequests: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.func.isRequired,\n unreadFollowRequests: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.number,\n unreadNotifications: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.number\n}, _temp)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 967:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar ColumnLink = function ColumnLink(_ref) {\n var icon = _ref.icon,\n text = _ref.text,\n to = _ref.to,\n href = _ref.href,\n method = _ref.method,\n badge = _ref.badge;\n\n var badgeElement = typeof badge !== 'undefined' ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-link__badge'\n }, void 0, badge) : null;\n\n if (href) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: href,\n className: 'column-link',\n 'data-method': method\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-link__icon'\n }), text, badgeElement);\n } else {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_router_dom__[\"b\" /* Link */], {\n to: to,\n className: 'column-link'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-link__icon'\n }), text, badgeElement);\n }\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (ColumnLink);\n\n/***/ }),\n\n/***/ 968:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n\n\n\n\nvar ColumnSubheading = function ColumnSubheading(_ref) {\n var text = _ref.text;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-subheading'\n }, void 0, text);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (ColumnSubheading);\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/getting_started.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport Column from '../ui/components/column';\nimport ColumnLink from '../ui/components/column_link';\nimport ColumnSubheading from '../ui/components/column_subheading';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../../initial_state';\nimport { fetchFollowRequests } from '../../actions/accounts';\nimport { List as ImmutableList } from 'immutable';\n\nconst messages = defineMessages({\n heading: { id: 'getting_started.heading', defaultMessage: 'Getting started' },\n home_timeline: { id: 'tabs_bar.home', defaultMessage: 'Home' },\n notifications: { id: 'tabs_bar.notifications', defaultMessage: 'Notifications' },\n public_timeline: { id: 'navigation_bar.public_timeline', defaultMessage: 'Federated timeline' },\n navigation_subheading: { id: 'column_subheading.navigation', defaultMessage: 'Navigation' },\n settings_subheading: { id: 'column_subheading.settings', defaultMessage: 'Settings' },\n community_timeline: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },\n preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },\n follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },\n sign_out: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },\n favourites: { id: 'navigation_bar.favourites', defaultMessage: 'Favourites' },\n blocks: { id: 'navigation_bar.blocks', defaultMessage: 'Blocked users' },\n keyboard_shortcuts: { id: 'navigation_bar.keyboard_shortcuts', defaultMessage: 'Keyboard shortcuts' },\n});\n\nconst mapStateToProps = state => ({\n myAccount: state.getIn(['accounts', me]),\n columns: state.getIn(['settings', 'columns']),\n unreadFollowRequests: state.getIn(['user_lists', 'follow_requests', 'items'], ImmutableList()).size,\n unreadNotifications: state.getIn(['notifications', 'unread']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n fetchFollowRequests: () => dispatch(fetchFollowRequests()),\n});\n\nconst badgeDisplay = (number, limit) => {\n if (number === 0) {\n return undefined;\n } else if (limit && number >= limit) {\n return `${limit}+`;\n } else {\n return number;\n }\n};\n\n@connect(mapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class GettingStarted extends ImmutablePureComponent {\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n myAccount: ImmutablePropTypes.map.isRequired,\n columns: ImmutablePropTypes.list,\n multiColumn: PropTypes.bool,\n fetchFollowRequests: PropTypes.func.isRequired,\n unreadFollowRequests: PropTypes.number,\n unreadNotifications: PropTypes.number,\n };\n\n componentDidMount () {\n const { myAccount, fetchFollowRequests } = this.props;\n\n if (myAccount.get('locked')) {\n fetchFollowRequests();\n }\n }\n\n render () {\n const { intl, myAccount, columns, multiColumn, unreadFollowRequests, unreadNotifications } = this.props;\n\n const navItems = [];\n\n if (multiColumn) {\n if (!columns.find(item => item.get('id') === 'HOME')) {\n navItems.push(<ColumnLink key='0' icon='home' text={intl.formatMessage(messages.home_timeline)} to='/timelines/home' />);\n }\n\n if (!columns.find(item => item.get('id') === 'NOTIFICATIONS')) {\n navItems.push(<ColumnLink key='1' icon='bell' text={intl.formatMessage(messages.notifications)} badge={badgeDisplay(unreadNotifications)} to='/notifications' />);\n }\n\n if (!columns.find(item => item.get('id') === 'COMMUNITY')) {\n navItems.push(<ColumnLink key='2' icon='users' text={intl.formatMessage(messages.community_timeline)} to='/timelines/public/local' />);\n }\n\n if (!columns.find(item => item.get('id') === 'PUBLIC')) {\n navItems.push(<ColumnLink key='3' icon='globe' text={intl.formatMessage(messages.public_timeline)} to='/timelines/public' />);\n }\n }\n\n navItems.push(\n <ColumnLink key='4' icon='star' text={intl.formatMessage(messages.favourites)} to='/favourites' />,\n );\n\n if (myAccount.get('locked')) {\n navItems.push(<ColumnLink key='6' icon='users' text={intl.formatMessage(messages.follow_requests)} badge={badgeDisplay(unreadFollowRequests, 40)} to='/follow_requests' />);\n }\n\n if (multiColumn) {\n navItems.push(<ColumnLink key='7' icon='question' text={intl.formatMessage(messages.keyboard_shortcuts)} to='/keyboard-shortcuts' />);\n }\n\n return (\n <Column icon='asterisk' heading={intl.formatMessage(messages.heading)} hideHeadingOnMobile>\n <div className='getting-started__wrapper'>\n <ColumnSubheading text={intl.formatMessage(messages.navigation_subheading)} />\n {navItems}\n <ColumnSubheading text={intl.formatMessage(messages.settings_subheading)} />\n <ColumnLink icon='ban' text={intl.formatMessage(messages.blocks)} to='/blocks' />\n <ColumnLink icon='cog' text={intl.formatMessage(messages.preferences)} href='/user-settings' />\n <ColumnLink icon='sign-out' text={intl.formatMessage(messages.sign_out)} href='/auth/sign_out' method='delete' />\n </div>\n\n <div className='static-content getting-started'>\n <p>\n <a href='https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md' rel='noopener' target='_blank'><FormattedMessage id='getting_started.faq' defaultMessage='FAQ' /></a> • <a href='https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md' rel='noopener' target='_blank'><FormattedMessage id='getting_started.userguide' defaultMessage='User Guide' /></a> • <a href='https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md' rel='noopener' target='_blank'><FormattedMessage id='getting_started.appsshort' defaultMessage='Apps' /></a> • <a href='https://git.pleroma.social/pleroma/pleroma'><FormattedMessage id='getting_started.pleroma' defaultMessage='Pleroma' /></a>\n </p>\n </div>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/getting_started/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\n\nconst ColumnLink = ({ icon, text, to, href, method, badge }) => {\n const badgeElement = typeof badge !== 'undefined' ? <span className='column-link__badge'>{badge}</span> : null;\n\n if (href) {\n return (\n <a href={href} className='column-link' data-method={method}>\n <i className={`fa fa-fw fa-${icon} column-link__icon`} />\n {text}\n {badgeElement}\n </a>\n );\n } else {\n return (\n <Link to={to} className='column-link'>\n <i className={`fa fa-fw fa-${icon} column-link__icon`} />\n {text}\n {badgeElement}\n </Link>\n );\n }\n};\n\nColumnLink.propTypes = {\n icon: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n to: PropTypes.string,\n href: PropTypes.string,\n method: PropTypes.string,\n badge: PropTypes.node,\n};\n\nexport default ColumnLink;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_link.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst ColumnSubheading = ({ text }) => {\n return (\n <div className='column-subheading'>\n {text}\n </div>\n );\n};\n\nColumnSubheading.propTypes = {\n text: PropTypes.string.isRequired,\n};\n\nexport default ColumnSubheading;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_subheading.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/getting_started.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/features/getting_started/index.js","webpack:///./app/javascript/mastodon/features/ui/components/column_link.js","webpack:///./app/javascript/mastodon/features/ui/components/column_subheading.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","Object","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","811","defineProperty","value","GettingStarted","_dec","_class","_class2","__WEBPACK_IMPORTED_MODULE_5__ui_components_column__","__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__","__WEBPACK_IMPORTED_MODULE_7__ui_components_column_subheading__","__WEBPACK_IMPORTED_MODULE_8_react_intl__","__WEBPACK_IMPORTED_MODULE_9_react_redux__","__WEBPACK_IMPORTED_MODULE_10_prop_types__","__WEBPACK_IMPORTED_MODULE_10_prop_types___default","__WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","__WEBPACK_IMPORTED_MODULE_14__actions_accounts__","__WEBPACK_IMPORTED_MODULE_15_immutable__","messages","defaultMessage","home_timeline","notifications","public_timeline","navigation_subheading","settings_subheading","community_timeline","preferences","follow_requests","sign_out","favourites","blocks","keyboard_shortcuts","mapStateToProps","state","myAccount","getIn","columns","unreadFollowRequests","size","unreadNotifications","mapDispatchToProps","dispatch","fetchFollowRequests","badgeDisplay","number","limit","_ImmutablePureCompone","componentDidMount","get","_props2","intl","multiColumn","navItems","find","item","push","text","formatMessage","to","badge","href","method","rel","target","propTypes","object","isRequired","map","list","bool","func","965","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_router_dom__","ColumnLink","_ref","badgeElement","data-method","966","ColumnSubheading"],"mappings":"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","file":"features/getting_started.js","sourcesContent":["webpackJsonp([21],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 811:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return GettingStarted; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__ = __webpack_require__(965);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_components_column_subheading__ = __webpack_require__(966);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_immutable__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'getting_started.heading',\n 'defaultMessage': 'Getting started'\n },\n home_timeline: {\n 'id': 'tabs_bar.home',\n 'defaultMessage': 'Home'\n },\n notifications: {\n 'id': 'tabs_bar.notifications',\n 'defaultMessage': 'Notifications'\n },\n public_timeline: {\n 'id': 'navigation_bar.public_timeline',\n 'defaultMessage': 'Federated timeline'\n },\n navigation_subheading: {\n 'id': 'column_subheading.navigation',\n 'defaultMessage': 'Navigation'\n },\n settings_subheading: {\n 'id': 'column_subheading.settings',\n 'defaultMessage': 'Settings'\n },\n community_timeline: {\n 'id': 'navigation_bar.community_timeline',\n 'defaultMessage': 'Local timeline'\n },\n preferences: {\n 'id': 'navigation_bar.preferences',\n 'defaultMessage': 'Preferences'\n },\n follow_requests: {\n 'id': 'navigation_bar.follow_requests',\n 'defaultMessage': 'Follow requests'\n },\n sign_out: {\n 'id': 'navigation_bar.logout',\n 'defaultMessage': 'Logout'\n },\n favourites: {\n 'id': 'navigation_bar.favourites',\n 'defaultMessage': 'Favourites'\n },\n blocks: {\n 'id': 'navigation_bar.blocks',\n 'defaultMessage': 'Blocked users'\n },\n keyboard_shortcuts: {\n 'id': 'navigation_bar.keyboard_shortcuts',\n 'defaultMessage': 'Keyboard shortcuts'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n myAccount: state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */]]),\n columns: state.getIn(['settings', 'columns']),\n unreadFollowRequests: state.getIn(['user_lists', 'follow_requests', 'items'], Object(__WEBPACK_IMPORTED_MODULE_15_immutable__[\"List\"])()).size,\n unreadNotifications: state.getIn(['notifications', 'unread'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n fetchFollowRequests: function fetchFollowRequests() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_accounts__[\"v\" /* fetchFollowRequests */])());\n }\n };\n};\n\nvar badgeDisplay = function badgeDisplay(number, limit) {\n if (number === 0) {\n return undefined;\n } else if (limit && number >= limit) {\n return limit + '+';\n } else {\n return number;\n }\n};\n\nvar GettingStarted = (_dec = Object(__WEBPACK_IMPORTED_MODULE_9_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(GettingStarted, _ImmutablePureCompone);\n\n function GettingStarted() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, GettingStarted);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n GettingStarted.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n myAccount = _props.myAccount,\n fetchFollowRequests = _props.fetchFollowRequests;\n\n\n if (myAccount.get('locked')) {\n fetchFollowRequests();\n }\n };\n\n GettingStarted.prototype.render = function render() {\n var _props2 = this.props,\n intl = _props2.intl,\n myAccount = _props2.myAccount,\n columns = _props2.columns,\n multiColumn = _props2.multiColumn,\n unreadFollowRequests = _props2.unreadFollowRequests,\n unreadNotifications = _props2.unreadNotifications;\n\n\n var navItems = [];\n\n if (multiColumn) {\n if (!columns.find(function (item) {\n return item.get('id') === 'HOME';\n })) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'home',\n text: intl.formatMessage(messages.home_timeline),\n to: '/timelines/home'\n }, '0'));\n }\n\n if (!columns.find(function (item) {\n return item.get('id') === 'NOTIFICATIONS';\n })) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'bell',\n text: intl.formatMessage(messages.notifications),\n badge: badgeDisplay(unreadNotifications),\n to: '/notifications'\n }, '1'));\n }\n\n if (!columns.find(function (item) {\n return item.get('id') === 'COMMUNITY';\n })) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'users',\n text: intl.formatMessage(messages.community_timeline),\n to: '/timelines/public/local'\n }, '2'));\n }\n\n if (!columns.find(function (item) {\n return item.get('id') === 'PUBLIC';\n })) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'globe',\n text: intl.formatMessage(messages.public_timeline),\n to: '/timelines/public'\n }, '3'));\n }\n }\n\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'star',\n text: intl.formatMessage(messages.favourites),\n to: '/favourites'\n }, '4'));\n\n if (myAccount.get('locked')) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'users',\n text: intl.formatMessage(messages.follow_requests),\n badge: badgeDisplay(unreadFollowRequests, 40),\n to: '/follow_requests'\n }, '6'));\n }\n\n if (multiColumn) {\n navItems.push(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'question',\n text: intl.formatMessage(messages.keyboard_shortcuts),\n to: '/keyboard-shortcuts'\n }, '7'));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_components_column__[\"a\" /* default */], {\n icon: 'asterisk',\n heading: intl.formatMessage(messages.heading),\n hideHeadingOnMobile: true\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'getting-started__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_components_column_subheading__[\"a\" /* default */], {\n text: intl.formatMessage(messages.navigation_subheading)\n }), navItems, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_components_column_subheading__[\"a\" /* default */], {\n text: intl.formatMessage(messages.settings_subheading)\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'ban',\n text: intl.formatMessage(messages.blocks),\n to: '/blocks'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'cog',\n text: intl.formatMessage(messages.preferences),\n href: '/user-settings'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_components_column_link__[\"a\" /* default */], {\n icon: 'sign-out',\n text: intl.formatMessage(messages.sign_out),\n href: '/auth/sign_out',\n method: 'delete'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'static-content getting-started'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('p', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: 'https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md',\n rel: 'noopener',\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'getting_started.faq',\n defaultMessage: 'FAQ'\n })), ' \\u2022 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: 'https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md',\n rel: 'noopener',\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'getting_started.userguide',\n defaultMessage: 'User Guide'\n })), ' \\u2022 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: 'https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md',\n rel: 'noopener',\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'getting_started.appsshort',\n defaultMessage: 'Apps'\n })), ' \\u2022 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: 'https://pleroma.social'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'getting_started.pleroma',\n defaultMessage: 'Pleroma'\n })))));\n };\n\n return GettingStarted;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n intl: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.object.isRequired,\n myAccount: __WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes___default.a.map.isRequired,\n columns: __WEBPACK_IMPORTED_MODULE_11_react_immutable_proptypes___default.a.list,\n multiColumn: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.bool,\n fetchFollowRequests: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.func.isRequired,\n unreadFollowRequests: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.number,\n unreadNotifications: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.number\n}, _temp)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 965:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar ColumnLink = function ColumnLink(_ref) {\n var icon = _ref.icon,\n text = _ref.text,\n to = _ref.to,\n href = _ref.href,\n method = _ref.method,\n badge = _ref.badge;\n\n var badgeElement = typeof badge !== 'undefined' ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-link__badge'\n }, void 0, badge) : null;\n\n if (href) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: href,\n className: 'column-link',\n 'data-method': method\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-link__icon'\n }), text, badgeElement);\n } else {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_router_dom__[\"b\" /* Link */], {\n to: to,\n className: 'column-link'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-link__icon'\n }), text, badgeElement);\n }\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (ColumnLink);\n\n/***/ }),\n\n/***/ 966:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n\n\n\n\nvar ColumnSubheading = function ColumnSubheading(_ref) {\n var text = _ref.text;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-subheading'\n }, void 0, text);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (ColumnSubheading);\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/getting_started.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport Column from '../ui/components/column';\nimport ColumnLink from '../ui/components/column_link';\nimport ColumnSubheading from '../ui/components/column_subheading';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../../initial_state';\nimport { fetchFollowRequests } from '../../actions/accounts';\nimport { List as ImmutableList } from 'immutable';\n\nconst messages = defineMessages({\n heading: { id: 'getting_started.heading', defaultMessage: 'Getting started' },\n home_timeline: { id: 'tabs_bar.home', defaultMessage: 'Home' },\n notifications: { id: 'tabs_bar.notifications', defaultMessage: 'Notifications' },\n public_timeline: { id: 'navigation_bar.public_timeline', defaultMessage: 'Federated timeline' },\n navigation_subheading: { id: 'column_subheading.navigation', defaultMessage: 'Navigation' },\n settings_subheading: { id: 'column_subheading.settings', defaultMessage: 'Settings' },\n community_timeline: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },\n preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },\n follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },\n sign_out: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },\n favourites: { id: 'navigation_bar.favourites', defaultMessage: 'Favourites' },\n blocks: { id: 'navigation_bar.blocks', defaultMessage: 'Blocked users' },\n keyboard_shortcuts: { id: 'navigation_bar.keyboard_shortcuts', defaultMessage: 'Keyboard shortcuts' },\n});\n\nconst mapStateToProps = state => ({\n myAccount: state.getIn(['accounts', me]),\n columns: state.getIn(['settings', 'columns']),\n unreadFollowRequests: state.getIn(['user_lists', 'follow_requests', 'items'], ImmutableList()).size,\n unreadNotifications: state.getIn(['notifications', 'unread']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n fetchFollowRequests: () => dispatch(fetchFollowRequests()),\n});\n\nconst badgeDisplay = (number, limit) => {\n if (number === 0) {\n return undefined;\n } else if (limit && number >= limit) {\n return `${limit}+`;\n } else {\n return number;\n }\n};\n\n@connect(mapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class GettingStarted extends ImmutablePureComponent {\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n myAccount: ImmutablePropTypes.map.isRequired,\n columns: ImmutablePropTypes.list,\n multiColumn: PropTypes.bool,\n fetchFollowRequests: PropTypes.func.isRequired,\n unreadFollowRequests: PropTypes.number,\n unreadNotifications: PropTypes.number,\n };\n\n componentDidMount () {\n const { myAccount, fetchFollowRequests } = this.props;\n\n if (myAccount.get('locked')) {\n fetchFollowRequests();\n }\n }\n\n render () {\n const { intl, myAccount, columns, multiColumn, unreadFollowRequests, unreadNotifications } = this.props;\n\n const navItems = [];\n\n if (multiColumn) {\n if (!columns.find(item => item.get('id') === 'HOME')) {\n navItems.push(<ColumnLink key='0' icon='home' text={intl.formatMessage(messages.home_timeline)} to='/timelines/home' />);\n }\n\n if (!columns.find(item => item.get('id') === 'NOTIFICATIONS')) {\n navItems.push(<ColumnLink key='1' icon='bell' text={intl.formatMessage(messages.notifications)} badge={badgeDisplay(unreadNotifications)} to='/notifications' />);\n }\n\n if (!columns.find(item => item.get('id') === 'COMMUNITY')) {\n navItems.push(<ColumnLink key='2' icon='users' text={intl.formatMessage(messages.community_timeline)} to='/timelines/public/local' />);\n }\n\n if (!columns.find(item => item.get('id') === 'PUBLIC')) {\n navItems.push(<ColumnLink key='3' icon='globe' text={intl.formatMessage(messages.public_timeline)} to='/timelines/public' />);\n }\n }\n\n navItems.push(\n <ColumnLink key='4' icon='star' text={intl.formatMessage(messages.favourites)} to='/favourites' />,\n );\n\n if (myAccount.get('locked')) {\n navItems.push(<ColumnLink key='6' icon='users' text={intl.formatMessage(messages.follow_requests)} badge={badgeDisplay(unreadFollowRequests, 40)} to='/follow_requests' />);\n }\n\n if (multiColumn) {\n navItems.push(<ColumnLink key='7' icon='question' text={intl.formatMessage(messages.keyboard_shortcuts)} to='/keyboard-shortcuts' />);\n }\n\n return (\n <Column icon='asterisk' heading={intl.formatMessage(messages.heading)} hideHeadingOnMobile>\n <div className='getting-started__wrapper'>\n <ColumnSubheading text={intl.formatMessage(messages.navigation_subheading)} />\n {navItems}\n <ColumnSubheading text={intl.formatMessage(messages.settings_subheading)} />\n <ColumnLink icon='ban' text={intl.formatMessage(messages.blocks)} to='/blocks' />\n <ColumnLink icon='cog' text={intl.formatMessage(messages.preferences)} href='/user-settings' />\n <ColumnLink icon='sign-out' text={intl.formatMessage(messages.sign_out)} href='/auth/sign_out' method='delete' />\n </div>\n\n <div className='static-content getting-started'>\n <p>\n <a href='https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md' rel='noopener' target='_blank'><FormattedMessage id='getting_started.faq' defaultMessage='FAQ' /></a> • <a href='https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md' rel='noopener' target='_blank'><FormattedMessage id='getting_started.userguide' defaultMessage='User Guide' /></a> • <a href='https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md' rel='noopener' target='_blank'><FormattedMessage id='getting_started.appsshort' defaultMessage='Apps' /></a> • <a href='https://pleroma.social'><FormattedMessage id='getting_started.pleroma' defaultMessage='Pleroma' /></a>\n </p>\n </div>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/getting_started/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\n\nconst ColumnLink = ({ icon, text, to, href, method, badge }) => {\n const badgeElement = typeof badge !== 'undefined' ? <span className='column-link__badge'>{badge}</span> : null;\n\n if (href) {\n return (\n <a href={href} className='column-link' data-method={method}>\n <i className={`fa fa-fw fa-${icon} column-link__icon`} />\n {text}\n {badgeElement}\n </a>\n );\n } else {\n return (\n <Link to={to} className='column-link'>\n <i className={`fa fa-fw fa-${icon} column-link__icon`} />\n {text}\n {badgeElement}\n </Link>\n );\n }\n};\n\nColumnLink.propTypes = {\n icon: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n to: PropTypes.string,\n href: PropTypes.string,\n method: PropTypes.string,\n badge: PropTypes.node,\n};\n\nexport default ColumnLink;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_link.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst ColumnSubheading = ({ text }) => {\n return (\n <div className='column-subheading'>\n {text}\n </div>\n );\n};\n\nColumnSubheading.propTypes = {\n text: PropTypes.string.isRequired,\n};\n\nexport default ColumnSubheading;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_subheading.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/hashtag_timeline.js b/priv/static/packs/features/hashtag_timeline.js index 88f8f10e1..cad30148f 100644 --- a/priv/static/packs/features/hashtag_timeline.js +++ b/priv/static/packs/features/hashtag_timeline.js @@ -1,2 +1,2 @@ -webpackJsonp([15],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(0),f=n.n(p),g=n(6),b=(i=o=function(e){function t(){return c()(this,t),d()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},283:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(153),c=n(66),l=n(18),d=n(67),u=n(22),h=n(91),p=n(283),f=n(151),g=n(26),b=n(6),v=n(11),m=Object(b.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(d.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(d.n)(t)):n.shiftKey||!v.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(d.m)(t):Object(d.i)(t))},onDelete:function(t){e(v.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(b.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(u.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.k)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(b.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(93),f=n.n(p),g=n(0),b=n.n(g),v=n(152),m=n(5),y=n.n(m),M=n(288),O=n(149),I=n(293),j=n(8),C=(n.n(j),n(10)),k=n.n(C),S=n(154),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new I.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(S.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,d()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(S.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(b.a.Children.count(e.children)>0&&b.a.Children.count(e.children)<b.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(S.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof j.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,d=t.emptyMessage,u=t.onLoadMore,h=this.state.fullscreen,p=b.a.Children.count(n),f=c&&p>0&&u?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||p>0||!d?b.a.createElement("div",{className:k()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,b.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):b.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},d),i?s()(v.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),d=n.n(l),u=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],b=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(u.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(u.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?d.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&d.a.cloneElement(t,{hidden:!1})):d.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&d.a.cloneElement(t,{hidden:!0}))},t}(d.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),d=n.n(l),u=n(2),h=n.n(u),p=n(1),f=n.n(p),g=n(3),b=n.n(g),v=n(4),m=n.n(v),y=n(34),M=n.n(y),O=n(0),I=n.n(O),j=n(13),C=n.n(j),k=n(5),S=n.n(k),L=n(285),_=n(12),R=n.n(_),H=n(149),x=n(287),T=n(6),P=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=b()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,b()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(H.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(R.a),o.propTypes={disabled:S.a.bool,maxId:S.a.string,onClick:S.a.func.isRequired},i),w=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=b()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,b()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=d()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(T.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(T.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(P,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return I.a.createElement(x.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(R.a),r.propTypes={scrollKey:S.a.string.isRequired,statusIds:C.a.list.isRequired,onLoadMore:S.a.func,onScrollToTop:S.a.func,onScroll:S.a.func,trackScroll:S.a.bool,shouldUpdateScroll:S.a.func,isLoading:S.a.bool,isPartial:S.a.bool,hasMore:S.a.bool,prepend:S.a.node,emptyMessage:S.a.node},r.defaultProps={trackScroll:!0},s)},809:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return C});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(0),f=n.n(p),g=n(9),b=n(92),v=n(69),m=n(68),y=n(19),M=n(297),O=n(6),I=n(70),j=function(e,t){return{hasUnread:e.getIn(["timelines","hashtag:"+t.params.id,"unread"])>0}},C=(o=Object(g.connect)(j))(i=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(M.f)(t):Object(M.d)("HASHTAG",{id:o.props.params.id}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(M.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){o.props.dispatch(Object(y.n)(o.props.params.id,{maxId:e}))},i=n,d()(o,i)}return h()(t,e),t.prototype._subscribe=function(e,t){this.disconnect=e(Object(I.b)(t))},t.prototype._unsubscribe=function(){this.disconnect&&(this.disconnect(),this.disconnect=null)},t.prototype.componentDidMount=function(){var e=this.props.dispatch,t=this.props.params.id;e(Object(y.n)(t)),this._subscribe(e,t)},t.prototype.componentWillReceiveProps=function(e){e.params.id!==this.props.params.id&&(this.props.dispatch(Object(y.n)(e.params.id)),this._unsubscribe(),this._subscribe(this.props.dispatch,e.params.id))},t.prototype.componentWillUnmount=function(){this._unsubscribe()},t.prototype.render=function(){var e=this.props,t=e.hasUnread,n=e.columnId,o=e.multiColumn,i=this.props.params.id,r=!!n;return f.a.createElement(v.a,{ref:this.setRef},s()(m.a,{icon:"hashtag",active:t,title:i,onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:r,multiColumn:o,showBackButton:!0}),s()(b.a,{trackScroll:!r,scrollKey:"hashtag_timeline-"+n,timelineId:"hashtag:"+i,onLoadMore:this.handleLoadMore,emptyMessage:s()(O.b,{id:"empty_column.hashtag",defaultMessage:"There is nothing in this hashtag yet."})}))},t}(f.a.PureComponent))||i},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),d=(n.n(l),n(11)),u=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===d.g)),r&&i&&o.get("account")!==d.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=u();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},p=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,p)(s.a)}}); +webpackJsonp([14],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(6),b=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},282:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:r,account:e,status:t}),n(Object(i.d)("REPORT"))}}t.a=o;var i=(n(14),n(26)),r="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(152),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),p=n(282),f=n(284),g=n(26),b=n(6),v=n(11),m=Object(b.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!v.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(v.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(b.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.a)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(b.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(93),f=n.n(p),g=n(0),b=n.n(g),v=n(151),m=n(5),y=n.n(m),M=n(288),O=n(149),I=n(293),j=n(8),C=(n.n(j),n(10)),k=n.n(C),S=n(153),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new I.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(S.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(S.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(b.a.Children.count(e.children)>0&&b.a.Children.count(e.children)<b.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(S.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof j.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,p=b.a.Children.count(n),f=c&&p>0&&d?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||p>0||!u?b.a.createElement("div",{className:k()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,b.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):b.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(v.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),u=n.n(l),d=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],b=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return E});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),u=n.n(l),d=n(2),h=n.n(d),p=n(1),f=n.n(p),g=n(3),b=n.n(g),v=n(4),m=n.n(v),y=n(34),M=n.n(y),O=n(0),I=n.n(O),j=n(13),C=n.n(j),k=n(5),S=n.n(k),L=n(285),_=n(12),R=n.n(_),T=n(149),H=n(287),x=n(6),P=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=b()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,b()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(T.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(R.a),o.propTypes={disabled:S.a.bool,maxId:S.a.string,onClick:S.a.func.isRequired},i),E=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=b()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,b()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(x.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(x.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(P,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return I.a.createElement(H.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(R.a),r.propTypes={scrollKey:S.a.string.isRequired,statusIds:C.a.list.isRequired,onLoadMore:S.a.func,onScrollToTop:S.a.func,onScroll:S.a.func,trackScroll:S.a.bool,shouldUpdateScroll:S.a.func,isLoading:S.a.bool,isPartial:S.a.bool,hasMore:S.a.bool,prepend:S.a.node,emptyMessage:S.a.node},r.defaultProps={trackScroll:!0},s)},808:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return C});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(9),b=n(92),v=n(69),m=n(68),y=n(19),M=n(297),O=n(6),I=n(70),j=function(e,t){return{hasUnread:e.getIn(["timelines","hashtag:"+t.params.id,"unread"])>0}},C=(o=Object(g.connect)(j))(i=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(M.f)(t):Object(M.d)("HASHTAG",{id:o.props.params.id}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(M.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){o.props.dispatch(Object(y.n)(o.props.params.id,{maxId:e}))},i=n,u()(o,i)}return h()(t,e),t.prototype._subscribe=function(e,t){this.disconnect=e(Object(I.b)(t))},t.prototype._unsubscribe=function(){this.disconnect&&(this.disconnect(),this.disconnect=null)},t.prototype.componentDidMount=function(){var e=this.props.dispatch,t=this.props.params.id;e(Object(y.n)(t)),this._subscribe(e,t)},t.prototype.componentWillReceiveProps=function(e){e.params.id!==this.props.params.id&&(this.props.dispatch(Object(y.n)(e.params.id)),this._unsubscribe(),this._subscribe(this.props.dispatch,e.params.id))},t.prototype.componentWillUnmount=function(){this._unsubscribe()},t.prototype.render=function(){var e=this.props,t=e.hasUnread,n=e.columnId,o=e.multiColumn,i=this.props.params.id,r=!!n;return f.a.createElement(v.a,{ref:this.setRef},s()(m.a,{icon:"hashtag",active:t,title:i,onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:r,multiColumn:o,showBackButton:!0}),s()(b.a,{trackScroll:!r,scrollKey:"hashtag_timeline-"+n,timelineId:"hashtag:"+i,onLoadMore:this.handleLoadMore,emptyMessage:s()(O.b,{id:"empty_column.hashtag",defaultMessage:"There is nothing in this hashtag yet."})}))},t}(f.a.PureComponent))||i},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),u=(n.n(l),n(11)),d=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===u.g)),r&&i&&o.get("account")!==u.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=d();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},p=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,p)(s.a)}}); //# sourceMappingURL=hashtag_timeline.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/hashtag_timeline.js.map b/priv/static/packs/features/hashtag_timeline.js.map index c243145a9..4e67d18f0 100644 --- a/priv/static/packs/features/hashtag_timeline.js.map +++ b/priv/static/packs/features/hashtag_timeline.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/hashtag_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/hashtag_timeline/index.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","283","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","809","defineProperty","value","HashtagTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_7__components_column__","__WEBPACK_IMPORTED_MODULE_8__components_column_header__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__actions_streaming__","mapStateToProps","hasUnread","params","handlePin","columnId","handleMove","dir","_this$props2","handleHeaderClick","column","_subscribe","_unsubscribe","componentWillReceiveProps","multiColumn","pinned","icon","active","title","onPin","onMove","showBackButton","timelineId","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","filter","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4"],"mappings":"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","file":"features/hashtag_timeline.js","sourcesContent":["webpackJsonp([15],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 809:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return HashtagTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__actions_streaming__ = __webpack_require__(70);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n hasUnread: state.getIn(['timelines', 'hashtag:' + props.params.id, 'unread']) > 0\n };\n};\n\nvar HashtagTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(HashtagTimeline, _React$PureComponent);\n\n function HashtagTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, HashtagTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('HASHTAG', { id: _this.props.params.id }));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"n\" /* expandHashtagTimeline */])(_this.props.params.id, { maxId: maxId }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n HashtagTimeline.prototype._subscribe = function _subscribe(dispatch, id) {\n this.disconnect = dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_streaming__[\"b\" /* connectHashtagStream */])(id));\n };\n\n HashtagTimeline.prototype._unsubscribe = function _unsubscribe() {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n };\n\n HashtagTimeline.prototype.componentDidMount = function componentDidMount() {\n var dispatch = this.props.dispatch;\n var id = this.props.params.id;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"n\" /* expandHashtagTimeline */])(id));\n this._subscribe(dispatch, id);\n };\n\n HashtagTimeline.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.id !== this.props.params.id) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"n\" /* expandHashtagTimeline */])(nextProps.params.id));\n this._unsubscribe();\n this._subscribe(this.props.dispatch, nextProps.params.id);\n }\n };\n\n HashtagTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n this._unsubscribe();\n };\n\n HashtagTimeline.prototype.render = function render() {\n var _props = this.props,\n hasUnread = _props.hasUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn;\n var id = this.props.params.id;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_7__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column_header__[\"a\" /* default */], {\n icon: 'hashtag',\n active: hasUnread,\n title: id,\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn,\n showBackButton: true\n }),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__[\"a\" /* default */], {\n trackScroll: !pinned,\n scrollKey: 'hashtag_timeline-' + columnId,\n timelineId: 'hashtag:' + id,\n onLoadMore: this.handleLoadMore,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.hashtag',\n defaultMessage: 'There is nothing in this hashtag yet.'\n })\n })\n );\n };\n\n return HashtagTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class);\n\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/hashtag_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { expandHashtagTimeline } from '../../actions/timelines';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { FormattedMessage } from 'react-intl';\nimport { connectHashtagStream } from '../../actions/streaming';\n\nconst mapStateToProps = (state, props) => ({\n hasUnread: state.getIn(['timelines', `hashtag:${props.params.id}`, 'unread']) > 0,\n});\n\n@connect(mapStateToProps)\nexport default class HashtagTimeline extends React.PureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n columnId: PropTypes.string,\n dispatch: PropTypes.func.isRequired,\n hasUnread: PropTypes.bool,\n multiColumn: PropTypes.bool,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('HASHTAG', { id: this.props.params.id }));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n _subscribe (dispatch, id) {\n this.disconnect = dispatch(connectHashtagStream(id));\n }\n\n _unsubscribe () {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n }\n\n componentDidMount () {\n const { dispatch } = this.props;\n const { id } = this.props.params;\n\n dispatch(expandHashtagTimeline(id));\n this._subscribe(dispatch, id);\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.id !== this.props.params.id) {\n this.props.dispatch(expandHashtagTimeline(nextProps.params.id));\n this._unsubscribe();\n this._subscribe(this.props.dispatch, nextProps.params.id);\n }\n }\n\n componentWillUnmount () {\n this._unsubscribe();\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandHashtagTimeline(this.props.params.id, { maxId }));\n }\n\n render () {\n const { hasUnread, columnId, multiColumn } = this.props;\n const { id } = this.props.params;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='hashtag'\n active={hasUnread}\n title={id}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n showBackButton\n />\n\n <StatusListContainer\n trackScroll={!pinned}\n scrollKey={`hashtag_timeline-${columnId}`}\n timelineId={`hashtag:${id}`}\n onLoadMore={this.handleLoadMore}\n emptyMessage={<FormattedMessage id='empty_column.hashtag' defaultMessage='There is nothing in this hashtag yet.' />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/hashtag_timeline/index.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/hashtag_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/hashtag_timeline/index.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","282","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","808","defineProperty","value","HashtagTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_7__components_column__","__WEBPACK_IMPORTED_MODULE_8__components_column_header__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__actions_streaming__","mapStateToProps","hasUnread","params","handlePin","columnId","handleMove","dir","_this$props2","handleHeaderClick","column","_subscribe","_unsubscribe","componentWillReceiveProps","multiColumn","pinned","icon","active","title","onPin","onMove","showBackButton","timelineId","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","filter","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4"],"mappings":"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","file":"features/hashtag_timeline.js","sourcesContent":["webpackJsonp([14],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 808:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return HashtagTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__actions_streaming__ = __webpack_require__(70);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n hasUnread: state.getIn(['timelines', 'hashtag:' + props.params.id, 'unread']) > 0\n };\n};\n\nvar HashtagTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(HashtagTimeline, _React$PureComponent);\n\n function HashtagTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, HashtagTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('HASHTAG', { id: _this.props.params.id }));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"n\" /* expandHashtagTimeline */])(_this.props.params.id, { maxId: maxId }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n HashtagTimeline.prototype._subscribe = function _subscribe(dispatch, id) {\n this.disconnect = dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_streaming__[\"b\" /* connectHashtagStream */])(id));\n };\n\n HashtagTimeline.prototype._unsubscribe = function _unsubscribe() {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n };\n\n HashtagTimeline.prototype.componentDidMount = function componentDidMount() {\n var dispatch = this.props.dispatch;\n var id = this.props.params.id;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"n\" /* expandHashtagTimeline */])(id));\n this._subscribe(dispatch, id);\n };\n\n HashtagTimeline.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.id !== this.props.params.id) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"n\" /* expandHashtagTimeline */])(nextProps.params.id));\n this._unsubscribe();\n this._subscribe(this.props.dispatch, nextProps.params.id);\n }\n };\n\n HashtagTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n this._unsubscribe();\n };\n\n HashtagTimeline.prototype.render = function render() {\n var _props = this.props,\n hasUnread = _props.hasUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn;\n var id = this.props.params.id;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_7__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column_header__[\"a\" /* default */], {\n icon: 'hashtag',\n active: hasUnread,\n title: id,\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn,\n showBackButton: true\n }),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__[\"a\" /* default */], {\n trackScroll: !pinned,\n scrollKey: 'hashtag_timeline-' + columnId,\n timelineId: 'hashtag:' + id,\n onLoadMore: this.handleLoadMore,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.hashtag',\n defaultMessage: 'There is nothing in this hashtag yet.'\n })\n })\n );\n };\n\n return HashtagTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class);\n\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/hashtag_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { expandHashtagTimeline } from '../../actions/timelines';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { FormattedMessage } from 'react-intl';\nimport { connectHashtagStream } from '../../actions/streaming';\n\nconst mapStateToProps = (state, props) => ({\n hasUnread: state.getIn(['timelines', `hashtag:${props.params.id}`, 'unread']) > 0,\n});\n\n@connect(mapStateToProps)\nexport default class HashtagTimeline extends React.PureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n columnId: PropTypes.string,\n dispatch: PropTypes.func.isRequired,\n hasUnread: PropTypes.bool,\n multiColumn: PropTypes.bool,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('HASHTAG', { id: this.props.params.id }));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n _subscribe (dispatch, id) {\n this.disconnect = dispatch(connectHashtagStream(id));\n }\n\n _unsubscribe () {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n }\n\n componentDidMount () {\n const { dispatch } = this.props;\n const { id } = this.props.params;\n\n dispatch(expandHashtagTimeline(id));\n this._subscribe(dispatch, id);\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.id !== this.props.params.id) {\n this.props.dispatch(expandHashtagTimeline(nextProps.params.id));\n this._unsubscribe();\n this._subscribe(this.props.dispatch, nextProps.params.id);\n }\n }\n\n componentWillUnmount () {\n this._unsubscribe();\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandHashtagTimeline(this.props.params.id, { maxId }));\n }\n\n render () {\n const { hasUnread, columnId, multiColumn } = this.props;\n const { id } = this.props.params;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='hashtag'\n active={hasUnread}\n title={id}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n showBackButton\n />\n\n <StatusListContainer\n trackScroll={!pinned}\n scrollKey={`hashtag_timeline-${columnId}`}\n timelineId={`hashtag:${id}`}\n onLoadMore={this.handleLoadMore}\n emptyMessage={<FormattedMessage id='empty_column.hashtag' defaultMessage='There is nothing in this hashtag yet.' />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/hashtag_timeline/index.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/home_timeline.js b/priv/static/packs/features/home_timeline.js index f36da8eac..93e9ed357 100644 --- a/priv/static/packs/features/home_timeline.js +++ b/priv/static/packs/features/home_timeline.js @@ -1,2 +1,2 @@ -webpackJsonp([7],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(0),p=n.n(f),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(p.a.PureComponent),o.defaultProps={visible:!0},i)},283:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(153),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),f=n(283),p=n(151),g=n(26),v=n(6),b=n(11),m=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},k=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!b.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(b.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(p.k)(t.get("account"),t))},onMute:function(t){e(Object(f.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,k)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return S});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(93),p=n.n(f),g=n(0),v=n.n(g),b=n(152),m=n(5),y=n.n(m),k=n(288),M=n(149),O=n(293),_=n(8),C=(n.n(_),n(10)),I=n.n(C),j=n(154),S=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new O.a,o.handleScroll=p()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=p()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(j.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(j.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(j.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof _.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,f=v.a.Children.count(n),p=c&&f>0&&d?s()(M.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||f>0||!u?v.a.createElement("div",{className:I()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(k.a,{id:t.key,index:n,listLength:f,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),p)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(b.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),u=n.n(l),d=n(290),h=n(292),f=n(8),p=(n.n(f),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:p).every(function(t){return Object(f.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return R});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),u=n.n(l),d=n(2),h=n.n(d),f=n(1),p=n.n(f),g=n(3),v=n.n(g),b=n(4),m=n.n(b),y=n(34),k=n.n(y),M=n(0),O=n.n(M),_=n(13),C=n.n(_),I=n(5),j=n.n(I),S=n(285),x=n(12),P=n.n(x),w=n(149),L=n(287),T=n(6),E=(i=o=function(e){function t(){var n,o,i;p()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,v()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(w.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(P.a),o.propTypes={disabled:j.a.bool,maxId:j.a.string,onClick:j.a.func.isRequired},i),R=(s=r=function(e){function t(){var n,o,i;p()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=k()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,v()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(T.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(T.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(E,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(S.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return O.a.createElement(L.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(P.a),r.propTypes={scrollKey:j.a.string.isRequired,statusIds:C.a.list.isRequired,onLoadMore:j.a.func,onScrollToTop:j.a.func,onScroll:j.a.func,trackScroll:j.a.bool,shouldUpdateScroll:j.a.func,isLoading:j.a.bool,isPartial:j.a.bool,hasMore:j.a.bool,prepend:j.a.node,emptyMessage:j.a.node},r.defaultProps={trackScroll:!0},s)},806:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return j});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(0),p=n.n(f),g=n(9),v=n(19),b=n(92),m=n(69),y=n(68),k=n(297),M=n(6),O=n(960),_=n(44),C=Object(M.f)({title:{id:"column.home",defaultMessage:"Home"}}),I=function(e){return{hasUnread:e.getIn(["timelines","home","unread"])>0,isPartial:null===e.getIn(["timelines","home","items",0],null)}},j=(o=Object(g.connect)(I))(i=Object(M.g)(i=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(k.f)(t):Object(k.d)("HOME",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(k.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){o.props.dispatch(Object(v.o)({maxId:e}))},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this._checkIfReloadNeeded(!1,this.props.isPartial)},t.prototype.componentDidUpdate=function(e){this._checkIfReloadNeeded(e.isPartial,this.props.isPartial)},t.prototype.componentWillUnmount=function(){this._stopPolling()},t.prototype._checkIfReloadNeeded=function(e,t){var n=this.props.dispatch;e!==t&&(!e&&t?this.polling=setInterval(function(){n(Object(v.o)())},3e3):e&&!t&&this._stopPolling())},t.prototype._stopPolling=function(){this.polling&&(clearInterval(this.polling),this.polling=null)},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.hasUnread,o=e.columnId,i=e.multiColumn,r=!!o;return p.a.createElement(m.a,{ref:this.setRef},s()(y.a,{icon:"home",active:n,title:t.formatMessage(C.title),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:r,multiColumn:i},void 0,s()(O.a,{})),s()(b.a,{trackScroll:!r,scrollKey:"home_timeline-"+o,onLoadMore:this.handleLoadMore,timelineId:"home",emptyMessage:s()(M.b,{id:"empty_column.home",defaultMessage:"Your home timeline is empty! Visit {public} or use search to get started and meet other users.",values:{public:s()(_.b,{to:"/timelines/public"},void 0,s()(M.b,{id:"empty_column.home.public_timeline",defaultMessage:"the public timeline"}))}})}))},t}(p.a.PureComponent))||i)||i},856:function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var n={};for(var o in e)t.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var c=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},l=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),u=n(0),d=o(u),h=n(10),f=o(h),p=n(5),g=o(p),v=n(858),b=o(v),m=n(859),y=o(m),k=n(860),M=function(e){function t(e){r(this,t);var n=s(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleClick=n.handleClick.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.handleTouchEnd=n.handleTouchEnd.bind(n),n.handleFocus=n.handleFocus.bind(n),n.handleBlur=n.handleBlur.bind(n),n.previouslyChecked=!(!e.checked&&!e.defaultChecked),n.state={checked:!(!e.checked&&!e.defaultChecked),hasFocus:!1},n}return a(t,e),l(t,[{key:"componentWillReceiveProps",value:function(e){"checked"in e&&this.setState({checked:!!e.checked})}},{key:"handleClick",value:function(e){var t=this.input;if(e.target!==t&&!this.moved)return this.previouslyChecked=t.checked,e.preventDefault(),t.focus(),void t.click();var n=this.props.hasOwnProperty("checked")?this.props.checked:t.checked;this.setState({checked:n})}},{key:"handleTouchStart",value:function(e){this.startX=(0,k.pointerCoord)(e).x,this.activated=!0}},{key:"handleTouchMove",value:function(e){if(this.activated&&(this.moved=!0,this.startX)){var t=(0,k.pointerCoord)(e).x;this.state.checked&&t+15<this.startX?(this.setState({checked:!1}),this.startX=t,this.activated=!0):t-15>this.startX&&(this.setState({checked:!0}),this.startX=t,this.activated=t<this.startX+5)}}},{key:"handleTouchEnd",value:function(e){if(this.moved){var t=this.input;if(e.preventDefault(),this.startX){var n=(0,k.pointerCoord)(e).x;!0===this.previouslyChecked&&this.startX+4>n?this.previouslyChecked!==this.state.checked&&(this.setState({checked:!1}),this.previouslyChecked=this.state.checked,t.click()):this.startX-4<n&&this.previouslyChecked!==this.state.checked&&(this.setState({checked:!0}),this.previouslyChecked=this.state.checked,t.click()),this.activated=!1,this.startX=null,this.moved=!1}}}},{key:"handleFocus",value:function(e){var t=this.props.onFocus;t&&t(e),this.setState({hasFocus:!0})}},{key:"handleBlur",value:function(e){var t=this.props.onBlur;t&&t(e),this.setState({hasFocus:!1})}},{key:"getIcon",value:function(e){var n=this.props.icons;return n?void 0===n[e]?t.defaultProps.icons[e]:n[e]:null}},{key:"render",value:function(){var e=this,t=this.props,n=t.className,o=(t.icons,i(t,["className","icons"])),r=(0,f.default)("react-toggle",{"react-toggle--checked":this.state.checked,"react-toggle--focus":this.state.hasFocus,"react-toggle--disabled":this.props.disabled},n);return d.default.createElement("div",{className:r,onClick:this.handleClick,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd},d.default.createElement("div",{className:"react-toggle-track"},d.default.createElement("div",{className:"react-toggle-track-check"},this.getIcon("checked")),d.default.createElement("div",{className:"react-toggle-track-x"},this.getIcon("unchecked"))),d.default.createElement("div",{className:"react-toggle-thumb"}),d.default.createElement("input",c({},o,{ref:function(t){e.input=t},onFocus:this.handleFocus,onBlur:this.handleBlur,className:"react-toggle-screenreader-only",type:"checkbox"})))}}]),t}(u.PureComponent);t.default=M,M.displayName="Toggle",M.defaultProps={icons:{checked:d.default.createElement(b.default,null),unchecked:d.default.createElement(y.default,null)}},M.propTypes={checked:g.default.bool,disabled:g.default.bool,defaultChecked:g.default.bool,onChange:g.default.func,onFocus:g.default.func,onBlur:g.default.func,className:g.default.string,name:g.default.string,value:g.default.string,id:g.default.string,"aria-labelledby":g.default.string,"aria-label":g.default.string,icons:g.default.oneOfType([g.default.bool,g.default.shape({checked:g.default.node,unchecked:g.default.node})])}},858:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(o);t.default=function(){return i.default.createElement("svg",{width:"14",height:"11",viewBox:"0 0 14 11"},i.default.createElement("title",null,"switch-check"),i.default.createElement("path",{d:"M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0",fill:"#fff",fillRule:"evenodd"}))}},859:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(o);t.default=function(){return i.default.createElement("svg",{width:"10",height:"10",viewBox:"0 0 10 10"},i.default.createElement("title",null,"switch-x"),i.default.createElement("path",{d:"M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12",fill:"#fff",fillRule:"evenodd"}))}},860:function(e,t,n){"use strict";function o(e){if(e){var t=e.changedTouches;if(t&&t.length>0){var n=t[0];return{x:n.clientX,y:n.clientY}}var o=e.pageX;if(void 0!==o)return{x:o,y:e.pageY}}return{x:0,y:0}}Object.defineProperty(t,"__esModule",{value:!0}),t.pointerCoord=o},861:function(e,t,n){"use strict";n.d(t,"a",function(){return f});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleChange=function(e){o.props.onChange(o.props.settingKey,e.target.value)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.settingKey,o=e.label;return i()("label",{},void 0,i()("span",{style:{display:"none"}},void 0,o),i()("input",{className:"setting-text",value:t.getIn(n),onChange:this.handleChange,placeholder:o}))},t}(h.a.PureComponent)},871:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=n(856),p=n.n(f),g=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.onChange=function(e){var t=e.target;o.props.onChange(o.props.settingPath,t.checked)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.prefix,n=e.settings,o=e.settingPath,r=e.label,s=e.meta,a=["setting-toggle",t].concat(o).filter(Boolean).join("-");return i()("div",{className:"setting-toggle"},void 0,i()(p.a,{id:a,checked:n.getIn(o),onChange:this.onChange,onKeyDown:this.onKeyDown}),i()("label",{htmlFor:a,className:"setting-toggle__label"},void 0,r),s&&i()("span",{className:"setting-meta__label"},void 0,s))},t}(h.a.PureComponent)},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),u=(n.n(l),n(11)),d=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===u.g)),r&&i&&o.get("account")!==u.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=d();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},f=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,f)(s.a)},960:function(e,t,n){"use strict";var o=n(9),i=n(961),r=n(57),s=function(e){return{settings:e.getIn(["settings","home"])}},a=function(e){return{onChange:function(t,n){e(Object(r.c)(["home"].concat(t),n))},onSave:function(){e(Object(r.d)())}}};t.a=Object(o.connect)(s,a)(i.a)},961:function(e,t,n){"use strict";n.d(t,"a",function(){return m});var o,i=n(2),r=n.n(i),s=n(1),a=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),h=n(0),f=n.n(h),p=n(6),g=n(871),v=n(861),b=Object(p.f)({filter_regex:{id:"home.column_settings.filter_regex",defaultMessage:"Filter out by regular expressions"},settings:{id:"home.settings",defaultMessage:"Column settings"}}),m=Object(p.g)(o=function(e){function t(){return a()(this,t),l()(this,e.apply(this,arguments))}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.onChange,o=e.intl;return r()("div",{},void 0,r()("span",{className:"column-settings__section"},void 0,r()(p.b,{id:"home.column_settings.basic",defaultMessage:"Basic"})),r()("div",{className:"column-settings__row"},void 0,r()(g.a,{prefix:"home_timeline",settings:t,settingPath:["shows","reblog"],onChange:n,label:r()(p.b,{id:"home.column_settings.show_reblogs",defaultMessage:"Show boosts"})})),r()("div",{className:"column-settings__row"},void 0,r()(g.a,{prefix:"home_timeline",settings:t,settingPath:["shows","reply"],onChange:n,label:r()(p.b,{id:"home.column_settings.show_replies",defaultMessage:"Show replies"})})),r()("span",{className:"column-settings__section"},void 0,r()(p.b,{id:"home.column_settings.advanced",defaultMessage:"Advanced"})),r()("div",{className:"column-settings__row"},void 0,r()(v.a,{prefix:"home_timeline",settings:t,settingKey:["regex","body"],onChange:n,label:o.formatMessage(b.filter_regex)})))},t}(f.a.PureComponent))||o}}); +webpackJsonp([7],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(0),p=n.n(f),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(p.a.PureComponent),o.defaultProps={visible:!0},i)},282:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:r,account:e,status:t}),n(Object(i.d)("REPORT"))}}t.a=o;var i=(n(14),n(26)),r="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(152),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),f=n(282),p=n(284),g=n(26),v=n(6),b=n(11),m=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},k=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!b.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(b.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(p.a)(t.get("account"),t))},onMute:function(t){e(Object(f.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,k)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return S});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(93),p=n.n(f),g=n(0),v=n.n(g),b=n(151),m=n(5),y=n.n(m),k=n(288),M=n(149),O=n(293),_=n(8),C=(n.n(_),n(10)),I=n.n(C),j=n(153),S=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new O.a,o.handleScroll=p()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=p()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(j.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(j.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(j.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof _.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,f=v.a.Children.count(n),p=c&&f>0&&d?s()(M.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||f>0||!u?v.a.createElement("div",{className:I()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(k.a,{id:t.key,index:n,listLength:f,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),p)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(b.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),u=n.n(l),d=n(290),h=n(292),f=n(8),p=(n.n(f),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:p).every(function(t){return Object(f.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return R});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),u=n.n(l),d=n(2),h=n.n(d),f=n(1),p=n.n(f),g=n(3),v=n.n(g),b=n(4),m=n.n(b),y=n(34),k=n.n(y),M=n(0),O=n.n(M),_=n(13),C=n.n(_),I=n(5),j=n.n(I),S=n(285),P=n(12),x=n.n(P),T=n(149),w=n(287),L=n(6),E=(i=o=function(e){function t(){var n,o,i;p()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,v()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(T.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(x.a),o.propTypes={disabled:j.a.bool,maxId:j.a.string,onClick:j.a.func.isRequired},i),R=(s=r=function(e){function t(){var n,o,i;p()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=k()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,v()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(L.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(L.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(E,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(S.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return O.a.createElement(w.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(x.a),r.propTypes={scrollKey:j.a.string.isRequired,statusIds:C.a.list.isRequired,onLoadMore:j.a.func,onScrollToTop:j.a.func,onScroll:j.a.func,trackScroll:j.a.bool,shouldUpdateScroll:j.a.func,isLoading:j.a.bool,isPartial:j.a.bool,hasMore:j.a.bool,prepend:j.a.node,emptyMessage:j.a.node},r.defaultProps={trackScroll:!0},s)},805:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return j});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(0),p=n.n(f),g=n(9),v=n(19),b=n(92),m=n(69),y=n(68),k=n(297),M=n(6),O=n(958),_=n(44),C=Object(M.f)({title:{id:"column.home",defaultMessage:"Home"}}),I=function(e){return{hasUnread:e.getIn(["timelines","home","unread"])>0,isPartial:null===e.getIn(["timelines","home","items",0],null)}},j=(o=Object(g.connect)(I))(i=Object(M.g)(i=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(k.f)(t):Object(k.d)("HOME",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(k.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){o.props.dispatch(Object(v.o)({maxId:e}))},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this._checkIfReloadNeeded(!1,this.props.isPartial)},t.prototype.componentDidUpdate=function(e){this._checkIfReloadNeeded(e.isPartial,this.props.isPartial)},t.prototype.componentWillUnmount=function(){this._stopPolling()},t.prototype._checkIfReloadNeeded=function(e,t){var n=this.props.dispatch;e!==t&&(!e&&t?this.polling=setInterval(function(){n(Object(v.o)())},3e3):e&&!t&&this._stopPolling())},t.prototype._stopPolling=function(){this.polling&&(clearInterval(this.polling),this.polling=null)},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.hasUnread,o=e.columnId,i=e.multiColumn,r=!!o;return p.a.createElement(m.a,{ref:this.setRef},s()(y.a,{icon:"home",active:n,title:t.formatMessage(C.title),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:r,multiColumn:i},void 0,s()(O.a,{})),s()(b.a,{trackScroll:!r,scrollKey:"home_timeline-"+o,onLoadMore:this.handleLoadMore,timelineId:"home",emptyMessage:s()(M.b,{id:"empty_column.home",defaultMessage:"Your home timeline is empty! Visit {public} or use search to get started and meet other users.",values:{public:s()(_.b,{to:"/timelines/public"},void 0,s()(M.b,{id:"empty_column.home.public_timeline",defaultMessage:"the public timeline"}))}})}))},t}(p.a.PureComponent))||i)||i},855:function(e,t,n){"use strict";n.d(t,"a",function(){return f});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleChange=function(e){o.props.onChange(o.props.settingKey,e.target.value)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.settingKey,o=e.label;return i()("label",{},void 0,i()("span",{style:{display:"none"}},void 0,o),i()("input",{className:"setting-text",value:t.getIn(n),onChange:this.handleChange,placeholder:o}))},t}(h.a.PureComponent)},865:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=n(866),p=n.n(f),g=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.onChange=function(e){var t=e.target;o.props.onChange(o.props.settingPath,t.checked)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.prefix,n=e.settings,o=e.settingPath,r=e.label,s=e.meta,a=["setting-toggle",t].concat(o).filter(Boolean).join("-");return i()("div",{className:"setting-toggle"},void 0,i()(p.a,{id:a,checked:n.getIn(o),onChange:this.onChange,onKeyDown:this.onKeyDown}),i()("label",{htmlFor:a,className:"setting-toggle__label"},void 0,r),s&&i()("span",{className:"setting-meta__label"},void 0,s))},t}(h.a.PureComponent)},866:function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var n={};for(var o in e)t.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var c=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},l=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),u=n(0),d=o(u),h=n(10),f=o(h),p=n(5),g=o(p),v=n(867),b=o(v),m=n(868),y=o(m),k=n(869),M=function(e){function t(e){r(this,t);var n=s(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleClick=n.handleClick.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.handleTouchEnd=n.handleTouchEnd.bind(n),n.handleFocus=n.handleFocus.bind(n),n.handleBlur=n.handleBlur.bind(n),n.previouslyChecked=!(!e.checked&&!e.defaultChecked),n.state={checked:!(!e.checked&&!e.defaultChecked),hasFocus:!1},n}return a(t,e),l(t,[{key:"componentWillReceiveProps",value:function(e){"checked"in e&&this.setState({checked:!!e.checked})}},{key:"handleClick",value:function(e){var t=this.input;if(e.target!==t&&!this.moved)return this.previouslyChecked=t.checked,e.preventDefault(),t.focus(),void t.click();var n=this.props.hasOwnProperty("checked")?this.props.checked:t.checked;this.setState({checked:n})}},{key:"handleTouchStart",value:function(e){this.startX=(0,k.pointerCoord)(e).x,this.activated=!0}},{key:"handleTouchMove",value:function(e){if(this.activated&&(this.moved=!0,this.startX)){var t=(0,k.pointerCoord)(e).x;this.state.checked&&t+15<this.startX?(this.setState({checked:!1}),this.startX=t,this.activated=!0):t-15>this.startX&&(this.setState({checked:!0}),this.startX=t,this.activated=t<this.startX+5)}}},{key:"handleTouchEnd",value:function(e){if(this.moved){var t=this.input;if(e.preventDefault(),this.startX){var n=(0,k.pointerCoord)(e).x;!0===this.previouslyChecked&&this.startX+4>n?this.previouslyChecked!==this.state.checked&&(this.setState({checked:!1}),this.previouslyChecked=this.state.checked,t.click()):this.startX-4<n&&this.previouslyChecked!==this.state.checked&&(this.setState({checked:!0}),this.previouslyChecked=this.state.checked,t.click()),this.activated=!1,this.startX=null,this.moved=!1}}}},{key:"handleFocus",value:function(e){var t=this.props.onFocus;t&&t(e),this.setState({hasFocus:!0})}},{key:"handleBlur",value:function(e){var t=this.props.onBlur;t&&t(e),this.setState({hasFocus:!1})}},{key:"getIcon",value:function(e){var n=this.props.icons;return n?void 0===n[e]?t.defaultProps.icons[e]:n[e]:null}},{key:"render",value:function(){var e=this,t=this.props,n=t.className,o=(t.icons,i(t,["className","icons"])),r=(0,f.default)("react-toggle",{"react-toggle--checked":this.state.checked,"react-toggle--focus":this.state.hasFocus,"react-toggle--disabled":this.props.disabled},n);return d.default.createElement("div",{className:r,onClick:this.handleClick,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd},d.default.createElement("div",{className:"react-toggle-track"},d.default.createElement("div",{className:"react-toggle-track-check"},this.getIcon("checked")),d.default.createElement("div",{className:"react-toggle-track-x"},this.getIcon("unchecked"))),d.default.createElement("div",{className:"react-toggle-thumb"}),d.default.createElement("input",c({},o,{ref:function(t){e.input=t},onFocus:this.handleFocus,onBlur:this.handleBlur,className:"react-toggle-screenreader-only",type:"checkbox"})))}}]),t}(u.PureComponent);t.default=M,M.displayName="Toggle",M.defaultProps={icons:{checked:d.default.createElement(b.default,null),unchecked:d.default.createElement(y.default,null)}},M.propTypes={checked:g.default.bool,disabled:g.default.bool,defaultChecked:g.default.bool,onChange:g.default.func,onFocus:g.default.func,onBlur:g.default.func,className:g.default.string,name:g.default.string,value:g.default.string,id:g.default.string,"aria-labelledby":g.default.string,"aria-label":g.default.string,icons:g.default.oneOfType([g.default.bool,g.default.shape({checked:g.default.node,unchecked:g.default.node})])}},867:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(o);t.default=function(){return i.default.createElement("svg",{width:"14",height:"11",viewBox:"0 0 14 11"},i.default.createElement("title",null,"switch-check"),i.default.createElement("path",{d:"M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0",fill:"#fff",fillRule:"evenodd"}))}},868:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(o);t.default=function(){return i.default.createElement("svg",{width:"10",height:"10",viewBox:"0 0 10 10"},i.default.createElement("title",null,"switch-x"),i.default.createElement("path",{d:"M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12",fill:"#fff",fillRule:"evenodd"}))}},869:function(e,t,n){"use strict";function o(e){if(e){var t=e.changedTouches;if(t&&t.length>0){var n=t[0];return{x:n.clientX,y:n.clientY}}var o=e.pageX;if(void 0!==o)return{x:o,y:e.pageY}}return{x:0,y:0}}Object.defineProperty(t,"__esModule",{value:!0}),t.pointerCoord=o},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),u=(n.n(l),n(11)),d=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===u.g)),r&&i&&o.get("account")!==u.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=d();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},f=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,f)(s.a)},958:function(e,t,n){"use strict";var o=n(9),i=n(959),r=n(57),s=function(e){return{settings:e.getIn(["settings","home"])}},a=function(e){return{onChange:function(t,n){e(Object(r.c)(["home"].concat(t),n))},onSave:function(){e(Object(r.d)())}}};t.a=Object(o.connect)(s,a)(i.a)},959:function(e,t,n){"use strict";n.d(t,"a",function(){return m});var o,i=n(2),r=n.n(i),s=n(1),a=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),h=n(0),f=n.n(h),p=n(6),g=n(865),v=n(855),b=Object(p.f)({filter_regex:{id:"home.column_settings.filter_regex",defaultMessage:"Filter out by regular expressions"},settings:{id:"home.settings",defaultMessage:"Column settings"}}),m=Object(p.g)(o=function(e){function t(){return a()(this,t),l()(this,e.apply(this,arguments))}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.onChange,o=e.intl;return r()("div",{},void 0,r()("span",{className:"column-settings__section"},void 0,r()(p.b,{id:"home.column_settings.basic",defaultMessage:"Basic"})),r()("div",{className:"column-settings__row"},void 0,r()(g.a,{prefix:"home_timeline",settings:t,settingPath:["shows","reblog"],onChange:n,label:r()(p.b,{id:"home.column_settings.show_reblogs",defaultMessage:"Show boosts"})})),r()("div",{className:"column-settings__row"},void 0,r()(g.a,{prefix:"home_timeline",settings:t,settingPath:["shows","reply"],onChange:n,label:r()(p.b,{id:"home.column_settings.show_replies",defaultMessage:"Show replies"})})),r()("span",{className:"column-settings__section"},void 0,r()(p.b,{id:"home.column_settings.advanced",defaultMessage:"Advanced"})),r()("div",{className:"column-settings__row"},void 0,r()(v.a,{prefix:"home_timeline",settings:t,settingKey:["regex","body"],onChange:n,label:o.formatMessage(b.filter_regex)})))},t}(f.a.PureComponent))||o}}); //# sourceMappingURL=home_timeline.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/home_timeline.js.map b/priv/static/packs/features/home_timeline.js.map index 966b0bf8c..4e6aaeca1 100644 --- a/priv/static/packs/features/home_timeline.js.map +++ b/priv/static/packs/features/home_timeline.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/home_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/home_timeline/index.js","webpack:///./node_modules/react-toggle/dist/component/index.js","webpack:///./node_modules/react-toggle/dist/component/check.js","webpack:///./node_modules/react-toggle/dist/component/x.js","webpack:///./node_modules/react-toggle/dist/component/util.js","webpack:///./app/javascript/mastodon/components/setting_text.js","webpack:///./app/javascript/mastodon/features/notifications/components/setting_toggle.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js","webpack:///./app/javascript/mastodon/features/home_timeline/containers/column_settings_container.js","webpack:///./app/javascript/mastodon/features/home_timeline/components/column_settings.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","283","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","806","defineProperty","value","HomeTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6__actions_timelines__","__WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_8__components_column__","__WEBPACK_IMPORTED_MODULE_9__components_column_header__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","title","mapStateToProps","hasUnread","handlePin","columnId","handleMove","dir","_this$props2","handleHeaderClick","column","_checkIfReloadNeeded","_stopPolling","wasPartial","polling","setInterval","clearInterval","multiColumn","pinned","icon","active","onPin","onMove","timelineId","public","to","856","_interopRequireDefault","obj","__esModule","default","_objectWithoutProperties","keys","hasOwnProperty","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","enumerable","writable","configurable","setPrototypeOf","__proto__","_extends","assign","source","_createClass","defineProperties","descriptor","protoProps","staticProps","_react","_react2","_classnames","_classnames2","_propTypes","_propTypes2","_check","_check2","_x","_x2","_util","Toggle","getPrototypeOf","bind","handleTouchStart","handleTouchMove","handleTouchEnd","handleFocus","handleBlur","previouslyChecked","checked","defaultChecked","hasFocus","event","checkbox","input","moved","click","startX","pointerCoord","x","activated","currentX","endX","onFocus","onBlur","icons","inputProps","classes","react-toggle--checked","react-toggle--focus","react-toggle--disabled","onTouchStart","onTouchMove","onTouchEnd","getIcon","displayName","unchecked","onChange","aria-labelledby","aria-label","oneOfType","shape","858","viewBox","fill","fillRule","859","860","changedTouches","touch","clientX","y","clientY","pageX","pageY","861","SettingText","handleChange","settingKey","settings","label","display","placeholder","871","SettingToggle","__WEBPACK_IMPORTED_MODULE_5_react_toggle__","__WEBPACK_IMPORTED_MODULE_5_react_toggle___default","settingPath","prefix","meta","filter","Boolean","join","onKeyDown","htmlFor","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4","960","__WEBPACK_IMPORTED_MODULE_1__components_column_settings__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","onSave","961","ColumnSettings","__WEBPACK_IMPORTED_MODULE_6__notifications_components_setting_toggle__","__WEBPACK_IMPORTED_MODULE_7__components_setting_text__","filter_regex"],"mappings":"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","file":"features/home_timeline.js","sourcesContent":["webpackJsonp([7],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 806:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return HomeTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__ = __webpack_require__(960);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n title: {\n 'id': 'column.home',\n 'defaultMessage': 'Home'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0,\n isPartial: state.getIn(['timelines', 'home', 'items', 0], null) === null\n };\n};\n\nvar HomeTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(HomeTimeline, _React$PureComponent);\n\n function HomeTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, HomeTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('HOME', {}));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_timelines__[\"o\" /* expandHomeTimeline */])({ maxId: maxId }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n HomeTimeline.prototype.componentDidMount = function componentDidMount() {\n this._checkIfReloadNeeded(false, this.props.isPartial);\n };\n\n HomeTimeline.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n this._checkIfReloadNeeded(prevProps.isPartial, this.props.isPartial);\n };\n\n HomeTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n this._stopPolling();\n };\n\n HomeTimeline.prototype._checkIfReloadNeeded = function _checkIfReloadNeeded(wasPartial, isPartial) {\n var dispatch = this.props.dispatch;\n\n\n if (wasPartial === isPartial) {\n return;\n } else if (!wasPartial && isPartial) {\n this.polling = setInterval(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_timelines__[\"o\" /* expandHomeTimeline */])());\n }, 3000);\n } else if (wasPartial && !isPartial) {\n this._stopPolling();\n }\n };\n\n HomeTimeline.prototype._stopPolling = function _stopPolling() {\n if (this.polling) {\n clearInterval(this.polling);\n this.polling = null;\n }\n };\n\n HomeTimeline.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n hasUnread = _props.hasUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_8__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_column_header__[\"a\" /* default */], {\n icon: 'home',\n active: hasUnread,\n title: intl.formatMessage(messages.title),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__[\"a\" /* default */], {})),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__[\"a\" /* default */], {\n trackScroll: !pinned,\n scrollKey: 'home_timeline-' + columnId,\n onLoadMore: this.handleLoadMore,\n timelineId: 'home',\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.home',\n defaultMessage: 'Your home timeline is empty! Visit {public} or use search to get started and meet other users.',\n values: { public: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"b\" /* Link */], {\n to: '/timelines/public'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.home.public_timeline',\n defaultMessage: 'the public timeline'\n })) }\n })\n })\n );\n };\n\n return HomeTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 856:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n }\n }return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n };\n}();\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = __webpack_require__(10);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = __webpack_require__(5);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _check = __webpack_require__(858);\n\nvar _check2 = _interopRequireDefault(_check);\n\nvar _x = __webpack_require__(859);\n\nvar _x2 = _interopRequireDefault(_x);\n\nvar _util = __webpack_require__(860);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nfunction _objectWithoutProperties(obj, keys) {\n var target = {};for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];\n }return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nvar Toggle = function (_PureComponent) {\n _inherits(Toggle, _PureComponent);\n\n function Toggle(props) {\n _classCallCheck(this, Toggle);\n\n var _this = _possibleConstructorReturn(this, (Toggle.__proto__ || Object.getPrototypeOf(Toggle)).call(this, props));\n\n _this.handleClick = _this.handleClick.bind(_this);\n _this.handleTouchStart = _this.handleTouchStart.bind(_this);\n _this.handleTouchMove = _this.handleTouchMove.bind(_this);\n _this.handleTouchEnd = _this.handleTouchEnd.bind(_this);\n _this.handleFocus = _this.handleFocus.bind(_this);\n _this.handleBlur = _this.handleBlur.bind(_this);\n _this.previouslyChecked = !!(props.checked || props.defaultChecked);\n _this.state = {\n checked: !!(props.checked || props.defaultChecked),\n hasFocus: false\n };\n return _this;\n }\n\n _createClass(Toggle, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if ('checked' in nextProps) {\n this.setState({ checked: !!nextProps.checked });\n }\n }\n }, {\n key: 'handleClick',\n value: function handleClick(event) {\n var checkbox = this.input;\n if (event.target !== checkbox && !this.moved) {\n this.previouslyChecked = checkbox.checked;\n event.preventDefault();\n checkbox.focus();\n checkbox.click();\n return;\n }\n\n var checked = this.props.hasOwnProperty('checked') ? this.props.checked : checkbox.checked;\n\n this.setState({ checked: checked });\n }\n }, {\n key: 'handleTouchStart',\n value: function handleTouchStart(event) {\n this.startX = (0, _util.pointerCoord)(event).x;\n this.activated = true;\n }\n }, {\n key: 'handleTouchMove',\n value: function handleTouchMove(event) {\n if (!this.activated) return;\n this.moved = true;\n\n if (this.startX) {\n var currentX = (0, _util.pointerCoord)(event).x;\n if (this.state.checked && currentX + 15 < this.startX) {\n this.setState({ checked: false });\n this.startX = currentX;\n this.activated = true;\n } else if (currentX - 15 > this.startX) {\n this.setState({ checked: true });\n this.startX = currentX;\n this.activated = currentX < this.startX + 5;\n }\n }\n }\n }, {\n key: 'handleTouchEnd',\n value: function handleTouchEnd(event) {\n if (!this.moved) return;\n var checkbox = this.input;\n event.preventDefault();\n\n if (this.startX) {\n var endX = (0, _util.pointerCoord)(event).x;\n if (this.previouslyChecked === true && this.startX + 4 > endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: false });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n } else if (this.startX - 4 < endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: true });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n }\n\n this.activated = false;\n this.startX = null;\n this.moved = false;\n }\n }\n }, {\n key: 'handleFocus',\n value: function handleFocus(event) {\n var onFocus = this.props.onFocus;\n\n if (onFocus) {\n onFocus(event);\n }\n\n this.setState({ hasFocus: true });\n }\n }, {\n key: 'handleBlur',\n value: function handleBlur(event) {\n var onBlur = this.props.onBlur;\n\n if (onBlur) {\n onBlur(event);\n }\n\n this.setState({ hasFocus: false });\n }\n }, {\n key: 'getIcon',\n value: function getIcon(type) {\n var icons = this.props.icons;\n\n if (!icons) {\n return null;\n }\n return icons[type] === undefined ? Toggle.defaultProps.icons[type] : icons[type];\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n className = _props.className,\n _icons = _props.icons,\n inputProps = _objectWithoutProperties(_props, ['className', 'icons']);\n\n var classes = (0, _classnames2.default)('react-toggle', {\n 'react-toggle--checked': this.state.checked,\n 'react-toggle--focus': this.state.hasFocus,\n 'react-toggle--disabled': this.props.disabled\n }, className);\n\n return _react2.default.createElement('div', { className: classes,\n onClick: this.handleClick,\n onTouchStart: this.handleTouchStart,\n onTouchMove: this.handleTouchMove,\n onTouchEnd: this.handleTouchEnd }, _react2.default.createElement('div', { className: 'react-toggle-track' }, _react2.default.createElement('div', { className: 'react-toggle-track-check' }, this.getIcon('checked')), _react2.default.createElement('div', { className: 'react-toggle-track-x' }, this.getIcon('unchecked'))), _react2.default.createElement('div', { className: 'react-toggle-thumb' }), _react2.default.createElement('input', _extends({}, inputProps, {\n ref: function ref(_ref) {\n _this2.input = _ref;\n },\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n className: 'react-toggle-screenreader-only',\n type: 'checkbox' })));\n }\n }]);\n\n return Toggle;\n}(_react.PureComponent);\n\nexports.default = Toggle;\n\nToggle.displayName = 'Toggle';\n\nToggle.defaultProps = {\n icons: {\n checked: _react2.default.createElement(_check2.default, null),\n unchecked: _react2.default.createElement(_x2.default, null)\n }\n};\n\nToggle.propTypes = {\n checked: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n defaultChecked: _propTypes2.default.bool,\n onChange: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n className: _propTypes2.default.string,\n name: _propTypes2.default.string,\n value: _propTypes2.default.string,\n id: _propTypes2.default.string,\n 'aria-labelledby': _propTypes2.default.string,\n 'aria-label': _propTypes2.default.string,\n icons: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({\n checked: _propTypes2.default.node,\n unchecked: _propTypes2.default.node\n })])\n};\n\n/***/ }),\n\n/***/ 858:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nexports.default = function () {\n return _react2.default.createElement('svg', { width: '14', height: '11', viewBox: '0 0 14 11' }, _react2.default.createElement('title', null, 'switch-check'), _react2.default.createElement('path', { d: 'M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0', fill: '#fff', fillRule: 'evenodd' }));\n};\n\n/***/ }),\n\n/***/ 859:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nexports.default = function () {\n return _react2.default.createElement('svg', { width: '10', height: '10', viewBox: '0 0 10 10' }, _react2.default.createElement('title', null, 'switch-x'), _react2.default.createElement('path', { d: 'M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12', fill: '#fff', fillRule: 'evenodd' }));\n};\n\n/***/ }),\n\n/***/ 860:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pointerCoord = pointerCoord;\n// Copyright 2015-present Drifty Co.\n// http://drifty.com/\n// from: https://github.com/driftyco/ionic/blob/master/src/util/dom.ts\n\nfunction pointerCoord(event) {\n // get coordinates for either a mouse click\n // or a touch depending on the given event\n if (event) {\n var changedTouches = event.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n var touch = changedTouches[0];\n return { x: touch.clientX, y: touch.clientY };\n }\n var pageX = event.pageX;\n if (pageX !== undefined) {\n return { x: pageX, y: event.pageY };\n }\n }\n return { x: 0, y: 0 };\n}\n\n/***/ }),\n\n/***/ 861:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingText; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar SettingText = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingText, _React$PureComponent);\n\n function SettingText() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingText);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(_this.props.settingKey, e.target.value);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingText.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n settingKey = _props.settingKey,\n label = _props.label;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, label), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'setting-text',\n value: settings.getIn(settingKey),\n onChange: this.handleChange,\n placeholder: label\n }));\n };\n\n return SettingText;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 871:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingToggle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_toggle__ = __webpack_require__(856);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_toggle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_toggle__);\n\n\n\n\n\n\n\n\nvar SettingToggle = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingToggle, _React$PureComponent);\n\n function SettingToggle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingToggle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onChange = function (_ref) {\n var target = _ref.target;\n\n _this.props.onChange(_this.props.settingPath, target.checked);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingToggle.prototype.render = function render() {\n var _props = this.props,\n prefix = _props.prefix,\n settings = _props.settings,\n settingPath = _props.settingPath,\n label = _props.label,\n meta = _props.meta;\n\n var id = ['setting-toggle', prefix].concat(settingPath).filter(Boolean).join('-');\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'setting-toggle'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_toggle___default.a, {\n id: id,\n checked: settings.getIn(settingPath),\n onChange: this.onChange,\n onKeyDown: this.onKeyDown\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {\n htmlFor: id,\n className: 'setting-toggle__label'\n }, void 0, label), meta && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'setting-meta__label'\n }, void 0, meta));\n };\n\n return SettingToggle;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 960:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_column_settings__ = __webpack_require__(961);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(57);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n settings: state.getIn(['settings', 'home'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(key, checked) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['home'].concat(key), checked));\n },\n onSave: function onSave() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"d\" /* saveSettings */])());\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_column_settings__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 961:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnSettings; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__notifications_components_setting_toggle__ = __webpack_require__(871);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_setting_text__ = __webpack_require__(861);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n filter_regex: {\n 'id': 'home.column_settings.filter_regex',\n 'defaultMessage': 'Filter out by regular expressions'\n },\n settings: {\n 'id': 'home.settings',\n 'defaultMessage': 'Column settings'\n }\n});\n\nvar ColumnSettings = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnSettings, _React$PureComponent);\n\n function ColumnSettings() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnSettings);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n ColumnSettings.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n onChange = _props.onChange,\n intl = _props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.basic',\n defaultMessage: 'Basic'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__notifications_components_setting_toggle__[\"a\" /* default */], {\n prefix: 'home_timeline',\n settings: settings,\n settingPath: ['shows', 'reblog'],\n onChange: onChange,\n label: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.show_reblogs',\n defaultMessage: 'Show boosts'\n })\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__notifications_components_setting_toggle__[\"a\" /* default */], {\n prefix: 'home_timeline',\n settings: settings,\n settingPath: ['shows', 'reply'],\n onChange: onChange,\n label: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.show_replies',\n defaultMessage: 'Show replies'\n })\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.advanced',\n defaultMessage: 'Advanced'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_setting_text__[\"a\" /* default */], {\n prefix: 'home_timeline',\n settings: settings,\n settingKey: ['regex', 'body'],\n onChange: onChange,\n label: intl.formatMessage(messages.filter_regex)\n })));\n };\n\n return ColumnSettings;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/home_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { expandHomeTimeline } from '../../actions/timelines';\nimport PropTypes from 'prop-types';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ColumnSettingsContainer from './containers/column_settings_container';\nimport { Link } from 'react-router-dom';\n\nconst messages = defineMessages({\n title: { id: 'column.home', defaultMessage: 'Home' },\n});\n\nconst mapStateToProps = state => ({\n hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0,\n isPartial: state.getIn(['timelines', 'home', 'items', 0], null) === null,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class HomeTimeline extends React.PureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hasUnread: PropTypes.bool,\n isPartial: PropTypes.bool,\n columnId: PropTypes.string,\n multiColumn: PropTypes.bool,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('HOME', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandHomeTimeline({ maxId }));\n }\n\n componentDidMount () {\n this._checkIfReloadNeeded(false, this.props.isPartial);\n }\n\n componentDidUpdate (prevProps) {\n this._checkIfReloadNeeded(prevProps.isPartial, this.props.isPartial);\n }\n\n componentWillUnmount () {\n this._stopPolling();\n }\n\n _checkIfReloadNeeded (wasPartial, isPartial) {\n const { dispatch } = this.props;\n\n if (wasPartial === isPartial) {\n return;\n } else if (!wasPartial && isPartial) {\n this.polling = setInterval(() => {\n dispatch(expandHomeTimeline());\n }, 3000);\n } else if (wasPartial && !isPartial) {\n this._stopPolling();\n }\n }\n\n _stopPolling () {\n if (this.polling) {\n clearInterval(this.polling);\n this.polling = null;\n }\n }\n\n render () {\n const { intl, hasUnread, columnId, multiColumn } = this.props;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='home'\n active={hasUnread}\n title={intl.formatMessage(messages.title)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <ColumnSettingsContainer />\n </ColumnHeader>\n\n <StatusListContainer\n trackScroll={!pinned}\n scrollKey={`home_timeline-${columnId}`}\n onLoadMore={this.handleLoadMore}\n timelineId='home'\n emptyMessage={<FormattedMessage id='empty_column.home' defaultMessage='Your home timeline is empty! Visit {public} or use search to get started and meet other users.' values={{ public: <Link to='/timelines/public'><FormattedMessage id='empty_column.home.public_timeline' defaultMessage='the public timeline' /></Link> }} />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/home_timeline/index.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _check = require('./check');\n\nvar _check2 = _interopRequireDefault(_check);\n\nvar _x = require('./x');\n\nvar _x2 = _interopRequireDefault(_x);\n\nvar _util = require('./util');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Toggle = function (_PureComponent) {\n _inherits(Toggle, _PureComponent);\n\n function Toggle(props) {\n _classCallCheck(this, Toggle);\n\n var _this = _possibleConstructorReturn(this, (Toggle.__proto__ || Object.getPrototypeOf(Toggle)).call(this, props));\n\n _this.handleClick = _this.handleClick.bind(_this);\n _this.handleTouchStart = _this.handleTouchStart.bind(_this);\n _this.handleTouchMove = _this.handleTouchMove.bind(_this);\n _this.handleTouchEnd = _this.handleTouchEnd.bind(_this);\n _this.handleFocus = _this.handleFocus.bind(_this);\n _this.handleBlur = _this.handleBlur.bind(_this);\n _this.previouslyChecked = !!(props.checked || props.defaultChecked);\n _this.state = {\n checked: !!(props.checked || props.defaultChecked),\n hasFocus: false\n };\n return _this;\n }\n\n _createClass(Toggle, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if ('checked' in nextProps) {\n this.setState({ checked: !!nextProps.checked });\n }\n }\n }, {\n key: 'handleClick',\n value: function handleClick(event) {\n var checkbox = this.input;\n if (event.target !== checkbox && !this.moved) {\n this.previouslyChecked = checkbox.checked;\n event.preventDefault();\n checkbox.focus();\n checkbox.click();\n return;\n }\n\n var checked = this.props.hasOwnProperty('checked') ? this.props.checked : checkbox.checked;\n\n this.setState({ checked: checked });\n }\n }, {\n key: 'handleTouchStart',\n value: function handleTouchStart(event) {\n this.startX = (0, _util.pointerCoord)(event).x;\n this.activated = true;\n }\n }, {\n key: 'handleTouchMove',\n value: function handleTouchMove(event) {\n if (!this.activated) return;\n this.moved = true;\n\n if (this.startX) {\n var currentX = (0, _util.pointerCoord)(event).x;\n if (this.state.checked && currentX + 15 < this.startX) {\n this.setState({ checked: false });\n this.startX = currentX;\n this.activated = true;\n } else if (currentX - 15 > this.startX) {\n this.setState({ checked: true });\n this.startX = currentX;\n this.activated = currentX < this.startX + 5;\n }\n }\n }\n }, {\n key: 'handleTouchEnd',\n value: function handleTouchEnd(event) {\n if (!this.moved) return;\n var checkbox = this.input;\n event.preventDefault();\n\n if (this.startX) {\n var endX = (0, _util.pointerCoord)(event).x;\n if (this.previouslyChecked === true && this.startX + 4 > endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: false });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n } else if (this.startX - 4 < endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: true });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n }\n\n this.activated = false;\n this.startX = null;\n this.moved = false;\n }\n }\n }, {\n key: 'handleFocus',\n value: function handleFocus(event) {\n var onFocus = this.props.onFocus;\n\n\n if (onFocus) {\n onFocus(event);\n }\n\n this.setState({ hasFocus: true });\n }\n }, {\n key: 'handleBlur',\n value: function handleBlur(event) {\n var onBlur = this.props.onBlur;\n\n\n if (onBlur) {\n onBlur(event);\n }\n\n this.setState({ hasFocus: false });\n }\n }, {\n key: 'getIcon',\n value: function getIcon(type) {\n var icons = this.props.icons;\n\n if (!icons) {\n return null;\n }\n return icons[type] === undefined ? Toggle.defaultProps.icons[type] : icons[type];\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n className = _props.className,\n _icons = _props.icons,\n inputProps = _objectWithoutProperties(_props, ['className', 'icons']);\n\n var classes = (0, _classnames2.default)('react-toggle', {\n 'react-toggle--checked': this.state.checked,\n 'react-toggle--focus': this.state.hasFocus,\n 'react-toggle--disabled': this.props.disabled\n }, className);\n\n return _react2.default.createElement(\n 'div',\n { className: classes,\n onClick: this.handleClick,\n onTouchStart: this.handleTouchStart,\n onTouchMove: this.handleTouchMove,\n onTouchEnd: this.handleTouchEnd },\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track' },\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track-check' },\n this.getIcon('checked')\n ),\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track-x' },\n this.getIcon('unchecked')\n )\n ),\n _react2.default.createElement('div', { className: 'react-toggle-thumb' }),\n _react2.default.createElement('input', _extends({}, inputProps, {\n ref: function ref(_ref) {\n _this2.input = _ref;\n },\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n className: 'react-toggle-screenreader-only',\n type: 'checkbox' }))\n );\n }\n }]);\n\n return Toggle;\n}(_react.PureComponent);\n\nexports.default = Toggle;\n\n\nToggle.displayName = 'Toggle';\n\nToggle.defaultProps = {\n icons: {\n checked: _react2.default.createElement(_check2.default, null),\n unchecked: _react2.default.createElement(_x2.default, null)\n }\n};\n\nToggle.propTypes = {\n checked: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n defaultChecked: _propTypes2.default.bool,\n onChange: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n className: _propTypes2.default.string,\n name: _propTypes2.default.string,\n value: _propTypes2.default.string,\n id: _propTypes2.default.string,\n 'aria-labelledby': _propTypes2.default.string,\n 'aria-label': _propTypes2.default.string,\n icons: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({\n checked: _propTypes2.default.node,\n unchecked: _propTypes2.default.node\n })])\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/index.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n return _react2.default.createElement(\n 'svg',\n { width: '14', height: '11', viewBox: '0 0 14 11' },\n _react2.default.createElement(\n 'title',\n null,\n 'switch-check'\n ),\n _react2.default.createElement('path', { d: 'M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0', fill: '#fff', fillRule: 'evenodd' })\n );\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/check.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n return _react2.default.createElement(\n 'svg',\n { width: '10', height: '10', viewBox: '0 0 10 10' },\n _react2.default.createElement(\n 'title',\n null,\n 'switch-x'\n ),\n _react2.default.createElement('path', { d: 'M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12', fill: '#fff', fillRule: 'evenodd' })\n );\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/x.js","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pointerCoord = pointerCoord;\n// Copyright 2015-present Drifty Co.\n// http://drifty.com/\n// from: https://github.com/driftyco/ionic/blob/master/src/util/dom.ts\n\nfunction pointerCoord(event) {\n // get coordinates for either a mouse click\n // or a touch depending on the given event\n if (event) {\n var changedTouches = event.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n var touch = changedTouches[0];\n return { x: touch.clientX, y: touch.clientY };\n }\n var pageX = event.pageX;\n if (pageX !== undefined) {\n return { x: pageX, y: event.pageY };\n }\n }\n return { x: 0, y: 0 };\n}\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/util.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nexport default class SettingText extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n settingKey: PropTypes.array.isRequired,\n label: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n handleChange = (e) => {\n this.props.onChange(this.props.settingKey, e.target.value);\n }\n\n render () {\n const { settings, settingKey, label } = this.props;\n\n return (\n <label>\n <span style={{ display: 'none' }}>{label}</span>\n <input\n className='setting-text'\n value={settings.getIn(settingKey)}\n onChange={this.handleChange}\n placeholder={label}\n />\n </label>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/setting_text.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Toggle from 'react-toggle';\n\nexport default class SettingToggle extends React.PureComponent {\n\n static propTypes = {\n prefix: PropTypes.string,\n settings: ImmutablePropTypes.map.isRequired,\n settingPath: PropTypes.array.isRequired,\n label: PropTypes.node.isRequired,\n meta: PropTypes.node,\n onChange: PropTypes.func.isRequired,\n }\n\n onChange = ({ target }) => {\n this.props.onChange(this.props.settingPath, target.checked);\n }\n\n render () {\n const { prefix, settings, settingPath, label, meta } = this.props;\n const id = ['setting-toggle', prefix, ...settingPath].filter(Boolean).join('-');\n\n return (\n <div className='setting-toggle'>\n <Toggle id={id} checked={settings.getIn(settingPath)} onChange={this.onChange} onKeyDown={this.onKeyDown} />\n <label htmlFor={id} className='setting-toggle__label'>{label}</label>\n {meta && <span className='setting-meta__label'>{meta}</span>}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/setting_toggle.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js","import { connect } from 'react-redux';\nimport ColumnSettings from '../components/column_settings';\nimport { changeSetting, saveSettings } from '../../../actions/settings';\n\nconst mapStateToProps = state => ({\n settings: state.getIn(['settings', 'home']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (key, checked) {\n dispatch(changeSetting(['home', ...key], checked));\n },\n\n onSave () {\n dispatch(saveSettings());\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ColumnSettings);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/home_timeline/containers/column_settings_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport SettingToggle from '../../notifications/components/setting_toggle';\nimport SettingText from '../../../components/setting_text';\n\nconst messages = defineMessages({\n filter_regex: { id: 'home.column_settings.filter_regex', defaultMessage: 'Filter out by regular expressions' },\n settings: { id: 'home.settings', defaultMessage: 'Column settings' },\n});\n\n@injectIntl\nexport default class ColumnSettings extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n onChange: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { settings, onChange, intl } = this.props;\n\n return (\n <div>\n <span className='column-settings__section'><FormattedMessage id='home.column_settings.basic' defaultMessage='Basic' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='home_timeline' settings={settings} settingPath={['shows', 'reblog']} onChange={onChange} label={<FormattedMessage id='home.column_settings.show_reblogs' defaultMessage='Show boosts' />} />\n </div>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='home_timeline' settings={settings} settingPath={['shows', 'reply']} onChange={onChange} label={<FormattedMessage id='home.column_settings.show_replies' defaultMessage='Show replies' />} />\n </div>\n\n <span className='column-settings__section'><FormattedMessage id='home.column_settings.advanced' defaultMessage='Advanced' /></span>\n\n <div className='column-settings__row'>\n <SettingText prefix='home_timeline' settings={settings} settingKey={['regex', 'body']} onChange={onChange} label={intl.formatMessage(messages.filter_regex)} />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/home_timeline/components/column_settings.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/home_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/home_timeline/index.js","webpack:///./app/javascript/mastodon/components/setting_text.js","webpack:///./app/javascript/mastodon/features/notifications/components/setting_toggle.js","webpack:///./node_modules/react-toggle/dist/component/index.js","webpack:///./node_modules/react-toggle/dist/component/check.js","webpack:///./node_modules/react-toggle/dist/component/x.js","webpack:///./node_modules/react-toggle/dist/component/util.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js","webpack:///./app/javascript/mastodon/features/home_timeline/containers/column_settings_container.js","webpack:///./app/javascript/mastodon/features/home_timeline/components/column_settings.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","282","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","805","defineProperty","value","HomeTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6__actions_timelines__","__WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_8__components_column__","__WEBPACK_IMPORTED_MODULE_9__components_column_header__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__","__WEBPACK_IMPORTED_MODULE_13_react_router_dom__","title","mapStateToProps","hasUnread","handlePin","columnId","handleMove","dir","_this$props2","handleHeaderClick","column","_checkIfReloadNeeded","_stopPolling","wasPartial","polling","setInterval","clearInterval","multiColumn","pinned","icon","active","onPin","onMove","timelineId","public","to","855","SettingText","handleChange","onChange","settingKey","settings","label","display","placeholder","865","SettingToggle","__WEBPACK_IMPORTED_MODULE_5_react_toggle__","__WEBPACK_IMPORTED_MODULE_5_react_toggle___default","settingPath","checked","prefix","meta","filter","Boolean","join","onKeyDown","htmlFor","866","_interopRequireDefault","obj","__esModule","default","_objectWithoutProperties","keys","hasOwnProperty","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","enumerable","writable","configurable","setPrototypeOf","__proto__","_extends","assign","source","_createClass","defineProperties","descriptor","protoProps","staticProps","_react","_react2","_classnames","_classnames2","_propTypes","_propTypes2","_check","_check2","_x","_x2","_util","Toggle","getPrototypeOf","bind","handleTouchStart","handleTouchMove","handleTouchEnd","handleFocus","handleBlur","previouslyChecked","defaultChecked","hasFocus","event","checkbox","input","moved","click","startX","pointerCoord","x","activated","currentX","endX","onFocus","onBlur","icons","inputProps","classes","react-toggle--checked","react-toggle--focus","react-toggle--disabled","onTouchStart","onTouchMove","onTouchEnd","getIcon","displayName","unchecked","aria-labelledby","aria-label","oneOfType","shape","867","viewBox","fill","fillRule","868","869","changedTouches","touch","clientX","y","clientY","pageX","pageY","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4","958","__WEBPACK_IMPORTED_MODULE_1__components_column_settings__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","onSave","959","ColumnSettings","__WEBPACK_IMPORTED_MODULE_6__notifications_components_setting_toggle__","__WEBPACK_IMPORTED_MODULE_7__components_setting_text__","filter_regex"],"mappings":"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","file":"features/home_timeline.js","sourcesContent":["webpackJsonp([7],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 805:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return HomeTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__ = __webpack_require__(958);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_router_dom__ = __webpack_require__(44);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n title: {\n 'id': 'column.home',\n 'defaultMessage': 'Home'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0,\n isPartial: state.getIn(['timelines', 'home', 'items', 0], null) === null\n };\n};\n\nvar HomeTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(HomeTimeline, _React$PureComponent);\n\n function HomeTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, HomeTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('HOME', {}));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_timelines__[\"o\" /* expandHomeTimeline */])({ maxId: maxId }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n HomeTimeline.prototype.componentDidMount = function componentDidMount() {\n this._checkIfReloadNeeded(false, this.props.isPartial);\n };\n\n HomeTimeline.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n this._checkIfReloadNeeded(prevProps.isPartial, this.props.isPartial);\n };\n\n HomeTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n this._stopPolling();\n };\n\n HomeTimeline.prototype._checkIfReloadNeeded = function _checkIfReloadNeeded(wasPartial, isPartial) {\n var dispatch = this.props.dispatch;\n\n\n if (wasPartial === isPartial) {\n return;\n } else if (!wasPartial && isPartial) {\n this.polling = setInterval(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_timelines__[\"o\" /* expandHomeTimeline */])());\n }, 3000);\n } else if (wasPartial && !isPartial) {\n this._stopPolling();\n }\n };\n\n HomeTimeline.prototype._stopPolling = function _stopPolling() {\n if (this.polling) {\n clearInterval(this.polling);\n this.polling = null;\n }\n };\n\n HomeTimeline.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n hasUnread = _props.hasUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_8__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_column_header__[\"a\" /* default */], {\n icon: 'home',\n active: hasUnread,\n title: intl.formatMessage(messages.title),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__[\"a\" /* default */], {})),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__[\"a\" /* default */], {\n trackScroll: !pinned,\n scrollKey: 'home_timeline-' + columnId,\n onLoadMore: this.handleLoadMore,\n timelineId: 'home',\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.home',\n defaultMessage: 'Your home timeline is empty! Visit {public} or use search to get started and meet other users.',\n values: { public: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_router_dom__[\"b\" /* Link */], {\n to: '/timelines/public'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.home.public_timeline',\n defaultMessage: 'the public timeline'\n })) }\n })\n })\n );\n };\n\n return HomeTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 855:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingText; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar SettingText = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingText, _React$PureComponent);\n\n function SettingText() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingText);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(_this.props.settingKey, e.target.value);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingText.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n settingKey = _props.settingKey,\n label = _props.label;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, label), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'setting-text',\n value: settings.getIn(settingKey),\n onChange: this.handleChange,\n placeholder: label\n }));\n };\n\n return SettingText;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 865:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingToggle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_toggle__ = __webpack_require__(866);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_toggle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_toggle__);\n\n\n\n\n\n\n\n\nvar SettingToggle = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingToggle, _React$PureComponent);\n\n function SettingToggle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingToggle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onChange = function (_ref) {\n var target = _ref.target;\n\n _this.props.onChange(_this.props.settingPath, target.checked);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingToggle.prototype.render = function render() {\n var _props = this.props,\n prefix = _props.prefix,\n settings = _props.settings,\n settingPath = _props.settingPath,\n label = _props.label,\n meta = _props.meta;\n\n var id = ['setting-toggle', prefix].concat(settingPath).filter(Boolean).join('-');\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'setting-toggle'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_toggle___default.a, {\n id: id,\n checked: settings.getIn(settingPath),\n onChange: this.onChange,\n onKeyDown: this.onKeyDown\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {\n htmlFor: id,\n className: 'setting-toggle__label'\n }, void 0, label), meta && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'setting-meta__label'\n }, void 0, meta));\n };\n\n return SettingToggle;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 866:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n }\n }return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n };\n}();\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = __webpack_require__(10);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = __webpack_require__(5);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _check = __webpack_require__(867);\n\nvar _check2 = _interopRequireDefault(_check);\n\nvar _x = __webpack_require__(868);\n\nvar _x2 = _interopRequireDefault(_x);\n\nvar _util = __webpack_require__(869);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nfunction _objectWithoutProperties(obj, keys) {\n var target = {};for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];\n }return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nvar Toggle = function (_PureComponent) {\n _inherits(Toggle, _PureComponent);\n\n function Toggle(props) {\n _classCallCheck(this, Toggle);\n\n var _this = _possibleConstructorReturn(this, (Toggle.__proto__ || Object.getPrototypeOf(Toggle)).call(this, props));\n\n _this.handleClick = _this.handleClick.bind(_this);\n _this.handleTouchStart = _this.handleTouchStart.bind(_this);\n _this.handleTouchMove = _this.handleTouchMove.bind(_this);\n _this.handleTouchEnd = _this.handleTouchEnd.bind(_this);\n _this.handleFocus = _this.handleFocus.bind(_this);\n _this.handleBlur = _this.handleBlur.bind(_this);\n _this.previouslyChecked = !!(props.checked || props.defaultChecked);\n _this.state = {\n checked: !!(props.checked || props.defaultChecked),\n hasFocus: false\n };\n return _this;\n }\n\n _createClass(Toggle, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if ('checked' in nextProps) {\n this.setState({ checked: !!nextProps.checked });\n }\n }\n }, {\n key: 'handleClick',\n value: function handleClick(event) {\n var checkbox = this.input;\n if (event.target !== checkbox && !this.moved) {\n this.previouslyChecked = checkbox.checked;\n event.preventDefault();\n checkbox.focus();\n checkbox.click();\n return;\n }\n\n var checked = this.props.hasOwnProperty('checked') ? this.props.checked : checkbox.checked;\n\n this.setState({ checked: checked });\n }\n }, {\n key: 'handleTouchStart',\n value: function handleTouchStart(event) {\n this.startX = (0, _util.pointerCoord)(event).x;\n this.activated = true;\n }\n }, {\n key: 'handleTouchMove',\n value: function handleTouchMove(event) {\n if (!this.activated) return;\n this.moved = true;\n\n if (this.startX) {\n var currentX = (0, _util.pointerCoord)(event).x;\n if (this.state.checked && currentX + 15 < this.startX) {\n this.setState({ checked: false });\n this.startX = currentX;\n this.activated = true;\n } else if (currentX - 15 > this.startX) {\n this.setState({ checked: true });\n this.startX = currentX;\n this.activated = currentX < this.startX + 5;\n }\n }\n }\n }, {\n key: 'handleTouchEnd',\n value: function handleTouchEnd(event) {\n if (!this.moved) return;\n var checkbox = this.input;\n event.preventDefault();\n\n if (this.startX) {\n var endX = (0, _util.pointerCoord)(event).x;\n if (this.previouslyChecked === true && this.startX + 4 > endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: false });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n } else if (this.startX - 4 < endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: true });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n }\n\n this.activated = false;\n this.startX = null;\n this.moved = false;\n }\n }\n }, {\n key: 'handleFocus',\n value: function handleFocus(event) {\n var onFocus = this.props.onFocus;\n\n if (onFocus) {\n onFocus(event);\n }\n\n this.setState({ hasFocus: true });\n }\n }, {\n key: 'handleBlur',\n value: function handleBlur(event) {\n var onBlur = this.props.onBlur;\n\n if (onBlur) {\n onBlur(event);\n }\n\n this.setState({ hasFocus: false });\n }\n }, {\n key: 'getIcon',\n value: function getIcon(type) {\n var icons = this.props.icons;\n\n if (!icons) {\n return null;\n }\n return icons[type] === undefined ? Toggle.defaultProps.icons[type] : icons[type];\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n className = _props.className,\n _icons = _props.icons,\n inputProps = _objectWithoutProperties(_props, ['className', 'icons']);\n\n var classes = (0, _classnames2.default)('react-toggle', {\n 'react-toggle--checked': this.state.checked,\n 'react-toggle--focus': this.state.hasFocus,\n 'react-toggle--disabled': this.props.disabled\n }, className);\n\n return _react2.default.createElement('div', { className: classes,\n onClick: this.handleClick,\n onTouchStart: this.handleTouchStart,\n onTouchMove: this.handleTouchMove,\n onTouchEnd: this.handleTouchEnd }, _react2.default.createElement('div', { className: 'react-toggle-track' }, _react2.default.createElement('div', { className: 'react-toggle-track-check' }, this.getIcon('checked')), _react2.default.createElement('div', { className: 'react-toggle-track-x' }, this.getIcon('unchecked'))), _react2.default.createElement('div', { className: 'react-toggle-thumb' }), _react2.default.createElement('input', _extends({}, inputProps, {\n ref: function ref(_ref) {\n _this2.input = _ref;\n },\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n className: 'react-toggle-screenreader-only',\n type: 'checkbox' })));\n }\n }]);\n\n return Toggle;\n}(_react.PureComponent);\n\nexports.default = Toggle;\n\nToggle.displayName = 'Toggle';\n\nToggle.defaultProps = {\n icons: {\n checked: _react2.default.createElement(_check2.default, null),\n unchecked: _react2.default.createElement(_x2.default, null)\n }\n};\n\nToggle.propTypes = {\n checked: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n defaultChecked: _propTypes2.default.bool,\n onChange: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n className: _propTypes2.default.string,\n name: _propTypes2.default.string,\n value: _propTypes2.default.string,\n id: _propTypes2.default.string,\n 'aria-labelledby': _propTypes2.default.string,\n 'aria-label': _propTypes2.default.string,\n icons: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({\n checked: _propTypes2.default.node,\n unchecked: _propTypes2.default.node\n })])\n};\n\n/***/ }),\n\n/***/ 867:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nexports.default = function () {\n return _react2.default.createElement('svg', { width: '14', height: '11', viewBox: '0 0 14 11' }, _react2.default.createElement('title', null, 'switch-check'), _react2.default.createElement('path', { d: 'M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0', fill: '#fff', fillRule: 'evenodd' }));\n};\n\n/***/ }),\n\n/***/ 868:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nexports.default = function () {\n return _react2.default.createElement('svg', { width: '10', height: '10', viewBox: '0 0 10 10' }, _react2.default.createElement('title', null, 'switch-x'), _react2.default.createElement('path', { d: 'M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12', fill: '#fff', fillRule: 'evenodd' }));\n};\n\n/***/ }),\n\n/***/ 869:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pointerCoord = pointerCoord;\n// Copyright 2015-present Drifty Co.\n// http://drifty.com/\n// from: https://github.com/driftyco/ionic/blob/master/src/util/dom.ts\n\nfunction pointerCoord(event) {\n // get coordinates for either a mouse click\n // or a touch depending on the given event\n if (event) {\n var changedTouches = event.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n var touch = changedTouches[0];\n return { x: touch.clientX, y: touch.clientY };\n }\n var pageX = event.pageX;\n if (pageX !== undefined) {\n return { x: pageX, y: event.pageY };\n }\n }\n return { x: 0, y: 0 };\n}\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 958:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_column_settings__ = __webpack_require__(959);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(57);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n settings: state.getIn(['settings', 'home'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(key, checked) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['home'].concat(key), checked));\n },\n onSave: function onSave() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"d\" /* saveSettings */])());\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_column_settings__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 959:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnSettings; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__notifications_components_setting_toggle__ = __webpack_require__(865);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_setting_text__ = __webpack_require__(855);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n filter_regex: {\n 'id': 'home.column_settings.filter_regex',\n 'defaultMessage': 'Filter out by regular expressions'\n },\n settings: {\n 'id': 'home.settings',\n 'defaultMessage': 'Column settings'\n }\n});\n\nvar ColumnSettings = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnSettings, _React$PureComponent);\n\n function ColumnSettings() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnSettings);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n ColumnSettings.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n onChange = _props.onChange,\n intl = _props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.basic',\n defaultMessage: 'Basic'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__notifications_components_setting_toggle__[\"a\" /* default */], {\n prefix: 'home_timeline',\n settings: settings,\n settingPath: ['shows', 'reblog'],\n onChange: onChange,\n label: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.show_reblogs',\n defaultMessage: 'Show boosts'\n })\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__notifications_components_setting_toggle__[\"a\" /* default */], {\n prefix: 'home_timeline',\n settings: settings,\n settingPath: ['shows', 'reply'],\n onChange: onChange,\n label: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.show_replies',\n defaultMessage: 'Show replies'\n })\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.advanced',\n defaultMessage: 'Advanced'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_setting_text__[\"a\" /* default */], {\n prefix: 'home_timeline',\n settings: settings,\n settingKey: ['regex', 'body'],\n onChange: onChange,\n label: intl.formatMessage(messages.filter_regex)\n })));\n };\n\n return ColumnSettings;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/home_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { expandHomeTimeline } from '../../actions/timelines';\nimport PropTypes from 'prop-types';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ColumnSettingsContainer from './containers/column_settings_container';\nimport { Link } from 'react-router-dom';\n\nconst messages = defineMessages({\n title: { id: 'column.home', defaultMessage: 'Home' },\n});\n\nconst mapStateToProps = state => ({\n hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0,\n isPartial: state.getIn(['timelines', 'home', 'items', 0], null) === null,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class HomeTimeline extends React.PureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hasUnread: PropTypes.bool,\n isPartial: PropTypes.bool,\n columnId: PropTypes.string,\n multiColumn: PropTypes.bool,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('HOME', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandHomeTimeline({ maxId }));\n }\n\n componentDidMount () {\n this._checkIfReloadNeeded(false, this.props.isPartial);\n }\n\n componentDidUpdate (prevProps) {\n this._checkIfReloadNeeded(prevProps.isPartial, this.props.isPartial);\n }\n\n componentWillUnmount () {\n this._stopPolling();\n }\n\n _checkIfReloadNeeded (wasPartial, isPartial) {\n const { dispatch } = this.props;\n\n if (wasPartial === isPartial) {\n return;\n } else if (!wasPartial && isPartial) {\n this.polling = setInterval(() => {\n dispatch(expandHomeTimeline());\n }, 3000);\n } else if (wasPartial && !isPartial) {\n this._stopPolling();\n }\n }\n\n _stopPolling () {\n if (this.polling) {\n clearInterval(this.polling);\n this.polling = null;\n }\n }\n\n render () {\n const { intl, hasUnread, columnId, multiColumn } = this.props;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='home'\n active={hasUnread}\n title={intl.formatMessage(messages.title)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <ColumnSettingsContainer />\n </ColumnHeader>\n\n <StatusListContainer\n trackScroll={!pinned}\n scrollKey={`home_timeline-${columnId}`}\n onLoadMore={this.handleLoadMore}\n timelineId='home'\n emptyMessage={<FormattedMessage id='empty_column.home' defaultMessage='Your home timeline is empty! Visit {public} or use search to get started and meet other users.' values={{ public: <Link to='/timelines/public'><FormattedMessage id='empty_column.home.public_timeline' defaultMessage='the public timeline' /></Link> }} />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/home_timeline/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nexport default class SettingText extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n settingKey: PropTypes.array.isRequired,\n label: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n handleChange = (e) => {\n this.props.onChange(this.props.settingKey, e.target.value);\n }\n\n render () {\n const { settings, settingKey, label } = this.props;\n\n return (\n <label>\n <span style={{ display: 'none' }}>{label}</span>\n <input\n className='setting-text'\n value={settings.getIn(settingKey)}\n onChange={this.handleChange}\n placeholder={label}\n />\n </label>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/setting_text.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Toggle from 'react-toggle';\n\nexport default class SettingToggle extends React.PureComponent {\n\n static propTypes = {\n prefix: PropTypes.string,\n settings: ImmutablePropTypes.map.isRequired,\n settingPath: PropTypes.array.isRequired,\n label: PropTypes.node.isRequired,\n meta: PropTypes.node,\n onChange: PropTypes.func.isRequired,\n }\n\n onChange = ({ target }) => {\n this.props.onChange(this.props.settingPath, target.checked);\n }\n\n render () {\n const { prefix, settings, settingPath, label, meta } = this.props;\n const id = ['setting-toggle', prefix, ...settingPath].filter(Boolean).join('-');\n\n return (\n <div className='setting-toggle'>\n <Toggle id={id} checked={settings.getIn(settingPath)} onChange={this.onChange} onKeyDown={this.onKeyDown} />\n <label htmlFor={id} className='setting-toggle__label'>{label}</label>\n {meta && <span className='setting-meta__label'>{meta}</span>}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/setting_toggle.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _check = require('./check');\n\nvar _check2 = _interopRequireDefault(_check);\n\nvar _x = require('./x');\n\nvar _x2 = _interopRequireDefault(_x);\n\nvar _util = require('./util');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Toggle = function (_PureComponent) {\n _inherits(Toggle, _PureComponent);\n\n function Toggle(props) {\n _classCallCheck(this, Toggle);\n\n var _this = _possibleConstructorReturn(this, (Toggle.__proto__ || Object.getPrototypeOf(Toggle)).call(this, props));\n\n _this.handleClick = _this.handleClick.bind(_this);\n _this.handleTouchStart = _this.handleTouchStart.bind(_this);\n _this.handleTouchMove = _this.handleTouchMove.bind(_this);\n _this.handleTouchEnd = _this.handleTouchEnd.bind(_this);\n _this.handleFocus = _this.handleFocus.bind(_this);\n _this.handleBlur = _this.handleBlur.bind(_this);\n _this.previouslyChecked = !!(props.checked || props.defaultChecked);\n _this.state = {\n checked: !!(props.checked || props.defaultChecked),\n hasFocus: false\n };\n return _this;\n }\n\n _createClass(Toggle, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if ('checked' in nextProps) {\n this.setState({ checked: !!nextProps.checked });\n }\n }\n }, {\n key: 'handleClick',\n value: function handleClick(event) {\n var checkbox = this.input;\n if (event.target !== checkbox && !this.moved) {\n this.previouslyChecked = checkbox.checked;\n event.preventDefault();\n checkbox.focus();\n checkbox.click();\n return;\n }\n\n var checked = this.props.hasOwnProperty('checked') ? this.props.checked : checkbox.checked;\n\n this.setState({ checked: checked });\n }\n }, {\n key: 'handleTouchStart',\n value: function handleTouchStart(event) {\n this.startX = (0, _util.pointerCoord)(event).x;\n this.activated = true;\n }\n }, {\n key: 'handleTouchMove',\n value: function handleTouchMove(event) {\n if (!this.activated) return;\n this.moved = true;\n\n if (this.startX) {\n var currentX = (0, _util.pointerCoord)(event).x;\n if (this.state.checked && currentX + 15 < this.startX) {\n this.setState({ checked: false });\n this.startX = currentX;\n this.activated = true;\n } else if (currentX - 15 > this.startX) {\n this.setState({ checked: true });\n this.startX = currentX;\n this.activated = currentX < this.startX + 5;\n }\n }\n }\n }, {\n key: 'handleTouchEnd',\n value: function handleTouchEnd(event) {\n if (!this.moved) return;\n var checkbox = this.input;\n event.preventDefault();\n\n if (this.startX) {\n var endX = (0, _util.pointerCoord)(event).x;\n if (this.previouslyChecked === true && this.startX + 4 > endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: false });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n } else if (this.startX - 4 < endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: true });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n }\n\n this.activated = false;\n this.startX = null;\n this.moved = false;\n }\n }\n }, {\n key: 'handleFocus',\n value: function handleFocus(event) {\n var onFocus = this.props.onFocus;\n\n\n if (onFocus) {\n onFocus(event);\n }\n\n this.setState({ hasFocus: true });\n }\n }, {\n key: 'handleBlur',\n value: function handleBlur(event) {\n var onBlur = this.props.onBlur;\n\n\n if (onBlur) {\n onBlur(event);\n }\n\n this.setState({ hasFocus: false });\n }\n }, {\n key: 'getIcon',\n value: function getIcon(type) {\n var icons = this.props.icons;\n\n if (!icons) {\n return null;\n }\n return icons[type] === undefined ? Toggle.defaultProps.icons[type] : icons[type];\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n className = _props.className,\n _icons = _props.icons,\n inputProps = _objectWithoutProperties(_props, ['className', 'icons']);\n\n var classes = (0, _classnames2.default)('react-toggle', {\n 'react-toggle--checked': this.state.checked,\n 'react-toggle--focus': this.state.hasFocus,\n 'react-toggle--disabled': this.props.disabled\n }, className);\n\n return _react2.default.createElement(\n 'div',\n { className: classes,\n onClick: this.handleClick,\n onTouchStart: this.handleTouchStart,\n onTouchMove: this.handleTouchMove,\n onTouchEnd: this.handleTouchEnd },\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track' },\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track-check' },\n this.getIcon('checked')\n ),\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track-x' },\n this.getIcon('unchecked')\n )\n ),\n _react2.default.createElement('div', { className: 'react-toggle-thumb' }),\n _react2.default.createElement('input', _extends({}, inputProps, {\n ref: function ref(_ref) {\n _this2.input = _ref;\n },\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n className: 'react-toggle-screenreader-only',\n type: 'checkbox' }))\n );\n }\n }]);\n\n return Toggle;\n}(_react.PureComponent);\n\nexports.default = Toggle;\n\n\nToggle.displayName = 'Toggle';\n\nToggle.defaultProps = {\n icons: {\n checked: _react2.default.createElement(_check2.default, null),\n unchecked: _react2.default.createElement(_x2.default, null)\n }\n};\n\nToggle.propTypes = {\n checked: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n defaultChecked: _propTypes2.default.bool,\n onChange: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n className: _propTypes2.default.string,\n name: _propTypes2.default.string,\n value: _propTypes2.default.string,\n id: _propTypes2.default.string,\n 'aria-labelledby': _propTypes2.default.string,\n 'aria-label': _propTypes2.default.string,\n icons: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({\n checked: _propTypes2.default.node,\n unchecked: _propTypes2.default.node\n })])\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/index.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n return _react2.default.createElement(\n 'svg',\n { width: '14', height: '11', viewBox: '0 0 14 11' },\n _react2.default.createElement(\n 'title',\n null,\n 'switch-check'\n ),\n _react2.default.createElement('path', { d: 'M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0', fill: '#fff', fillRule: 'evenodd' })\n );\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/check.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n return _react2.default.createElement(\n 'svg',\n { width: '10', height: '10', viewBox: '0 0 10 10' },\n _react2.default.createElement(\n 'title',\n null,\n 'switch-x'\n ),\n _react2.default.createElement('path', { d: 'M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12', fill: '#fff', fillRule: 'evenodd' })\n );\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/x.js","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pointerCoord = pointerCoord;\n// Copyright 2015-present Drifty Co.\n// http://drifty.com/\n// from: https://github.com/driftyco/ionic/blob/master/src/util/dom.ts\n\nfunction pointerCoord(event) {\n // get coordinates for either a mouse click\n // or a touch depending on the given event\n if (event) {\n var changedTouches = event.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n var touch = changedTouches[0];\n return { x: touch.clientX, y: touch.clientY };\n }\n var pageX = event.pageX;\n if (pageX !== undefined) {\n return { x: pageX, y: event.pageY };\n }\n }\n return { x: 0, y: 0 };\n}\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/util.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js","import { connect } from 'react-redux';\nimport ColumnSettings from '../components/column_settings';\nimport { changeSetting, saveSettings } from '../../../actions/settings';\n\nconst mapStateToProps = state => ({\n settings: state.getIn(['settings', 'home']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (key, checked) {\n dispatch(changeSetting(['home', ...key], checked));\n },\n\n onSave () {\n dispatch(saveSettings());\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ColumnSettings);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/home_timeline/containers/column_settings_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport SettingToggle from '../../notifications/components/setting_toggle';\nimport SettingText from '../../../components/setting_text';\n\nconst messages = defineMessages({\n filter_regex: { id: 'home.column_settings.filter_regex', defaultMessage: 'Filter out by regular expressions' },\n settings: { id: 'home.settings', defaultMessage: 'Column settings' },\n});\n\n@injectIntl\nexport default class ColumnSettings extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n onChange: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { settings, onChange, intl } = this.props;\n\n return (\n <div>\n <span className='column-settings__section'><FormattedMessage id='home.column_settings.basic' defaultMessage='Basic' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='home_timeline' settings={settings} settingPath={['shows', 'reblog']} onChange={onChange} label={<FormattedMessage id='home.column_settings.show_reblogs' defaultMessage='Show boosts' />} />\n </div>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='home_timeline' settings={settings} settingPath={['shows', 'reply']} onChange={onChange} label={<FormattedMessage id='home.column_settings.show_replies' defaultMessage='Show replies' />} />\n </div>\n\n <span className='column-settings__section'><FormattedMessage id='home.column_settings.advanced' defaultMessage='Advanced' /></span>\n\n <div className='column-settings__row'>\n <SettingText prefix='home_timeline' settings={settings} settingKey={['regex', 'body']} onChange={onChange} label={intl.formatMessage(messages.filter_regex)} />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/home_timeline/components/column_settings.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/keyboard_shortcuts.js b/priv/static/packs/features/keyboard_shortcuts.js index ebea70fa5..159e76e4b 100644 --- a/priv/static/packs/features/keyboard_shortcuts.js +++ b/priv/static/packs/features/keyboard_shortcuts.js @@ -1,2 +1,2 @@ -webpackJsonp([23],{150:function(t,o,e){"use strict";e.d(o,"a",function(){return f});var n=e(2),i=e.n(n),d=e(1),r=e.n(d),a=e(3),s=e.n(a),c=e(4),u=e.n(c),l=e(0),b=e.n(l),v=e(10),h=e.n(v),f=function(t){function o(){var e,n,i;r()(this,o);for(var d=arguments.length,a=Array(d),c=0;c<d;c++)a[c]=arguments[c];return e=n=s()(this,t.call.apply(t,[this].concat(a))),n.handleClick=function(){n.props.onClick()},i=e,s()(n,i)}return u()(o,t),o.prototype.render=function(){var t=this.props,o=t.icon,e=t.type,n=t.active,d=t.columnHeaderId,r="";return o&&(r=i()("i",{className:"fa fa-fw fa-"+o+" column-header__icon"})),i()("h1",{className:h()("column-header",{active:n}),id:d||null},void 0,i()("button",{onClick:this.handleClick},void 0,r,e))},o}(b.a.PureComponent)},284:function(t,o,e){"use strict";e.d(o,"a",function(){return y});var n=e(2),i=e.n(n),d=e(1),r=e.n(d),a=e(3),s=e.n(a),c=e(4),u=e.n(c),l=e(34),b=e.n(l),v=e(0),h=e.n(v),f=e(150),k=e(90),p=e(35),y=function(t){function o(){var e,n,i;r()(this,o);for(var d=arguments.length,a=Array(d),c=0;c<d;c++)a[c]=arguments[c];return e=n=s()(this,t.call.apply(t,[this].concat(a))),n.handleHeaderClick=function(){var t=n.node.querySelector(".scrollable");t&&(n._interruptScrollAnimation=Object(k.b)(t))},n.handleScroll=b()(function(){void 0!==n._interruptScrollAnimation&&n._interruptScrollAnimation()},200),n.setRef=function(t){n.node=t},i=e,s()(n,i)}return u()(o,t),o.prototype.scrollTop=function(){var t=this.node.querySelector(".scrollable");t&&(this._interruptScrollAnimation=Object(k.b)(t))},o.prototype.render=function(){var t=this.props,o=t.heading,e=t.icon,n=t.children,d=t.active,r=t.hideHeadingOnMobile,a=o&&(!r||r&&!Object(p.b)(window.innerWidth)),s=a&&o.replace(/ /g,"-"),c=a&&i()(f.a,{icon:e,active:d,type:o,onClick:this.handleHeaderClick,columnHeaderId:s});return h.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":s,className:"column",onScroll:this.handleScroll},c,n)},o}(h.a.PureComponent)},286:function(t,o,e){"use strict";e.d(o,"a",function(){return y});var n,i,d=e(2),r=e.n(d),a=e(1),s=e.n(a),c=e(3),u=e.n(c),l=e(4),b=e.n(l),v=e(0),h=e.n(v),f=e(6),k=e(5),p=e.n(k),y=(i=n=function(t){function o(){var e,n,i;s()(this,o);for(var d=arguments.length,r=Array(d),a=0;a<d;a++)r[a]=arguments[a];return e=n=u()(this,t.call.apply(t,[this].concat(r))),n.handleClick=function(){window.history&&1===window.history.length?n.context.router.history.push("/"):n.context.router.history.goBack()},i=e,u()(n,i)}return b()(o,t),o.prototype.render=function(){return r()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,r()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),r()(f.b,{id:"column_back_button.label",defaultMessage:"Back"}))},o}(h.a.PureComponent),n.contextTypes={router:p.a.object},i)},298:function(t,o,e){"use strict";e.d(o,"a",function(){return h});var n=e(2),i=e.n(n),d=e(1),r=e.n(d),a=e(3),s=e.n(a),c=e(4),u=e.n(c),l=e(0),b=(e.n(l),e(6)),v=e(286),h=function(t){function o(){return r()(this,o),s()(this,t.apply(this,arguments))}return u()(o,t),o.prototype.render=function(){return i()("div",{className:"column-back-button--slim"},void 0,i()("div",{role:"button",tabIndex:"0",onClick:this.handleClick,className:"column-back-button column-back-button--slim-button"},void 0,i()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),i()(b.b,{id:"column_back_button.label",defaultMessage:"Back"})))},o}(v.a)},813:function(t,o,e){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),e.d(o,"default",function(){return C});var n,i,d,r=e(2),a=e.n(r),s=e(1),c=e.n(s),u=e(3),l=e.n(u),b=e(4),v=e.n(b),h=e(0),f=(e.n(h),e(284)),k=e(298),p=e(6),y=e(5),m=e.n(y),g=e(12),_=e.n(g),M=Object(p.f)({heading:{id:"keyboard_shortcuts.heading",defaultMessage:"Keyboard Shortcuts"}}),C=Object(p.g)((d=i=function(t){function o(){return c()(this,o),l()(this,t.apply(this,arguments))}return v()(o,t),o.prototype.render=function(){var t=this.props.intl;return a()(f.a,{icon:"question",heading:t.formatMessage(M.heading)},void 0,a()(k.a,{}),a()("div",{className:"keyboard-shortcuts scrollable optionally-scrollable"},void 0,a()("table",{},void 0,a()("thead",{},void 0,a()("tr",{},void 0,a()("th",{},void 0,a()(p.b,{id:"keyboard_shortcuts.hotkey",defaultMessage:"Hotkey"})),a()("th",{},void 0,a()(p.b,{id:"keyboard_shortcuts.description",defaultMessage:"Description"})))),a()("tbody",{},void 0,a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"r")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.reply",defaultMessage:"to reply"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"m")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.mention",defaultMessage:"to mention author"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"f")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.favourite",defaultMessage:"to favourite"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"b")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.boost",defaultMessage:"to boost"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"enter")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.enter",defaultMessage:"to open status"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"up")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.up",defaultMessage:"to move up in the list"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"down")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.down",defaultMessage:"to move down in the list"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"1"),"-",a()("kbd",{},void 0,"9")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.column",defaultMessage:"to focus a status in one of the columns"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"n")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.compose",defaultMessage:"to focus the compose textarea"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"alt"),"+",a()("kbd",{},void 0,"n")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.toot",defaultMessage:"to start a brand new toot"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"backspace")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.back",defaultMessage:"to navigate back"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"s")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.search",defaultMessage:"to focus search"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"esc")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.unfocus",defaultMessage:"to un-focus compose textarea/search"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"?")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.legend",defaultMessage:"to display this legend"})))))))},o}(_.a),i.propTypes={intl:m.a.object.isRequired,multiColumn:m.a.bool},n=d))||n}}); +webpackJsonp([22],{150:function(t,o,e){"use strict";e.d(o,"a",function(){return f});var n=e(2),i=e.n(n),d=e(1),r=e.n(d),a=e(3),s=e.n(a),c=e(4),u=e.n(c),l=e(0),b=e.n(l),v=e(10),h=e.n(v),f=function(t){function o(){var e,n,i;r()(this,o);for(var d=arguments.length,a=Array(d),c=0;c<d;c++)a[c]=arguments[c];return e=n=s()(this,t.call.apply(t,[this].concat(a))),n.handleClick=function(){n.props.onClick()},i=e,s()(n,i)}return u()(o,t),o.prototype.render=function(){var t=this.props,o=t.icon,e=t.type,n=t.active,d=t.columnHeaderId,r="";return o&&(r=i()("i",{className:"fa fa-fw fa-"+o+" column-header__icon"})),i()("h1",{className:h()("column-header",{active:n}),id:d||null},void 0,i()("button",{onClick:this.handleClick},void 0,r,e))},o}(b.a.PureComponent)},283:function(t,o,e){"use strict";e.d(o,"a",function(){return y});var n=e(2),i=e.n(n),d=e(1),r=e.n(d),a=e(3),s=e.n(a),c=e(4),u=e.n(c),l=e(34),b=e.n(l),v=e(0),h=e.n(v),f=e(150),k=e(90),p=e(35),y=function(t){function o(){var e,n,i;r()(this,o);for(var d=arguments.length,a=Array(d),c=0;c<d;c++)a[c]=arguments[c];return e=n=s()(this,t.call.apply(t,[this].concat(a))),n.handleHeaderClick=function(){var t=n.node.querySelector(".scrollable");t&&(n._interruptScrollAnimation=Object(k.b)(t))},n.handleScroll=b()(function(){void 0!==n._interruptScrollAnimation&&n._interruptScrollAnimation()},200),n.setRef=function(t){n.node=t},i=e,s()(n,i)}return u()(o,t),o.prototype.scrollTop=function(){var t=this.node.querySelector(".scrollable");t&&(this._interruptScrollAnimation=Object(k.b)(t))},o.prototype.render=function(){var t=this.props,o=t.heading,e=t.icon,n=t.children,d=t.active,r=t.hideHeadingOnMobile,a=o&&(!r||r&&!Object(p.b)(window.innerWidth)),s=a&&o.replace(/ /g,"-"),c=a&&i()(f.a,{icon:e,active:d,type:o,onClick:this.handleHeaderClick,columnHeaderId:s});return h.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":s,className:"column",onScroll:this.handleScroll},c,n)},o}(h.a.PureComponent)},286:function(t,o,e){"use strict";e.d(o,"a",function(){return y});var n,i,d=e(2),r=e.n(d),a=e(1),s=e.n(a),c=e(3),u=e.n(c),l=e(4),b=e.n(l),v=e(0),h=e.n(v),f=e(6),k=e(5),p=e.n(k),y=(i=n=function(t){function o(){var e,n,i;s()(this,o);for(var d=arguments.length,r=Array(d),a=0;a<d;a++)r[a]=arguments[a];return e=n=u()(this,t.call.apply(t,[this].concat(r))),n.handleClick=function(){window.history&&1===window.history.length?n.context.router.history.push("/"):n.context.router.history.goBack()},i=e,u()(n,i)}return b()(o,t),o.prototype.render=function(){return r()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,r()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),r()(f.b,{id:"column_back_button.label",defaultMessage:"Back"}))},o}(h.a.PureComponent),n.contextTypes={router:p.a.object},i)},298:function(t,o,e){"use strict";e.d(o,"a",function(){return h});var n=e(2),i=e.n(n),d=e(1),r=e.n(d),a=e(3),s=e.n(a),c=e(4),u=e.n(c),l=e(0),b=(e.n(l),e(6)),v=e(286),h=function(t){function o(){return r()(this,o),s()(this,t.apply(this,arguments))}return u()(o,t),o.prototype.render=function(){return i()("div",{className:"column-back-button--slim"},void 0,i()("div",{role:"button",tabIndex:"0",onClick:this.handleClick,className:"column-back-button column-back-button--slim-button"},void 0,i()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),i()(b.b,{id:"column_back_button.label",defaultMessage:"Back"})))},o}(v.a)},812:function(t,o,e){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),e.d(o,"default",function(){return C});var n,i,d,r=e(2),a=e.n(r),s=e(1),c=e.n(s),u=e(3),l=e.n(u),b=e(4),v=e.n(b),h=e(0),f=(e.n(h),e(283)),k=e(298),p=e(6),y=e(5),m=e.n(y),g=e(12),_=e.n(g),M=Object(p.f)({heading:{id:"keyboard_shortcuts.heading",defaultMessage:"Keyboard Shortcuts"}}),C=Object(p.g)((d=i=function(t){function o(){return c()(this,o),l()(this,t.apply(this,arguments))}return v()(o,t),o.prototype.render=function(){var t=this.props.intl;return a()(f.a,{icon:"question",heading:t.formatMessage(M.heading)},void 0,a()(k.a,{}),a()("div",{className:"keyboard-shortcuts scrollable optionally-scrollable"},void 0,a()("table",{},void 0,a()("thead",{},void 0,a()("tr",{},void 0,a()("th",{},void 0,a()(p.b,{id:"keyboard_shortcuts.hotkey",defaultMessage:"Hotkey"})),a()("th",{},void 0,a()(p.b,{id:"keyboard_shortcuts.description",defaultMessage:"Description"})))),a()("tbody",{},void 0,a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"r")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.reply",defaultMessage:"to reply"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"m")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.mention",defaultMessage:"to mention author"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"f")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.favourite",defaultMessage:"to favourite"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"b")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.boost",defaultMessage:"to boost"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"enter")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.enter",defaultMessage:"to open status"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"up")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.up",defaultMessage:"to move up in the list"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"down")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.down",defaultMessage:"to move down in the list"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"1"),"-",a()("kbd",{},void 0,"9")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.column",defaultMessage:"to focus a status in one of the columns"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"n")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.compose",defaultMessage:"to focus the compose textarea"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"alt"),"+",a()("kbd",{},void 0,"n")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.toot",defaultMessage:"to start a brand new toot"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"backspace")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.back",defaultMessage:"to navigate back"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"s")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.search",defaultMessage:"to focus search"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"esc")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.unfocus",defaultMessage:"to un-focus compose textarea/search"}))),a()("tr",{},void 0,a()("td",{},void 0,a()("kbd",{},void 0,"?")),a()("td",{},void 0,a()(p.b,{id:"keyboard_shortcuts.legend",defaultMessage:"to display this legend"})))))))},o}(_.a),i.propTypes={intl:m.a.object.isRequired,multiColumn:m.a.bool},n=d))||n}}); //# sourceMappingURL=keyboard_shortcuts.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/keyboard_shortcuts.js.map b/priv/static/packs/features/keyboard_shortcuts.js.map index 279906535..a4950b2f4 100644 --- a/priv/static/packs/features/keyboard_shortcuts.js.map +++ b/priv/static/packs/features/keyboard_shortcuts.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/keyboard_shortcuts.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/components/column_back_button_slim.js","webpack:///./app/javascript/mastodon/features/keyboard_shortcuts/index.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","Object","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","298","ColumnBackButtonSlim","__WEBPACK_IMPORTED_MODULE_6__column_back_button__","_ColumnBackButton","tabIndex","813","defineProperty","value","KeyboardShortcuts","_class2","__WEBPACK_IMPORTED_MODULE_5__ui_components_column__","__WEBPACK_IMPORTED_MODULE_6__components_column_back_button_slim__","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8_prop_types__","__WEBPACK_IMPORTED_MODULE_8_prop_types___default","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default","messages","_ImmutablePureCompone","intl","formatMessage","propTypes","isRequired","multiColumn","bool"],"mappings":"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","file":"features/keyboard_shortcuts.js","sourcesContent":["webpackJsonp([23],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 298:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButtonSlim; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_back_button__ = __webpack_require__(286);\n\n\n\n\n\n\n\n\nvar ColumnBackButtonSlim = function (_ColumnBackButton) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButtonSlim, _ColumnBackButton);\n\n function ColumnBackButtonSlim() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButtonSlim);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ColumnBackButton.apply(this, arguments));\n }\n\n ColumnBackButtonSlim.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-back-button--slim'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n onClick: this.handleClick,\n className: 'column-back-button column-back-button--slim-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n })));\n };\n\n return ColumnBackButtonSlim;\n}(__WEBPACK_IMPORTED_MODULE_6__column_back_button__[\"a\" /* default */]);\n\n\n\n/***/ }),\n\n/***/ 813:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return KeyboardShortcuts; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_column_back_button_slim__ = __webpack_require__(298);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _class2, _temp;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'keyboard_shortcuts.heading',\n 'defaultMessage': 'Keyboard Shortcuts'\n }\n});\n\nvar KeyboardShortcuts = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(KeyboardShortcuts, _ImmutablePureCompone);\n\n function KeyboardShortcuts() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, KeyboardShortcuts);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n KeyboardShortcuts.prototype.render = function render() {\n var intl = this.props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_components_column__[\"a\" /* default */], {\n icon: 'question',\n heading: intl.formatMessage(messages.heading)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_column_back_button_slim__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'keyboard-shortcuts scrollable optionally-scrollable'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('table', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('thead', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('th', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.hotkey',\n defaultMessage: 'Hotkey'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('th', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.description',\n defaultMessage: 'Description'\n })))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tbody', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'r')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.reply',\n defaultMessage: 'to reply'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'm')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.mention',\n defaultMessage: 'to mention author'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'f')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.favourite',\n defaultMessage: 'to favourite'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'b')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.boost',\n defaultMessage: 'to boost'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'enter')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.enter',\n defaultMessage: 'to open status'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'up')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.up',\n defaultMessage: 'to move up in the list'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'down')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.down',\n defaultMessage: 'to move down in the list'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, '1'), '-', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, '9')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.column',\n defaultMessage: 'to focus a status in one of the columns'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'n')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.compose',\n defaultMessage: 'to focus the compose textarea'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'alt'), '+', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'n')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.toot',\n defaultMessage: 'to start a brand new toot'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'backspace')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.back',\n defaultMessage: 'to navigate back'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 's')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.search',\n defaultMessage: 'to focus search'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'esc')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.unfocus',\n defaultMessage: 'to un-focus compose textarea/search'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, '?')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.legend',\n defaultMessage: 'to display this legend'\n })))))));\n };\n\n return KeyboardShortcuts;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n intl: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object.isRequired,\n multiColumn: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool\n}, _temp)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/keyboard_shortcuts.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport ColumnBackButton from './column_back_button';\n\nexport default class ColumnBackButtonSlim extends ColumnBackButton {\n\n render () {\n return (\n <div className='column-back-button--slim'>\n <div role='button' tabIndex='0' onClick={this.handleClick} className='column-back-button column-back-button--slim-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button_slim.js","import React from 'react';\nimport Column from '../ui/components/column';\nimport ColumnBackButtonSlim from '../../components/column_back_button_slim';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n heading: { id: 'keyboard_shortcuts.heading', defaultMessage: 'Keyboard Shortcuts' },\n});\n\n@injectIntl\nexport default class KeyboardShortcuts extends ImmutablePureComponent {\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n multiColumn: PropTypes.bool,\n };\n\n render () {\n const { intl } = this.props;\n\n return (\n <Column icon='question' heading={intl.formatMessage(messages.heading)}>\n <ColumnBackButtonSlim />\n <div className='keyboard-shortcuts scrollable optionally-scrollable'>\n <table>\n <thead>\n <tr>\n <th><FormattedMessage id='keyboard_shortcuts.hotkey' defaultMessage='Hotkey' /></th>\n <th><FormattedMessage id='keyboard_shortcuts.description' defaultMessage='Description' /></th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><kbd>r</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.reply' defaultMessage='to reply' /></td>\n </tr>\n <tr>\n <td><kbd>m</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.mention' defaultMessage='to mention author' /></td>\n </tr>\n <tr>\n <td><kbd>f</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.favourite' defaultMessage='to favourite' /></td>\n </tr>\n <tr>\n <td><kbd>b</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.boost' defaultMessage='to boost' /></td>\n </tr>\n <tr>\n <td><kbd>enter</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.enter' defaultMessage='to open status' /></td>\n </tr>\n <tr>\n <td><kbd>up</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.up' defaultMessage='to move up in the list' /></td>\n </tr>\n <tr>\n <td><kbd>down</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.down' defaultMessage='to move down in the list' /></td>\n </tr>\n <tr>\n <td><kbd>1</kbd>-<kbd>9</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.column' defaultMessage='to focus a status in one of the columns' /></td>\n </tr>\n <tr>\n <td><kbd>n</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.compose' defaultMessage='to focus the compose textarea' /></td>\n </tr>\n <tr>\n <td><kbd>alt</kbd>+<kbd>n</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.toot' defaultMessage='to start a brand new toot' /></td>\n </tr>\n <tr>\n <td><kbd>backspace</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.back' defaultMessage='to navigate back' /></td>\n </tr>\n <tr>\n <td><kbd>s</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.search' defaultMessage='to focus search' /></td>\n </tr>\n <tr>\n <td><kbd>esc</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.unfocus' defaultMessage='to un-focus compose textarea/search' /></td>\n </tr>\n <tr>\n <td><kbd>?</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.legend' defaultMessage='to display this legend' /></td>\n </tr>\n </tbody>\n </table>\n </div>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/keyboard_shortcuts/index.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/keyboard_shortcuts.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/components/column_back_button_slim.js","webpack:///./app/javascript/mastodon/features/keyboard_shortcuts/index.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","Object","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","298","ColumnBackButtonSlim","__WEBPACK_IMPORTED_MODULE_6__column_back_button__","_ColumnBackButton","tabIndex","812","defineProperty","value","KeyboardShortcuts","_class2","__WEBPACK_IMPORTED_MODULE_5__ui_components_column__","__WEBPACK_IMPORTED_MODULE_6__components_column_back_button_slim__","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8_prop_types__","__WEBPACK_IMPORTED_MODULE_8_prop_types___default","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default","messages","_ImmutablePureCompone","intl","formatMessage","propTypes","isRequired","multiColumn","bool"],"mappings":"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","file":"features/keyboard_shortcuts.js","sourcesContent":["webpackJsonp([22],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 298:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButtonSlim; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_back_button__ = __webpack_require__(286);\n\n\n\n\n\n\n\n\nvar ColumnBackButtonSlim = function (_ColumnBackButton) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButtonSlim, _ColumnBackButton);\n\n function ColumnBackButtonSlim() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButtonSlim);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ColumnBackButton.apply(this, arguments));\n }\n\n ColumnBackButtonSlim.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-back-button--slim'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n onClick: this.handleClick,\n className: 'column-back-button column-back-button--slim-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n })));\n };\n\n return ColumnBackButtonSlim;\n}(__WEBPACK_IMPORTED_MODULE_6__column_back_button__[\"a\" /* default */]);\n\n\n\n/***/ }),\n\n/***/ 812:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return KeyboardShortcuts; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_column_back_button_slim__ = __webpack_require__(298);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _class2, _temp;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n heading: {\n 'id': 'keyboard_shortcuts.heading',\n 'defaultMessage': 'Keyboard Shortcuts'\n }\n});\n\nvar KeyboardShortcuts = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(KeyboardShortcuts, _ImmutablePureCompone);\n\n function KeyboardShortcuts() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, KeyboardShortcuts);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n KeyboardShortcuts.prototype.render = function render() {\n var intl = this.props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_components_column__[\"a\" /* default */], {\n icon: 'question',\n heading: intl.formatMessage(messages.heading)\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_column_back_button_slim__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'keyboard-shortcuts scrollable optionally-scrollable'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('table', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('thead', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('th', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.hotkey',\n defaultMessage: 'Hotkey'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('th', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.description',\n defaultMessage: 'Description'\n })))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tbody', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'r')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.reply',\n defaultMessage: 'to reply'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'm')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.mention',\n defaultMessage: 'to mention author'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'f')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.favourite',\n defaultMessage: 'to favourite'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'b')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.boost',\n defaultMessage: 'to boost'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'enter')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.enter',\n defaultMessage: 'to open status'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'up')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.up',\n defaultMessage: 'to move up in the list'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'down')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.down',\n defaultMessage: 'to move down in the list'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, '1'), '-', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, '9')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.column',\n defaultMessage: 'to focus a status in one of the columns'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'n')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.compose',\n defaultMessage: 'to focus the compose textarea'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'alt'), '+', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'n')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.toot',\n defaultMessage: 'to start a brand new toot'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'backspace')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.back',\n defaultMessage: 'to navigate back'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 's')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.search',\n defaultMessage: 'to focus search'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, 'esc')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.unfocus',\n defaultMessage: 'to un-focus compose textarea/search'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('tr', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('kbd', {}, void 0, '?')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('td', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'keyboard_shortcuts.legend',\n defaultMessage: 'to display this legend'\n })))))));\n };\n\n return KeyboardShortcuts;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n intl: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object.isRequired,\n multiColumn: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool\n}, _temp)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/keyboard_shortcuts.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport ColumnBackButton from './column_back_button';\n\nexport default class ColumnBackButtonSlim extends ColumnBackButton {\n\n render () {\n return (\n <div className='column-back-button--slim'>\n <div role='button' tabIndex='0' onClick={this.handleClick} className='column-back-button column-back-button--slim-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button_slim.js","import React from 'react';\nimport Column from '../ui/components/column';\nimport ColumnBackButtonSlim from '../../components/column_back_button_slim';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n heading: { id: 'keyboard_shortcuts.heading', defaultMessage: 'Keyboard Shortcuts' },\n});\n\n@injectIntl\nexport default class KeyboardShortcuts extends ImmutablePureComponent {\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n multiColumn: PropTypes.bool,\n };\n\n render () {\n const { intl } = this.props;\n\n return (\n <Column icon='question' heading={intl.formatMessage(messages.heading)}>\n <ColumnBackButtonSlim />\n <div className='keyboard-shortcuts scrollable optionally-scrollable'>\n <table>\n <thead>\n <tr>\n <th><FormattedMessage id='keyboard_shortcuts.hotkey' defaultMessage='Hotkey' /></th>\n <th><FormattedMessage id='keyboard_shortcuts.description' defaultMessage='Description' /></th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><kbd>r</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.reply' defaultMessage='to reply' /></td>\n </tr>\n <tr>\n <td><kbd>m</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.mention' defaultMessage='to mention author' /></td>\n </tr>\n <tr>\n <td><kbd>f</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.favourite' defaultMessage='to favourite' /></td>\n </tr>\n <tr>\n <td><kbd>b</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.boost' defaultMessage='to boost' /></td>\n </tr>\n <tr>\n <td><kbd>enter</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.enter' defaultMessage='to open status' /></td>\n </tr>\n <tr>\n <td><kbd>up</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.up' defaultMessage='to move up in the list' /></td>\n </tr>\n <tr>\n <td><kbd>down</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.down' defaultMessage='to move down in the list' /></td>\n </tr>\n <tr>\n <td><kbd>1</kbd>-<kbd>9</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.column' defaultMessage='to focus a status in one of the columns' /></td>\n </tr>\n <tr>\n <td><kbd>n</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.compose' defaultMessage='to focus the compose textarea' /></td>\n </tr>\n <tr>\n <td><kbd>alt</kbd>+<kbd>n</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.toot' defaultMessage='to start a brand new toot' /></td>\n </tr>\n <tr>\n <td><kbd>backspace</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.back' defaultMessage='to navigate back' /></td>\n </tr>\n <tr>\n <td><kbd>s</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.search' defaultMessage='to focus search' /></td>\n </tr>\n <tr>\n <td><kbd>esc</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.unfocus' defaultMessage='to un-focus compose textarea/search' /></td>\n </tr>\n <tr>\n <td><kbd>?</kbd></td>\n <td><FormattedMessage id='keyboard_shortcuts.legend' defaultMessage='to display this legend' /></td>\n </tr>\n </tbody>\n </table>\n </div>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/keyboard_shortcuts/index.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/list_editor.js b/priv/static/packs/features/list_editor.js index c25b082fc..92c0d5140 100644 --- a/priv/static/packs/features/list_editor.js +++ b/priv/static/packs/features/list_editor.js @@ -1,2 +1,2 @@ -webpackJsonp([25],{826:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),t.d(n,"default",function(){return x});var a,i,o,r,c=t(2),s=t.n(c),u=t(1),d=t.n(u),l=t(3),p=t.n(l),f=t(4),v=t.n(f),h=t(0),m=(t.n(h),t(5)),b=t.n(m),g=t(13),_=t.n(g),y=t(9),I=t(12),j=t.n(I),R=t(6),C=t(300),O=t(975),N=t(976),q=t(28),M=t(27),w=t.n(M),k=function(e){return{title:e.getIn(["listEditor","title"]),accountIds:e.getIn(["listEditor","accounts","items"]),searchAccountIds:e.getIn(["listEditor","suggestions","items"])}},A=function(e){return{onInitialize:function(n){return e(Object(C.z)(n))},onClear:function(){return e(Object(C.t)())},onReset:function(){return e(Object(C.y)())}}},x=(a=Object(y.connect)(k,A))(i=Object(R.g)((r=o=function(e){function n(){return d()(this,n),p()(this,e.apply(this,arguments))}return v()(n,e),n.prototype.componentDidMount=function(){var e=this.props;(0,e.onInitialize)(e.listId)},n.prototype.componentWillUnmount=function(){(0,this.props.onReset)()},n.prototype.render=function(){var e=this.props,n=e.title,t=e.accountIds,a=e.searchAccountIds,i=e.onClear,o=a.size>0;return s()("div",{className:"modal-root__modal list-editor"},void 0,s()("h4",{},void 0,n),s()(N.a,{}),s()("div",{className:"drawer__pager"},void 0,s()("div",{className:"drawer__inner list-editor__accounts"},void 0,t.map(function(e){return s()(O.a,{accountId:e,added:!0},e)})),o&&s()("div",{role:"button",tabIndex:"-1",className:"drawer__backdrop",onClick:i}),s()(q.a,{defaultStyle:{x:-100},style:{x:w()(o?0:-100,{stiffness:210,damping:20})}},void 0,function(e){var n=e.x;return s()("div",{className:"drawer__inner backdrop",style:{transform:0===n?null:"translateX("+n+"%)",visibility:-100===n?"hidden":"visible"}},void 0,a.map(function(e){return s()(O.a,{accountId:e},e)}))})))},n}(j.a),o.propTypes={listId:b.a.string.isRequired,onClose:b.a.func.isRequired,intl:b.a.object.isRequired,onInitialize:b.a.func.isRequired,onClear:b.a.func.isRequired,onReset:b.a.func.isRequired,title:b.a.string.isRequired,accountIds:_.a.list.isRequired,searchAccountIds:_.a.list.isRequired},i=r))||i)||i},975:function(e,n,t){"use strict";t.d(n,"a",function(){return x});var a,i,o,r,c=t(2),s=t.n(c),u=t(1),d=t.n(u),l=t(3),p=t.n(l),f=t(4),v=t.n(f),h=t(0),m=(t.n(h),t(5)),b=t.n(m),g=t(9),_=t(66),y=t(12),I=t.n(y),j=t(13),R=t.n(j),C=t(56),O=t(55),N=t(23),q=t(6),M=t(300),w=Object(q.f)({remove:{id:"lists.account.remove",defaultMessage:"Remove from list"},add:{id:"lists.account.add",defaultMessage:"Add to list"}}),k=function(){var e=Object(_.c)();return function(n,t){var a=t.accountId,i=t.added;return{account:e(n,a),added:void 0===i?n.getIn(["listEditor","accounts","items"]).includes(a):i}}},A=function(e,n){var t=n.accountId;return{onRemove:function(){return e(Object(M.x)(t))},onAdd:function(){return e(Object(M.r)(t))}}},x=(a=Object(g.connect)(k,A))(i=Object(q.g)((r=o=function(e){function n(){return d()(this,n),p()(this,e.apply(this,arguments))}return v()(n,e),n.prototype.render=function(){var e=this.props,n=e.account,t=e.intl,a=e.onRemove,i=e.onAdd,o=e.added,r=void 0;return r=o?s()(N.a,{icon:"times",title:t.formatMessage(w.remove),onClick:a}):s()(N.a,{icon:"plus",title:t.formatMessage(w.add),onClick:i}),s()("div",{className:"account"},void 0,s()("div",{className:"account__wrapper"},void 0,s()("div",{className:"account__display-name"},void 0,s()("div",{className:"account__avatar-wrapper"},void 0,s()(C.a,{account:n,size:36})),s()(O.a,{account:n})),s()("div",{className:"account__relationship"},void 0,r)))},n}(I.a),o.propTypes={account:R.a.map.isRequired,intl:b.a.object.isRequired,onRemove:b.a.func.isRequired,onAdd:b.a.func.isRequired,added:b.a.bool},o.defaultProps={added:!1},i=r))||i)||i},976:function(e,n,t){"use strict";t.d(n,"a",function(){return R});var a,i,o=t(2),r=t.n(o),c=t(1),s=t.n(c),u=t(3),d=t.n(u),l=t(4),p=t.n(l),f=t(0),v=t.n(f),h=t(9),m=t(6),b=t(300),g=t(10),_=t.n(g),y=Object(m.f)({search:{id:"lists.search",defaultMessage:"Search among people you follow"}}),I=function(e){return{value:e.getIn(["listEditor","suggestions","value"])}},j=function(e){return{onSubmit:function(n){return e(Object(b.w)(n))},onClear:function(){return e(Object(b.t)())},onChange:function(n){return e(Object(b.s)(n))}}},R=(a=Object(h.connect)(I,j))(i=Object(m.g)(i=function(e){function n(){var t,a,i;s()(this,n);for(var o=arguments.length,r=Array(o),c=0;c<o;c++)r[c]=arguments[c];return t=a=d()(this,e.call.apply(e,[this].concat(r))),a.handleChange=function(e){a.props.onChange(e.target.value)},a.handleKeyUp=function(e){13===e.keyCode&&a.props.onSubmit(a.props.value)},a.handleClear=function(){a.props.onClear()},i=t,d()(a,i)}return p()(n,e),n.prototype.render=function(){var e=this.props,n=e.value,t=e.intl,a=n.length>0;return r()("div",{className:"list-editor__search search"},void 0,r()("label",{},void 0,r()("span",{style:{display:"none"}},void 0,t.formatMessage(y.search)),r()("input",{className:"search__input",type:"text",value:n,onChange:this.handleChange,onKeyUp:this.handleKeyUp,placeholder:t.formatMessage(y.search)})),r()("div",{role:"button",tabIndex:"0",className:"search__icon",onClick:this.handleClear},void 0,r()("i",{className:_()("fa fa-search",{active:!a})}),r()("i",{"aria-label":t.formatMessage(y.search),className:_()("fa fa-times-circle",{active:a})})))},n}(v.a.PureComponent))||i)||i}}); +webpackJsonp([24],{824:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),t.d(n,"default",function(){return x});var a,i,o,r,c=t(2),s=t.n(c),u=t(1),d=t.n(u),l=t(3),p=t.n(l),f=t(4),v=t.n(f),h=t(0),m=(t.n(h),t(5)),b=t.n(m),g=t(13),_=t.n(g),y=t(9),I=t(12),j=t.n(I),R=t(6),C=t(300),O=t(970),N=t(971),q=t(28),M=t(27),w=t.n(M),k=function(e){return{title:e.getIn(["listEditor","title"]),accountIds:e.getIn(["listEditor","accounts","items"]),searchAccountIds:e.getIn(["listEditor","suggestions","items"])}},A=function(e){return{onInitialize:function(n){return e(Object(C.z)(n))},onClear:function(){return e(Object(C.t)())},onReset:function(){return e(Object(C.y)())}}},x=(a=Object(y.connect)(k,A))(i=Object(R.g)((r=o=function(e){function n(){return d()(this,n),p()(this,e.apply(this,arguments))}return v()(n,e),n.prototype.componentDidMount=function(){var e=this.props;(0,e.onInitialize)(e.listId)},n.prototype.componentWillUnmount=function(){(0,this.props.onReset)()},n.prototype.render=function(){var e=this.props,n=e.title,t=e.accountIds,a=e.searchAccountIds,i=e.onClear,o=a.size>0;return s()("div",{className:"modal-root__modal list-editor"},void 0,s()("h4",{},void 0,n),s()(N.a,{}),s()("div",{className:"drawer__pager"},void 0,s()("div",{className:"drawer__inner list-editor__accounts"},void 0,t.map(function(e){return s()(O.a,{accountId:e,added:!0},e)})),o&&s()("div",{role:"button",tabIndex:"-1",className:"drawer__backdrop",onClick:i}),s()(q.a,{defaultStyle:{x:-100},style:{x:w()(o?0:-100,{stiffness:210,damping:20})}},void 0,function(e){var n=e.x;return s()("div",{className:"drawer__inner backdrop",style:{transform:0===n?null:"translateX("+n+"%)",visibility:-100===n?"hidden":"visible"}},void 0,a.map(function(e){return s()(O.a,{accountId:e},e)}))})))},n}(j.a),o.propTypes={listId:b.a.string.isRequired,onClose:b.a.func.isRequired,intl:b.a.object.isRequired,onInitialize:b.a.func.isRequired,onClear:b.a.func.isRequired,onReset:b.a.func.isRequired,title:b.a.string.isRequired,accountIds:_.a.list.isRequired,searchAccountIds:_.a.list.isRequired},i=r))||i)||i},970:function(e,n,t){"use strict";t.d(n,"a",function(){return x});var a,i,o,r,c=t(2),s=t.n(c),u=t(1),d=t.n(u),l=t(3),p=t.n(l),f=t(4),v=t.n(f),h=t(0),m=(t.n(h),t(5)),b=t.n(m),g=t(9),_=t(66),y=t(12),I=t.n(y),j=t(13),R=t.n(j),C=t(56),O=t(55),N=t(23),q=t(6),M=t(300),w=Object(q.f)({remove:{id:"lists.account.remove",defaultMessage:"Remove from list"},add:{id:"lists.account.add",defaultMessage:"Add to list"}}),k=function(){var e=Object(_.c)();return function(n,t){var a=t.accountId,i=t.added;return{account:e(n,a),added:void 0===i?n.getIn(["listEditor","accounts","items"]).includes(a):i}}},A=function(e,n){var t=n.accountId;return{onRemove:function(){return e(Object(M.x)(t))},onAdd:function(){return e(Object(M.r)(t))}}},x=(a=Object(g.connect)(k,A))(i=Object(q.g)((r=o=function(e){function n(){return d()(this,n),p()(this,e.apply(this,arguments))}return v()(n,e),n.prototype.render=function(){var e=this.props,n=e.account,t=e.intl,a=e.onRemove,i=e.onAdd,o=e.added,r=void 0;return r=o?s()(N.a,{icon:"times",title:t.formatMessage(w.remove),onClick:a}):s()(N.a,{icon:"plus",title:t.formatMessage(w.add),onClick:i}),s()("div",{className:"account"},void 0,s()("div",{className:"account__wrapper"},void 0,s()("div",{className:"account__display-name"},void 0,s()("div",{className:"account__avatar-wrapper"},void 0,s()(C.a,{account:n,size:36})),s()(O.a,{account:n})),s()("div",{className:"account__relationship"},void 0,r)))},n}(I.a),o.propTypes={account:R.a.map.isRequired,intl:b.a.object.isRequired,onRemove:b.a.func.isRequired,onAdd:b.a.func.isRequired,added:b.a.bool},o.defaultProps={added:!1},i=r))||i)||i},971:function(e,n,t){"use strict";t.d(n,"a",function(){return R});var a,i,o=t(2),r=t.n(o),c=t(1),s=t.n(c),u=t(3),d=t.n(u),l=t(4),p=t.n(l),f=t(0),v=t.n(f),h=t(9),m=t(6),b=t(300),g=t(10),_=t.n(g),y=Object(m.f)({search:{id:"lists.search",defaultMessage:"Search among people you follow"}}),I=function(e){return{value:e.getIn(["listEditor","suggestions","value"])}},j=function(e){return{onSubmit:function(n){return e(Object(b.w)(n))},onClear:function(){return e(Object(b.t)())},onChange:function(n){return e(Object(b.s)(n))}}},R=(a=Object(h.connect)(I,j))(i=Object(m.g)(i=function(e){function n(){var t,a,i;s()(this,n);for(var o=arguments.length,r=Array(o),c=0;c<o;c++)r[c]=arguments[c];return t=a=d()(this,e.call.apply(e,[this].concat(r))),a.handleChange=function(e){a.props.onChange(e.target.value)},a.handleKeyUp=function(e){13===e.keyCode&&a.props.onSubmit(a.props.value)},a.handleClear=function(){a.props.onClear()},i=t,d()(a,i)}return p()(n,e),n.prototype.render=function(){var e=this.props,n=e.value,t=e.intl,a=n.length>0;return r()("div",{className:"list-editor__search search"},void 0,r()("label",{},void 0,r()("span",{style:{display:"none"}},void 0,t.formatMessage(y.search)),r()("input",{className:"search__input",type:"text",value:n,onChange:this.handleChange,onKeyUp:this.handleKeyUp,placeholder:t.formatMessage(y.search)})),r()("div",{role:"button",tabIndex:"0",className:"search__icon",onClick:this.handleClear},void 0,r()("i",{className:_()("fa fa-search",{active:!a})}),r()("i",{"aria-label":t.formatMessage(y.search),className:_()("fa fa-times-circle",{active:a})})))},n}(v.a.PureComponent))||i)||i}}); //# sourceMappingURL=list_editor.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/list_editor.js.map b/priv/static/packs/features/list_editor.js.map index 3654b3438..07cbb75fb 100644 --- a/priv/static/packs/features/list_editor.js.map +++ b/priv/static/packs/features/list_editor.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/list_editor.js","webpack:///./app/javascript/mastodon/features/list_editor/index.js","webpack:///./app/javascript/mastodon/features/list_editor/components/account.js","webpack:///./app/javascript/mastodon/features/list_editor/components/search.js"],"names":["webpackJsonp","826","module","__webpack_exports__","__webpack_require__","Object","defineProperty","value","d","ListEditor","_dec","_class","_class2","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7_react_redux__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9_react_intl__","__WEBPACK_IMPORTED_MODULE_10__actions_lists__","__WEBPACK_IMPORTED_MODULE_11__components_account__","__WEBPACK_IMPORTED_MODULE_12__components_search__","__WEBPACK_IMPORTED_MODULE_13__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring___default","mapStateToProps","state","title","getIn","accountIds","searchAccountIds","mapDispatchToProps","dispatch","onInitialize","listId","onClear","onReset","_ImmutablePureCompone","this","apply","arguments","prototype","componentDidMount","_props","props","componentWillUnmount","render","_props2","showSearch","size","className","map","accountId","added","role","tabIndex","onClick","defaultStyle","x","style","stiffness","damping","_ref","transform","visibility","a","propTypes","string","isRequired","onClose","func","intl","object","list","975","Account","__WEBPACK_IMPORTED_MODULE_6_react_redux__","__WEBPACK_IMPORTED_MODULE_7__selectors__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_10__components_avatar__","__WEBPACK_IMPORTED_MODULE_11__components_display_name__","__WEBPACK_IMPORTED_MODULE_12__components_icon_button__","__WEBPACK_IMPORTED_MODULE_13_react_intl__","__WEBPACK_IMPORTED_MODULE_14__actions_lists__","messages","remove","id","defaultMessage","add","makeMapStateToProps","getAccount","account","includes","_ref2","onRemove","onAdd","button","icon","formatMessage","bool","defaultProps","976","Search","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_react_intl__","__WEBPACK_IMPORTED_MODULE_7__actions_lists__","__WEBPACK_IMPORTED_MODULE_8_classnames__","__WEBPACK_IMPORTED_MODULE_8_classnames___default","search","onSubmit","onChange","_React$PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","handleChange","e","target","handleKeyUp","keyCode","handleClear","hasValue","display","type","onKeyUp","placeholder","active","aria-label","PureComponent"],"mappings":"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","file":"features/list_editor.js","sourcesContent":["webpackJsonp([25],{\n\n/***/ 826:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return ListEditor; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_lists__ = __webpack_require__(300);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_account__ = __webpack_require__(975);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_search__ = __webpack_require__(976);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n title: state.getIn(['listEditor', 'title']),\n accountIds: state.getIn(['listEditor', 'accounts', 'items']),\n searchAccountIds: state.getIn(['listEditor', 'suggestions', 'items'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onInitialize: function onInitialize(listId) {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_lists__[\"z\" /* setupListEditor */])(listId));\n },\n onClear: function onClear() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_lists__[\"t\" /* clearListSuggestions */])());\n },\n onReset: function onReset() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_lists__[\"y\" /* resetListEditor */])());\n }\n };\n};\n\nvar ListEditor = (_dec = Object(__WEBPACK_IMPORTED_MODULE_7_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ListEditor, _ImmutablePureCompone);\n\n function ListEditor() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ListEditor);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n ListEditor.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n onInitialize = _props.onInitialize,\n listId = _props.listId;\n\n onInitialize(listId);\n };\n\n ListEditor.prototype.componentWillUnmount = function componentWillUnmount() {\n var onReset = this.props.onReset;\n\n onReset();\n };\n\n ListEditor.prototype.render = function render() {\n var _props2 = this.props,\n title = _props2.title,\n accountIds = _props2.accountIds,\n searchAccountIds = _props2.searchAccountIds,\n onClear = _props2.onClear;\n\n var showSearch = searchAccountIds.size > 0;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'modal-root__modal list-editor'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h4', {}, void 0, title), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_search__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__pager'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner list-editor__accounts'\n }, void 0, accountIds.map(function (accountId) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_account__[\"a\" /* default */], {\n accountId: accountId,\n added: true\n }, accountId);\n })), showSearch && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '-1',\n className: 'drawer__backdrop',\n onClick: onClear\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { x: -100 },\n style: { x: __WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring___default()(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }\n }, void 0, function (_ref) {\n var x = _ref.x;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner backdrop',\n style: { transform: x === 0 ? null : 'translateX(' + x + '%)', visibility: x === -100 ? 'hidden' : 'visible' }\n }, void 0, searchAccountIds.map(function (accountId) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_account__[\"a\" /* default */], {\n accountId: accountId\n }, accountId);\n }));\n })));\n };\n\n return ListEditor;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class2.propTypes = {\n listId: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string.isRequired,\n onClose: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object.isRequired,\n onInitialize: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onClear: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onReset: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n title: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list.isRequired,\n searchAccountIds: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list.isRequired\n}, _temp)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 975:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_lists__ = __webpack_require__(300);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"f\" /* defineMessages */])({\n remove: {\n 'id': 'lists.account.remove',\n 'defaultMessage': 'Remove from list'\n },\n add: {\n 'id': 'lists.account.add',\n 'defaultMessage': 'Add to list'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_7__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId,\n added = _ref.added;\n return {\n account: getAccount(state, accountId),\n added: typeof added === 'undefined' ? state.getIn(['listEditor', 'accounts', 'items']).includes(accountId) : added\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var accountId = _ref2.accountId;\n return {\n onRemove: function onRemove() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_lists__[\"x\" /* removeFromListEditor */])(accountId));\n },\n onAdd: function onAdd() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_lists__[\"r\" /* addToListEditor */])(accountId));\n }\n };\n};\n\nvar Account = (_dec = Object(__WEBPACK_IMPORTED_MODULE_6_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n onRemove = _props.onRemove,\n onAdd = _props.onAdd,\n added = _props.added;\n\n\n var button = void 0;\n\n if (added) {\n button = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_icon_button__[\"a\" /* default */], {\n icon: 'times',\n title: intl.formatMessage(messages.remove),\n onClick: onRemove\n });\n } else {\n button = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_icon_button__[\"a\" /* default */], {\n icon: 'plus',\n title: intl.formatMessage(messages.add),\n onClick: onAdd\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, button)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes___default.a.map.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object.isRequired,\n onRemove: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onAdd: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n added: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool\n}, _class2.defaultProps = {\n added: false\n}, _temp)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 976:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Search; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_lists__ = __webpack_require__(300);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_classnames__);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"f\" /* defineMessages */])({\n search: {\n 'id': 'lists.search',\n 'defaultMessage': 'Search among people you follow'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n value: state.getIn(['listEditor', 'suggestions', 'value'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onSubmit: function onSubmit(value) {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_lists__[\"w\" /* fetchListSuggestions */])(value));\n },\n onClear: function onClear() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_lists__[\"t\" /* clearListSuggestions */])());\n },\n onChange: function onChange(value) {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_lists__[\"s\" /* changeListSuggestions */])(value));\n }\n };\n};\n\nvar Search = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Search, _React$PureComponent);\n\n function Search() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Search);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(e.target.value);\n }, _this.handleKeyUp = function (e) {\n if (e.keyCode === 13) {\n _this.props.onSubmit(_this.props.value);\n }\n }, _this.handleClear = function () {\n _this.props.onClear();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Search.prototype.render = function render() {\n var _props = this.props,\n value = _props.value,\n intl = _props.intl;\n\n var hasValue = value.length > 0;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'list-editor__search search'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.search)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'search__input',\n type: 'text',\n value: value,\n onChange: this.handleChange,\n onKeyUp: this.handleKeyUp,\n placeholder: intl.formatMessage(messages.search)\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n className: 'search__icon',\n onClick: this.handleClear\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('fa fa-search', { active: !hasValue })\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n 'aria-label': intl.formatMessage(messages.search),\n className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('fa fa-times-circle', { active: hasValue })\n })));\n };\n\n return Search;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/list_editor.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { connect } from 'react-redux';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { injectIntl } from 'react-intl';\nimport { setupListEditor, clearListSuggestions, resetListEditor } from '../../actions/lists';\nimport Account from './components/account';\nimport Search from './components/search';\nimport Motion from '../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\n\nconst mapStateToProps = state => ({\n title: state.getIn(['listEditor', 'title']),\n accountIds: state.getIn(['listEditor', 'accounts', 'items']),\n searchAccountIds: state.getIn(['listEditor', 'suggestions', 'items']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n onInitialize: listId => dispatch(setupListEditor(listId)),\n onClear: () => dispatch(clearListSuggestions()),\n onReset: () => dispatch(resetListEditor()),\n});\n\n@connect(mapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class ListEditor extends ImmutablePureComponent {\n\n static propTypes = {\n listId: PropTypes.string.isRequired,\n onClose: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n onInitialize: PropTypes.func.isRequired,\n onClear: PropTypes.func.isRequired,\n onReset: PropTypes.func.isRequired,\n title: PropTypes.string.isRequired,\n accountIds: ImmutablePropTypes.list.isRequired,\n searchAccountIds: ImmutablePropTypes.list.isRequired,\n };\n\n componentDidMount () {\n const { onInitialize, listId } = this.props;\n onInitialize(listId);\n }\n\n componentWillUnmount () {\n const { onReset } = this.props;\n onReset();\n }\n\n render () {\n const { title, accountIds, searchAccountIds, onClear } = this.props;\n const showSearch = searchAccountIds.size > 0;\n\n return (\n <div className='modal-root__modal list-editor'>\n <h4>{title}</h4>\n\n <Search />\n\n <div className='drawer__pager'>\n <div className='drawer__inner list-editor__accounts'>\n {accountIds.map(accountId => <Account key={accountId} accountId={accountId} added />)}\n </div>\n\n {showSearch && <div role='button' tabIndex='-1' className='drawer__backdrop' onClick={onClear} />}\n\n <Motion defaultStyle={{ x: -100 }} style={{ x: spring(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }}>\n {({ x }) => (\n <div className='drawer__inner backdrop' style={{ transform: x === 0 ? null : `translateX(${x}%)`, visibility: x === -100 ? 'hidden' : 'visible' }}>\n {searchAccountIds.map(accountId => <Account key={accountId} accountId={accountId} />)}\n </div>\n )}\n </Motion>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/list_editor/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport IconButton from '../../../components/icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { removeFromListEditor, addToListEditor } from '../../../actions/lists';\n\nconst messages = defineMessages({\n remove: { id: 'lists.account.remove', defaultMessage: 'Remove from list' },\n add: { id: 'lists.account.add', defaultMessage: 'Add to list' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId, added }) => ({\n account: getAccount(state, accountId),\n added: typeof added === 'undefined' ? state.getIn(['listEditor', 'accounts', 'items']).includes(accountId) : added,\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { accountId }) => ({\n onRemove: () => dispatch(removeFromListEditor(accountId)),\n onAdd: () => dispatch(addToListEditor(accountId)),\n});\n\n@connect(makeMapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n intl: PropTypes.object.isRequired,\n onRemove: PropTypes.func.isRequired,\n onAdd: PropTypes.func.isRequired,\n added: PropTypes.bool,\n };\n\n static defaultProps = {\n added: false,\n };\n\n render () {\n const { account, intl, onRemove, onAdd, added } = this.props;\n\n let button;\n\n if (added) {\n button = <IconButton icon='times' title={intl.formatMessage(messages.remove)} onClick={onRemove} />;\n } else {\n button = <IconButton icon='plus' title={intl.formatMessage(messages.add)} onClick={onAdd} />;\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <div className='account__display-name'>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </div>\n\n <div className='account__relationship'>\n {button}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/list_editor/components/account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { fetchListSuggestions, clearListSuggestions, changeListSuggestions } from '../../../actions/lists';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n search: { id: 'lists.search', defaultMessage: 'Search among people you follow' },\n});\n\nconst mapStateToProps = state => ({\n value: state.getIn(['listEditor', 'suggestions', 'value']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n onSubmit: value => dispatch(fetchListSuggestions(value)),\n onClear: () => dispatch(clearListSuggestions()),\n onChange: value => dispatch(changeListSuggestions(value)),\n});\n\n@connect(mapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class Search extends React.PureComponent {\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n value: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n onSubmit: PropTypes.func.isRequired,\n onClear: PropTypes.func.isRequired,\n };\n\n handleChange = e => {\n this.props.onChange(e.target.value);\n }\n\n handleKeyUp = e => {\n if (e.keyCode === 13) {\n this.props.onSubmit(this.props.value);\n }\n }\n\n handleClear = () => {\n this.props.onClear();\n }\n\n render () {\n const { value, intl } = this.props;\n const hasValue = value.length > 0;\n\n return (\n <div className='list-editor__search search'>\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.search)}</span>\n\n <input\n className='search__input'\n type='text'\n value={value}\n onChange={this.handleChange}\n onKeyUp={this.handleKeyUp}\n placeholder={intl.formatMessage(messages.search)}\n />\n </label>\n\n <div role='button' tabIndex='0' className='search__icon' onClick={this.handleClear}>\n <i className={classNames('fa fa-search', { active: !hasValue })} />\n <i aria-label={intl.formatMessage(messages.search)} className={classNames('fa fa-times-circle', { active: hasValue })} />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/list_editor/components/search.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/list_editor.js","webpack:///./app/javascript/mastodon/features/list_editor/index.js","webpack:///./app/javascript/mastodon/features/list_editor/components/account.js","webpack:///./app/javascript/mastodon/features/list_editor/components/search.js"],"names":["webpackJsonp","824","module","__webpack_exports__","__webpack_require__","Object","defineProperty","value","d","ListEditor","_dec","_class","_class2","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7_react_redux__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_9_react_intl__","__WEBPACK_IMPORTED_MODULE_10__actions_lists__","__WEBPACK_IMPORTED_MODULE_11__components_account__","__WEBPACK_IMPORTED_MODULE_12__components_search__","__WEBPACK_IMPORTED_MODULE_13__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring___default","mapStateToProps","state","title","getIn","accountIds","searchAccountIds","mapDispatchToProps","dispatch","onInitialize","listId","onClear","onReset","_ImmutablePureCompone","this","apply","arguments","prototype","componentDidMount","_props","props","componentWillUnmount","render","_props2","showSearch","size","className","map","accountId","added","role","tabIndex","onClick","defaultStyle","x","style","stiffness","damping","_ref","transform","visibility","a","propTypes","string","isRequired","onClose","func","intl","object","list","970","Account","__WEBPACK_IMPORTED_MODULE_6_react_redux__","__WEBPACK_IMPORTED_MODULE_7__selectors__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_10__components_avatar__","__WEBPACK_IMPORTED_MODULE_11__components_display_name__","__WEBPACK_IMPORTED_MODULE_12__components_icon_button__","__WEBPACK_IMPORTED_MODULE_13_react_intl__","__WEBPACK_IMPORTED_MODULE_14__actions_lists__","messages","remove","id","defaultMessage","add","makeMapStateToProps","getAccount","account","includes","_ref2","onRemove","onAdd","button","icon","formatMessage","bool","defaultProps","971","Search","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_react_intl__","__WEBPACK_IMPORTED_MODULE_7__actions_lists__","__WEBPACK_IMPORTED_MODULE_8_classnames__","__WEBPACK_IMPORTED_MODULE_8_classnames___default","search","onSubmit","onChange","_React$PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","handleChange","e","target","handleKeyUp","keyCode","handleClear","hasValue","display","type","onKeyUp","placeholder","active","aria-label","PureComponent"],"mappings":"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","file":"features/list_editor.js","sourcesContent":["webpackJsonp([24],{\n\n/***/ 824:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return ListEditor; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_lists__ = __webpack_require__(300);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_account__ = __webpack_require__(970);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_search__ = __webpack_require__(971);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n title: state.getIn(['listEditor', 'title']),\n accountIds: state.getIn(['listEditor', 'accounts', 'items']),\n searchAccountIds: state.getIn(['listEditor', 'suggestions', 'items'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onInitialize: function onInitialize(listId) {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_lists__[\"z\" /* setupListEditor */])(listId));\n },\n onClear: function onClear() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_lists__[\"t\" /* clearListSuggestions */])());\n },\n onReset: function onReset() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_lists__[\"y\" /* resetListEditor */])());\n }\n };\n};\n\nvar ListEditor = (_dec = Object(__WEBPACK_IMPORTED_MODULE_7_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ListEditor, _ImmutablePureCompone);\n\n function ListEditor() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ListEditor);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n ListEditor.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n onInitialize = _props.onInitialize,\n listId = _props.listId;\n\n onInitialize(listId);\n };\n\n ListEditor.prototype.componentWillUnmount = function componentWillUnmount() {\n var onReset = this.props.onReset;\n\n onReset();\n };\n\n ListEditor.prototype.render = function render() {\n var _props2 = this.props,\n title = _props2.title,\n accountIds = _props2.accountIds,\n searchAccountIds = _props2.searchAccountIds,\n onClear = _props2.onClear;\n\n var showSearch = searchAccountIds.size > 0;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'modal-root__modal list-editor'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h4', {}, void 0, title), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_search__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__pager'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner list-editor__accounts'\n }, void 0, accountIds.map(function (accountId) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_account__[\"a\" /* default */], {\n accountId: accountId,\n added: true\n }, accountId);\n })), showSearch && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '-1',\n className: 'drawer__backdrop',\n onClick: onClear\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__ui_util_optional_motion__[\"a\" /* default */], {\n defaultStyle: { x: -100 },\n style: { x: __WEBPACK_IMPORTED_MODULE_14_react_motion_lib_spring___default()(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }\n }, void 0, function (_ref) {\n var x = _ref.x;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'drawer__inner backdrop',\n style: { transform: x === 0 ? null : 'translateX(' + x + '%)', visibility: x === -100 ? 'hidden' : 'visible' }\n }, void 0, searchAccountIds.map(function (accountId) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_account__[\"a\" /* default */], {\n accountId: accountId\n }, accountId);\n }));\n })));\n };\n\n return ListEditor;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class2.propTypes = {\n listId: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string.isRequired,\n onClose: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object.isRequired,\n onInitialize: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onClear: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onReset: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n title: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list.isRequired,\n searchAccountIds: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.list.isRequired\n}, _temp)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 970:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_lists__ = __webpack_require__(300);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"f\" /* defineMessages */])({\n remove: {\n 'id': 'lists.account.remove',\n 'defaultMessage': 'Remove from list'\n },\n add: {\n 'id': 'lists.account.add',\n 'defaultMessage': 'Add to list'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_7__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, _ref) {\n var accountId = _ref.accountId,\n added = _ref.added;\n return {\n account: getAccount(state, accountId),\n added: typeof added === 'undefined' ? state.getIn(['listEditor', 'accounts', 'items']).includes(accountId) : added\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref2) {\n var accountId = _ref2.accountId;\n return {\n onRemove: function onRemove() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_lists__[\"x\" /* removeFromListEditor */])(accountId));\n },\n onAdd: function onAdd() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_lists__[\"r\" /* addToListEditor */])(accountId));\n }\n };\n};\n\nvar Account = (_dec = Object(__WEBPACK_IMPORTED_MODULE_6_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"g\" /* injectIntl */])(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n onRemove = _props.onRemove,\n onAdd = _props.onAdd,\n added = _props.added;\n\n\n var button = void 0;\n\n if (added) {\n button = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_icon_button__[\"a\" /* default */], {\n icon: 'times',\n title: intl.formatMessage(messages.remove),\n onClick: onRemove\n });\n } else {\n button = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_icon_button__[\"a\" /* default */], {\n icon: 'plus',\n title: intl.formatMessage(messages.add),\n onClick: onAdd\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, button)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_9_react_immutable_proptypes___default.a.map.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object.isRequired,\n onRemove: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onAdd: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n added: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool\n}, _class2.defaultProps = {\n added: false\n}, _temp)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 971:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Search; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_lists__ = __webpack_require__(300);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_classnames__);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"f\" /* defineMessages */])({\n search: {\n 'id': 'lists.search',\n 'defaultMessage': 'Search among people you follow'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n value: state.getIn(['listEditor', 'suggestions', 'value'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onSubmit: function onSubmit(value) {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_lists__[\"w\" /* fetchListSuggestions */])(value));\n },\n onClear: function onClear() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_lists__[\"t\" /* clearListSuggestions */])());\n },\n onChange: function onChange(value) {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_lists__[\"s\" /* changeListSuggestions */])(value));\n }\n };\n};\n\nvar Search = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Search, _React$PureComponent);\n\n function Search() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Search);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(e.target.value);\n }, _this.handleKeyUp = function (e) {\n if (e.keyCode === 13) {\n _this.props.onSubmit(_this.props.value);\n }\n }, _this.handleClear = function () {\n _this.props.onClear();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Search.prototype.render = function render() {\n var _props = this.props,\n value = _props.value,\n intl = _props.intl;\n\n var hasValue = value.length > 0;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'list-editor__search search'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, intl.formatMessage(messages.search)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'search__input',\n type: 'text',\n value: value,\n onChange: this.handleChange,\n onKeyUp: this.handleKeyUp,\n placeholder: intl.formatMessage(messages.search)\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'button',\n tabIndex: '0',\n className: 'search__icon',\n onClick: this.handleClear\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('fa fa-search', { active: !hasValue })\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n 'aria-label': intl.formatMessage(messages.search),\n className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('fa fa-times-circle', { active: hasValue })\n })));\n };\n\n return Search;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/list_editor.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { connect } from 'react-redux';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { injectIntl } from 'react-intl';\nimport { setupListEditor, clearListSuggestions, resetListEditor } from '../../actions/lists';\nimport Account from './components/account';\nimport Search from './components/search';\nimport Motion from '../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\n\nconst mapStateToProps = state => ({\n title: state.getIn(['listEditor', 'title']),\n accountIds: state.getIn(['listEditor', 'accounts', 'items']),\n searchAccountIds: state.getIn(['listEditor', 'suggestions', 'items']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n onInitialize: listId => dispatch(setupListEditor(listId)),\n onClear: () => dispatch(clearListSuggestions()),\n onReset: () => dispatch(resetListEditor()),\n});\n\n@connect(mapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class ListEditor extends ImmutablePureComponent {\n\n static propTypes = {\n listId: PropTypes.string.isRequired,\n onClose: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n onInitialize: PropTypes.func.isRequired,\n onClear: PropTypes.func.isRequired,\n onReset: PropTypes.func.isRequired,\n title: PropTypes.string.isRequired,\n accountIds: ImmutablePropTypes.list.isRequired,\n searchAccountIds: ImmutablePropTypes.list.isRequired,\n };\n\n componentDidMount () {\n const { onInitialize, listId } = this.props;\n onInitialize(listId);\n }\n\n componentWillUnmount () {\n const { onReset } = this.props;\n onReset();\n }\n\n render () {\n const { title, accountIds, searchAccountIds, onClear } = this.props;\n const showSearch = searchAccountIds.size > 0;\n\n return (\n <div className='modal-root__modal list-editor'>\n <h4>{title}</h4>\n\n <Search />\n\n <div className='drawer__pager'>\n <div className='drawer__inner list-editor__accounts'>\n {accountIds.map(accountId => <Account key={accountId} accountId={accountId} added />)}\n </div>\n\n {showSearch && <div role='button' tabIndex='-1' className='drawer__backdrop' onClick={onClear} />}\n\n <Motion defaultStyle={{ x: -100 }} style={{ x: spring(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }}>\n {({ x }) => (\n <div className='drawer__inner backdrop' style={{ transform: x === 0 ? null : `translateX(${x}%)`, visibility: x === -100 ? 'hidden' : 'visible' }}>\n {searchAccountIds.map(accountId => <Account key={accountId} accountId={accountId} />)}\n </div>\n )}\n </Motion>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/list_editor/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { makeGetAccount } from '../../../selectors';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport IconButton from '../../../components/icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { removeFromListEditor, addToListEditor } from '../../../actions/lists';\n\nconst messages = defineMessages({\n remove: { id: 'lists.account.remove', defaultMessage: 'Remove from list' },\n add: { id: 'lists.account.add', defaultMessage: 'Add to list' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, { accountId, added }) => ({\n account: getAccount(state, accountId),\n added: typeof added === 'undefined' ? state.getIn(['listEditor', 'accounts', 'items']).includes(accountId) : added,\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { accountId }) => ({\n onRemove: () => dispatch(removeFromListEditor(accountId)),\n onAdd: () => dispatch(addToListEditor(accountId)),\n});\n\n@connect(makeMapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n intl: PropTypes.object.isRequired,\n onRemove: PropTypes.func.isRequired,\n onAdd: PropTypes.func.isRequired,\n added: PropTypes.bool,\n };\n\n static defaultProps = {\n added: false,\n };\n\n render () {\n const { account, intl, onRemove, onAdd, added } = this.props;\n\n let button;\n\n if (added) {\n button = <IconButton icon='times' title={intl.formatMessage(messages.remove)} onClick={onRemove} />;\n } else {\n button = <IconButton icon='plus' title={intl.formatMessage(messages.add)} onClick={onAdd} />;\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <div className='account__display-name'>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </div>\n\n <div className='account__relationship'>\n {button}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/list_editor/components/account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { fetchListSuggestions, clearListSuggestions, changeListSuggestions } from '../../../actions/lists';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n search: { id: 'lists.search', defaultMessage: 'Search among people you follow' },\n});\n\nconst mapStateToProps = state => ({\n value: state.getIn(['listEditor', 'suggestions', 'value']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n onSubmit: value => dispatch(fetchListSuggestions(value)),\n onClear: () => dispatch(clearListSuggestions()),\n onChange: value => dispatch(changeListSuggestions(value)),\n});\n\n@connect(mapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class Search extends React.PureComponent {\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n value: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n onSubmit: PropTypes.func.isRequired,\n onClear: PropTypes.func.isRequired,\n };\n\n handleChange = e => {\n this.props.onChange(e.target.value);\n }\n\n handleKeyUp = e => {\n if (e.keyCode === 13) {\n this.props.onSubmit(this.props.value);\n }\n }\n\n handleClear = () => {\n this.props.onClear();\n }\n\n render () {\n const { value, intl } = this.props;\n const hasValue = value.length > 0;\n\n return (\n <div className='list-editor__search search'>\n <label>\n <span style={{ display: 'none' }}>{intl.formatMessage(messages.search)}</span>\n\n <input\n className='search__input'\n type='text'\n value={value}\n onChange={this.handleChange}\n onKeyUp={this.handleKeyUp}\n placeholder={intl.formatMessage(messages.search)}\n />\n </label>\n\n <div role='button' tabIndex='0' className='search__icon' onClick={this.handleClear}>\n <i className={classNames('fa fa-search', { active: !hasValue })} />\n <i aria-label={intl.formatMessage(messages.search)} className={classNames('fa fa-times-circle', { active: hasValue })} />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/list_editor/components/search.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/list_timeline.js b/priv/static/packs/features/list_timeline.js index d4ef8229e..01edce8de 100644 --- a/priv/static/packs/features/list_timeline.js +++ b/priv/static/packs/features/list_timeline.js @@ -1,2 +1,2 @@ -webpackJsonp([13],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(0),f=n.n(p),g=n(6),b=(i=o=function(e){function t(){return c()(this,t),d()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},283:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(153),c=n(66),l=n(18),d=n(67),u=n(22),h=n(91),p=n(283),f=n(151),g=n(26),b=n(6),v=n(11),m=Object(b.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(d.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(d.n)(t)):n.shiftKey||!v.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(d.m)(t):Object(d.i)(t))},onDelete:function(t){e(v.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(b.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(u.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.k)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(b.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(93),f=n.n(p),g=n(0),b=n.n(g),v=n(152),m=n(5),y=n.n(m),M=n(288),O=n(149),I=n(293),C=n(8),j=(n.n(C),n(10)),k=n.n(j),_=n(154),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new I.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(_.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,d()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(_.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(b.a.Children.count(e.children)>0&&b.a.Children.count(e.children)<b.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(_.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof C.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,d=t.emptyMessage,u=t.onLoadMore,h=this.state.fullscreen,p=b.a.Children.count(n),f=c&&p>0&&u?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||p>0||!d?b.a.createElement("div",{className:k()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,b.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):b.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},d),i?s()(v.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),d=n.n(l),u=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],b=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(u.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(u.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?d.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&d.a.cloneElement(t,{hidden:!1})):d.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&d.a.cloneElement(t,{hidden:!0}))},t}(d.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return E});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),d=n.n(l),u=n(2),h=n.n(u),p=n(1),f=n.n(p),g=n(3),b=n.n(g),v=n(4),m=n.n(v),y=n(34),M=n.n(y),O=n(0),I=n.n(O),C=n(13),j=n.n(C),k=n(5),_=n.n(k),L=n(285),S=n(12),x=n.n(S),R=n(149),T=n(287),H=n(6),N=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=b()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,b()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(R.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(x.a),o.propTypes={disabled:_.a.bool,maxId:_.a.string,onClick:_.a.func.isRequired},i),E=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=b()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,b()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=d()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(H.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(H.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(N,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return I.a.createElement(T.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(x.a),r.propTypes={scrollKey:_.a.string.isRequired,statusIds:j.a.list.isRequired,onLoadMore:_.a.func,onScrollToTop:_.a.func,onScroll:_.a.func,trackScroll:_.a.bool,shouldUpdateScroll:_.a.func,isLoading:_.a.bool,isPartial:_.a.bool,hasMore:_.a.bool,prepend:_.a.node,emptyMessage:_.a.node},r.defaultProps={trackScroll:!0},s)},810:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return N});var o,i,r,s,a=n(2),c=n.n(a),l=n(1),d=n.n(l),u=n(3),h=n.n(u),p=n(4),f=n.n(p),g=n(0),b=n.n(g),v=n(9),m=n(5),y=n.n(m),M=n(92),O=n(69),I=n(68),C=n(297),j=n(6),k=n(70),_=n(19),L=n(300),S=n(26),x=n(845),R=n(296),T=Object(j.f)({deleteMessage:{id:"confirmations.delete_list.message",defaultMessage:"Are you sure you want to permanently delete this list?"},deleteConfirm:{id:"confirmations.delete_list.confirm",defaultMessage:"Delete"}}),H=function(e,t){return{list:e.getIn(["lists",t.params.id]),hasUnread:e.getIn(["timelines","list:"+t.params.id,"unread"])>0}},N=(o=Object(v.connect)(H))(i=Object(j.g)((s=r=function(e){function t(){var n,o,i;d()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;t?n(Object(C.f)(t)):(n(Object(C.d)("LIST",{id:o.props.params.id})),o.context.router.history.push("/"))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(C.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){var t=o.props.params.id;o.props.dispatch(Object(_.p)(t,{maxId:e}))},o.handleEditClick=function(){o.props.dispatch(Object(S.d)("LIST_EDITOR",{listId:o.props.params.id}))},o.handleDeleteClick=function(){var e=o.props,t=e.dispatch,n=e.columnId,i=e.intl,r=o.props.params.id;t(Object(S.d)("CONFIRM",{message:i.formatMessage(T.deleteMessage),confirm:i.formatMessage(T.deleteConfirm),onConfirm:function(){t(Object(L.u)(r)),n?t(Object(C.f)(n)):o.context.router.history.push("/lists")}}))},i=n,h()(o,i)}return f()(t,e),t.prototype.componentDidMount=function(){var e=this.props.dispatch,t=this.props.params.id;e(Object(L.v)(t)),e(Object(_.p)(t)),this.disconnect=e(Object(k.c)(t))},t.prototype.componentWillUnmount=function(){this.disconnect&&(this.disconnect(),this.disconnect=null)},t.prototype.render=function(){var e=this.props,t=e.hasUnread,n=e.columnId,o=e.multiColumn,i=e.list,r=this.props.params.id,s=!!n,a=i?i.get("title"):r;return void 0===i?c()(O.a,{},void 0,c()("div",{className:"scrollable"},void 0,c()(R.a,{}))):!1===i?c()(O.a,{},void 0,c()("div",{className:"scrollable"},void 0,c()(x.a,{}))):b.a.createElement(O.a,{ref:this.setRef},c()(I.a,{icon:"bars",active:t,title:a,onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:s,multiColumn:o},void 0,c()("div",{className:"column-header__links"},void 0,c()("button",{className:"text-btn column-header__setting-btn",tabIndex:"0",onClick:this.handleEditClick},void 0,c()("i",{className:"fa fa-pencil"})," ",c()(j.b,{id:"lists.edit",defaultMessage:"Edit list"})),c()("button",{className:"text-btn column-header__setting-btn",tabIndex:"0",onClick:this.handleDeleteClick},void 0,c()("i",{className:"fa fa-trash"})," ",c()(j.b,{id:"lists.delete",defaultMessage:"Delete list"}))),c()("hr",{})),c()(M.a,{trackScroll:!s,scrollKey:"list_timeline-"+n,timelineId:"list:"+r,onLoadMore:this.handleLoadMore,emptyMessage:c()(j.b,{id:"empty_column.list",defaultMessage:"There is nothing in this list yet. When members of this list post new statuses, they will appear here."})}))},t}(b.a.PureComponent),r.contextTypes={router:y.a.object},i=s))||i)||i},845:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(6)),a=function(){return i()("div",{className:"regeneration-indicator missing-indicator"},void 0,i()("div",{},void 0,i()("div",{className:"regeneration-indicator__label"},void 0,i()(s.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),i()(s.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=a},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),d=(n.n(l),n(11)),u=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===d.g)),r&&i&&o.get("account")!==d.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=u();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},p=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,p)(s.a)}}); +webpackJsonp([11],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(0),f=n.n(p),g=n(6),b=(i=o=function(e){function t(){return c()(this,t),d()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},282:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:r,account:e,status:t}),n(Object(i.d)("REPORT"))}}t.a=o;var i=(n(14),n(26)),r="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(152),c=n(66),l=n(18),d=n(67),u=n(22),h=n(91),p=n(282),f=n(284),g=n(26),b=n(6),v=n(11),m=Object(b.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(d.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(d.n)(t)):n.shiftKey||!v.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(d.m)(t):Object(d.i)(t))},onDelete:function(t){e(v.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(b.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(u.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.a)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(b.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),d=n.n(l),u=n(4),h=n.n(u),p=n(93),f=n.n(p),g=n(0),b=n.n(g),v=n(151),m=n(5),y=n.n(m),M=n(288),O=n(149),I=n(293),C=n(8),j=(n.n(C),n(10)),k=n.n(j),_=n(153),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new I.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(_.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,d()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(_.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(b.a.Children.count(e.children)>0&&b.a.Children.count(e.children)<b.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(_.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof C.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,d=t.emptyMessage,u=t.onLoadMore,h=this.state.fullscreen,p=b.a.Children.count(n),f=c&&p>0&&u?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||p>0||!d?b.a.createElement("div",{className:k()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,b.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):b.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},d),i?s()(v.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),d=n.n(l),u=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],b=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(u.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(u.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?d.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&d.a.cloneElement(t,{hidden:!1})):d.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&d.a.cloneElement(t,{hidden:!0}))},t}(d.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return E});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),d=n.n(l),u=n(2),h=n.n(u),p=n(1),f=n.n(p),g=n(3),b=n.n(g),v=n(4),m=n.n(v),y=n(34),M=n.n(y),O=n(0),I=n.n(O),C=n(13),j=n.n(C),k=n(5),_=n.n(k),L=n(285),S=n(12),R=n.n(S),x=n(149),T=n(287),H=n(6),N=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=b()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,b()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(x.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(R.a),o.propTypes={disabled:_.a.bool,maxId:_.a.string,onClick:_.a.func.isRequired},i),E=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=b()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,b()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=d()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(H.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(H.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(N,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return I.a.createElement(T.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(R.a),r.propTypes={scrollKey:_.a.string.isRequired,statusIds:j.a.list.isRequired,onLoadMore:_.a.func,onScrollToTop:_.a.func,onScroll:_.a.func,trackScroll:_.a.bool,shouldUpdateScroll:_.a.func,isLoading:_.a.bool,isPartial:_.a.bool,hasMore:_.a.bool,prepend:_.a.node,emptyMessage:_.a.node},r.defaultProps={trackScroll:!0},s)},809:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return N});var o,i,r,s,a=n(2),c=n.n(a),l=n(1),d=n.n(l),u=n(3),h=n.n(u),p=n(4),f=n.n(p),g=n(0),b=n.n(g),v=n(9),m=n(5),y=n.n(m),M=n(92),O=n(69),I=n(68),C=n(297),j=n(6),k=n(70),_=n(19),L=n(300),S=n(26),R=n(843),x=n(296),T=Object(j.f)({deleteMessage:{id:"confirmations.delete_list.message",defaultMessage:"Are you sure you want to permanently delete this list?"},deleteConfirm:{id:"confirmations.delete_list.confirm",defaultMessage:"Delete"}}),H=function(e,t){return{list:e.getIn(["lists",t.params.id]),hasUnread:e.getIn(["timelines","list:"+t.params.id,"unread"])>0}},N=(o=Object(v.connect)(H))(i=Object(j.g)((s=r=function(e){function t(){var n,o,i;d()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;t?n(Object(C.f)(t)):(n(Object(C.d)("LIST",{id:o.props.params.id})),o.context.router.history.push("/"))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(C.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){var t=o.props.params.id;o.props.dispatch(Object(_.p)(t,{maxId:e}))},o.handleEditClick=function(){o.props.dispatch(Object(S.d)("LIST_EDITOR",{listId:o.props.params.id}))},o.handleDeleteClick=function(){var e=o.props,t=e.dispatch,n=e.columnId,i=e.intl,r=o.props.params.id;t(Object(S.d)("CONFIRM",{message:i.formatMessage(T.deleteMessage),confirm:i.formatMessage(T.deleteConfirm),onConfirm:function(){t(Object(L.u)(r)),n?t(Object(C.f)(n)):o.context.router.history.push("/lists")}}))},i=n,h()(o,i)}return f()(t,e),t.prototype.componentDidMount=function(){var e=this.props.dispatch,t=this.props.params.id;e(Object(L.v)(t)),e(Object(_.p)(t)),this.disconnect=e(Object(k.c)(t))},t.prototype.componentWillUnmount=function(){this.disconnect&&(this.disconnect(),this.disconnect=null)},t.prototype.render=function(){var e=this.props,t=e.hasUnread,n=e.columnId,o=e.multiColumn,i=e.list,r=this.props.params.id,s=!!n,a=i?i.get("title"):r;return void 0===i?c()(O.a,{},void 0,c()("div",{className:"scrollable"},void 0,c()(x.a,{}))):!1===i?c()(O.a,{},void 0,c()("div",{className:"scrollable"},void 0,c()(R.a,{}))):b.a.createElement(O.a,{ref:this.setRef},c()(I.a,{icon:"bars",active:t,title:a,onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:s,multiColumn:o},void 0,c()("div",{className:"column-header__links"},void 0,c()("button",{className:"text-btn column-header__setting-btn",tabIndex:"0",onClick:this.handleEditClick},void 0,c()("i",{className:"fa fa-pencil"})," ",c()(j.b,{id:"lists.edit",defaultMessage:"Edit list"})),c()("button",{className:"text-btn column-header__setting-btn",tabIndex:"0",onClick:this.handleDeleteClick},void 0,c()("i",{className:"fa fa-trash"})," ",c()(j.b,{id:"lists.delete",defaultMessage:"Delete list"}))),c()("hr",{})),c()(M.a,{trackScroll:!s,scrollKey:"list_timeline-"+n,timelineId:"list:"+r,onLoadMore:this.handleLoadMore,emptyMessage:c()(j.b,{id:"empty_column.list",defaultMessage:"There is nothing in this list yet. When members of this list post new statuses, they will appear here."})}))},t}(b.a.PureComponent),r.contextTypes={router:y.a.object},i=s))||i)||i},843:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(6)),a=function(){return i()("div",{className:"regeneration-indicator missing-indicator"},void 0,i()("div",{},void 0,i()("div",{className:"regeneration-indicator__label"},void 0,i()(s.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),i()(s.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=a},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),d=(n.n(l),n(11)),u=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===d.g)),r&&i&&o.get("account")!==d.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=u();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},p=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,p)(s.a)}}); //# sourceMappingURL=list_timeline.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/list_timeline.js.map b/priv/static/packs/features/list_timeline.js.map index 77d55372d..d1e887c41 100644 --- a/priv/static/packs/features/list_timeline.js.map +++ b/priv/static/packs/features/list_timeline.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/list_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/list_timeline/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","283","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","810","defineProperty","value","ListTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","__WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_8__components_column__","__WEBPACK_IMPORTED_MODULE_9__components_column_header__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__actions_streaming__","__WEBPACK_IMPORTED_MODULE_13__actions_timelines__","__WEBPACK_IMPORTED_MODULE_14__actions_lists__","__WEBPACK_IMPORTED_MODULE_15__actions_modal__","__WEBPACK_IMPORTED_MODULE_16__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_17__components_loading_indicator__","mapStateToProps","params","hasUnread","handlePin","columnId","history","handleMove","dir","_this$props2","handleHeaderClick","column","handleEditClick","listId","handleDeleteClick","_this$props3","multiColumn","pinned","title","icon","active","onPin","onMove","timelineId","845","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","filter","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4"],"mappings":"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","file":"features/list_timeline.js","sourcesContent":["webpackJsonp([13],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 810:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return ListTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__actions_streaming__ = __webpack_require__(70);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_lists__ = __webpack_require__(300);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__components_missing_indicator__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__components_loading_indicator__ = __webpack_require__(296);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n deleteMessage: {\n 'id': 'confirmations.delete_list.message',\n 'defaultMessage': 'Are you sure you want to permanently delete this list?'\n },\n deleteConfirm: {\n 'id': 'confirmations.delete_list.confirm',\n 'defaultMessage': 'Delete'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n list: state.getIn(['lists', props.params.id]),\n hasUnread: state.getIn(['timelines', 'list:' + props.params.id, 'unread']) > 0\n };\n};\n\nvar ListTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ListTimeline, _React$PureComponent);\n\n function ListTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ListTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('LIST', { id: _this.props.params.id }));\n _this.context.router.history.push('/');\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n var id = _this.props.params.id;\n\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_timelines__[\"p\" /* expandListTimeline */])(id, { maxId: maxId }));\n }, _this.handleEditClick = function () {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_15__actions_modal__[\"d\" /* openModal */])('LIST_EDITOR', { listId: _this.props.params.id }));\n }, _this.handleDeleteClick = function () {\n var _this$props3 = _this.props,\n dispatch = _this$props3.dispatch,\n columnId = _this$props3.columnId,\n intl = _this$props3.intl;\n var id = _this.props.params.id;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_15__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_lists__[\"u\" /* deleteList */])(id));\n\n if (!!columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n _this.context.router.history.push('/lists');\n }\n }\n }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ListTimeline.prototype.componentDidMount = function componentDidMount() {\n var dispatch = this.props.dispatch;\n var id = this.props.params.id;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_lists__[\"v\" /* fetchList */])(id));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_timelines__[\"p\" /* expandListTimeline */])(id));\n\n this.disconnect = dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_streaming__[\"c\" /* connectListStream */])(id));\n };\n\n ListTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n };\n\n ListTimeline.prototype.render = function render() {\n var _props = this.props,\n hasUnread = _props.hasUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn,\n list = _props.list;\n var id = this.props.params.id;\n\n var pinned = !!columnId;\n var title = list ? list.get('title') : id;\n\n if (typeof list === 'undefined') {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17__components_loading_indicator__[\"a\" /* default */], {})));\n } else if (list === false) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__components_missing_indicator__[\"a\" /* default */], {})));\n }\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_8__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_column_header__[\"a\" /* default */], {\n icon: 'bars',\n active: hasUnread,\n title: title,\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-header__links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'text-btn column-header__setting-btn',\n tabIndex: '0',\n onClick: this.handleEditClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-pencil'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'lists.edit',\n defaultMessage: 'Edit list'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'text-btn column-header__setting-btn',\n tabIndex: '0',\n onClick: this.handleDeleteClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-trash'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'lists.delete',\n defaultMessage: 'Delete list'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('hr', {})),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__[\"a\" /* default */], {\n trackScroll: !pinned,\n scrollKey: 'list_timeline-' + columnId,\n timelineId: 'list:' + id,\n onLoadMore: this.handleLoadMore,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.list',\n defaultMessage: 'There is nothing in this list yet. When members of this list post new statuses, they will appear here.'\n })\n })\n );\n };\n\n return ListTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class2.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/list_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { FormattedMessage, defineMessages, injectIntl } from 'react-intl';\nimport { connectListStream } from '../../actions/streaming';\nimport { expandListTimeline } from '../../actions/timelines';\nimport { fetchList, deleteList } from '../../actions/lists';\nimport { openModal } from '../../actions/modal';\nimport MissingIndicator from '../../components/missing_indicator';\nimport LoadingIndicator from '../../components/loading_indicator';\n\nconst messages = defineMessages({\n deleteMessage: { id: 'confirmations.delete_list.message', defaultMessage: 'Are you sure you want to permanently delete this list?' },\n deleteConfirm: { id: 'confirmations.delete_list.confirm', defaultMessage: 'Delete' },\n});\n\nconst mapStateToProps = (state, props) => ({\n list: state.getIn(['lists', props.params.id]),\n hasUnread: state.getIn(['timelines', `list:${props.params.id}`, 'unread']) > 0,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class ListTimeline extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n columnId: PropTypes.string,\n hasUnread: PropTypes.bool,\n multiColumn: PropTypes.bool,\n list: PropTypes.oneOfType([ImmutablePropTypes.map, PropTypes.bool]),\n intl: PropTypes.object.isRequired,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('LIST', { id: this.props.params.id }));\n this.context.router.history.push('/');\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n componentDidMount () {\n const { dispatch } = this.props;\n const { id } = this.props.params;\n\n dispatch(fetchList(id));\n dispatch(expandListTimeline(id));\n\n this.disconnect = dispatch(connectListStream(id));\n }\n\n componentWillUnmount () {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n const { id } = this.props.params;\n this.props.dispatch(expandListTimeline(id, { maxId }));\n }\n\n handleEditClick = () => {\n this.props.dispatch(openModal('LIST_EDITOR', { listId: this.props.params.id }));\n }\n\n handleDeleteClick = () => {\n const { dispatch, columnId, intl } = this.props;\n const { id } = this.props.params;\n\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => {\n dispatch(deleteList(id));\n\n if (!!columnId) {\n dispatch(removeColumn(columnId));\n } else {\n this.context.router.history.push('/lists');\n }\n },\n }));\n }\n\n render () {\n const { hasUnread, columnId, multiColumn, list } = this.props;\n const { id } = this.props.params;\n const pinned = !!columnId;\n const title = list ? list.get('title') : id;\n\n if (typeof list === 'undefined') {\n return (\n <Column>\n <div className='scrollable'>\n <LoadingIndicator />\n </div>\n </Column>\n );\n } else if (list === false) {\n return (\n <Column>\n <div className='scrollable'>\n <MissingIndicator />\n </div>\n </Column>\n );\n }\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='bars'\n active={hasUnread}\n title={title}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <div className='column-header__links'>\n <button className='text-btn column-header__setting-btn' tabIndex='0' onClick={this.handleEditClick}>\n <i className='fa fa-pencil' /> <FormattedMessage id='lists.edit' defaultMessage='Edit list' />\n </button>\n\n <button className='text-btn column-header__setting-btn' tabIndex='0' onClick={this.handleDeleteClick}>\n <i className='fa fa-trash' /> <FormattedMessage id='lists.delete' defaultMessage='Delete list' />\n </button>\n </div>\n\n <hr />\n </ColumnHeader>\n\n <StatusListContainer\n trackScroll={!pinned}\n scrollKey={`list_timeline-${columnId}`}\n timelineId={`list:${id}`}\n onLoadMore={this.handleLoadMore}\n emptyMessage={<FormattedMessage id='empty_column.list' defaultMessage='There is nothing in this list yet. When members of this list post new statuses, they will appear here.' />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/list_timeline/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/list_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/list_timeline/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","282","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","809","defineProperty","value","ListTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","__WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_8__components_column__","__WEBPACK_IMPORTED_MODULE_9__components_column_header__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__actions_streaming__","__WEBPACK_IMPORTED_MODULE_13__actions_timelines__","__WEBPACK_IMPORTED_MODULE_14__actions_lists__","__WEBPACK_IMPORTED_MODULE_15__actions_modal__","__WEBPACK_IMPORTED_MODULE_16__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_17__components_loading_indicator__","mapStateToProps","params","hasUnread","handlePin","columnId","history","handleMove","dir","_this$props2","handleHeaderClick","column","handleEditClick","listId","handleDeleteClick","_this$props3","multiColumn","pinned","title","icon","active","onPin","onMove","timelineId","843","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","filter","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4"],"mappings":"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","file":"features/list_timeline.js","sourcesContent":["webpackJsonp([11],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 809:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return ListTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__actions_streaming__ = __webpack_require__(70);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_lists__ = __webpack_require__(300);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__components_missing_indicator__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__components_loading_indicator__ = __webpack_require__(296);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n deleteMessage: {\n 'id': 'confirmations.delete_list.message',\n 'defaultMessage': 'Are you sure you want to permanently delete this list?'\n },\n deleteConfirm: {\n 'id': 'confirmations.delete_list.confirm',\n 'defaultMessage': 'Delete'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n list: state.getIn(['lists', props.params.id]),\n hasUnread: state.getIn(['timelines', 'list:' + props.params.id, 'unread']) > 0\n };\n};\n\nvar ListTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ListTimeline, _React$PureComponent);\n\n function ListTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ListTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('LIST', { id: _this.props.params.id }));\n _this.context.router.history.push('/');\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n var id = _this.props.params.id;\n\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_timelines__[\"p\" /* expandListTimeline */])(id, { maxId: maxId }));\n }, _this.handleEditClick = function () {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_15__actions_modal__[\"d\" /* openModal */])('LIST_EDITOR', { listId: _this.props.params.id }));\n }, _this.handleDeleteClick = function () {\n var _this$props3 = _this.props,\n dispatch = _this$props3.dispatch,\n columnId = _this$props3.columnId,\n intl = _this$props3.intl;\n var id = _this.props.params.id;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_15__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_lists__[\"u\" /* deleteList */])(id));\n\n if (!!columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n _this.context.router.history.push('/lists');\n }\n }\n }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ListTimeline.prototype.componentDidMount = function componentDidMount() {\n var dispatch = this.props.dispatch;\n var id = this.props.params.id;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_lists__[\"v\" /* fetchList */])(id));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_timelines__[\"p\" /* expandListTimeline */])(id));\n\n this.disconnect = dispatch(Object(__WEBPACK_IMPORTED_MODULE_12__actions_streaming__[\"c\" /* connectListStream */])(id));\n };\n\n ListTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n };\n\n ListTimeline.prototype.render = function render() {\n var _props = this.props,\n hasUnread = _props.hasUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn,\n list = _props.list;\n var id = this.props.params.id;\n\n var pinned = !!columnId;\n var title = list ? list.get('title') : id;\n\n if (typeof list === 'undefined') {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17__components_loading_indicator__[\"a\" /* default */], {})));\n } else if (list === false) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__components_missing_indicator__[\"a\" /* default */], {})));\n }\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_8__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_column_header__[\"a\" /* default */], {\n icon: 'bars',\n active: hasUnread,\n title: title,\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-header__links'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'text-btn column-header__setting-btn',\n tabIndex: '0',\n onClick: this.handleEditClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-pencil'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'lists.edit',\n defaultMessage: 'Edit list'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'text-btn column-header__setting-btn',\n tabIndex: '0',\n onClick: this.handleDeleteClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-trash'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'lists.delete',\n defaultMessage: 'Delete list'\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('hr', {})),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_containers_status_list_container__[\"a\" /* default */], {\n trackScroll: !pinned,\n scrollKey: 'list_timeline-' + columnId,\n timelineId: 'list:' + id,\n onLoadMore: this.handleLoadMore,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.list',\n defaultMessage: 'There is nothing in this list yet. When members of this list post new statuses, they will appear here.'\n })\n })\n );\n };\n\n return ListTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class2.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/list_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { FormattedMessage, defineMessages, injectIntl } from 'react-intl';\nimport { connectListStream } from '../../actions/streaming';\nimport { expandListTimeline } from '../../actions/timelines';\nimport { fetchList, deleteList } from '../../actions/lists';\nimport { openModal } from '../../actions/modal';\nimport MissingIndicator from '../../components/missing_indicator';\nimport LoadingIndicator from '../../components/loading_indicator';\n\nconst messages = defineMessages({\n deleteMessage: { id: 'confirmations.delete_list.message', defaultMessage: 'Are you sure you want to permanently delete this list?' },\n deleteConfirm: { id: 'confirmations.delete_list.confirm', defaultMessage: 'Delete' },\n});\n\nconst mapStateToProps = (state, props) => ({\n list: state.getIn(['lists', props.params.id]),\n hasUnread: state.getIn(['timelines', `list:${props.params.id}`, 'unread']) > 0,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class ListTimeline extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n columnId: PropTypes.string,\n hasUnread: PropTypes.bool,\n multiColumn: PropTypes.bool,\n list: PropTypes.oneOfType([ImmutablePropTypes.map, PropTypes.bool]),\n intl: PropTypes.object.isRequired,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('LIST', { id: this.props.params.id }));\n this.context.router.history.push('/');\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n componentDidMount () {\n const { dispatch } = this.props;\n const { id } = this.props.params;\n\n dispatch(fetchList(id));\n dispatch(expandListTimeline(id));\n\n this.disconnect = dispatch(connectListStream(id));\n }\n\n componentWillUnmount () {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n const { id } = this.props.params;\n this.props.dispatch(expandListTimeline(id, { maxId }));\n }\n\n handleEditClick = () => {\n this.props.dispatch(openModal('LIST_EDITOR', { listId: this.props.params.id }));\n }\n\n handleDeleteClick = () => {\n const { dispatch, columnId, intl } = this.props;\n const { id } = this.props.params;\n\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => {\n dispatch(deleteList(id));\n\n if (!!columnId) {\n dispatch(removeColumn(columnId));\n } else {\n this.context.router.history.push('/lists');\n }\n },\n }));\n }\n\n render () {\n const { hasUnread, columnId, multiColumn, list } = this.props;\n const { id } = this.props.params;\n const pinned = !!columnId;\n const title = list ? list.get('title') : id;\n\n if (typeof list === 'undefined') {\n return (\n <Column>\n <div className='scrollable'>\n <LoadingIndicator />\n </div>\n </Column>\n );\n } else if (list === false) {\n return (\n <Column>\n <div className='scrollable'>\n <MissingIndicator />\n </div>\n </Column>\n );\n }\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='bars'\n active={hasUnread}\n title={title}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <div className='column-header__links'>\n <button className='text-btn column-header__setting-btn' tabIndex='0' onClick={this.handleEditClick}>\n <i className='fa fa-pencil' /> <FormattedMessage id='lists.edit' defaultMessage='Edit list' />\n </button>\n\n <button className='text-btn column-header__setting-btn' tabIndex='0' onClick={this.handleDeleteClick}>\n <i className='fa fa-trash' /> <FormattedMessage id='lists.delete' defaultMessage='Delete list' />\n </button>\n </div>\n\n <hr />\n </ColumnHeader>\n\n <StatusListContainer\n trackScroll={!pinned}\n scrollKey={`list_timeline-${columnId}`}\n timelineId={`list:${id}`}\n onLoadMore={this.handleLoadMore}\n emptyMessage={<FormattedMessage id='empty_column.list' defaultMessage='There is nothing in this list yet. When members of this list post new statuses, they will appear here.' />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/list_timeline/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/notifications.js b/priv/static/packs/features/notifications.js index 9e2bccb91..5745849eb 100644 --- a/priv/static/packs/features/notifications.js +++ b/priv/static/packs/features/notifications.js @@ -1,2 +1,2 @@ -webpackJsonp([5],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(0),p=n.n(f),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(p.a.PureComponent),o.defaultProps={visible:!0},i)},283:function(e,t,n){"use strict";function o(e){return function(t){t({type:a,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),a="MUTES_INIT_MODAL"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(9)),r=n(153),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),f=n(283),p=n(151),g=n(26),v=n(6),m=n(11),b=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!m.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(m.e?Object(g.d)("CONFIRM",{message:n.formatMessage(b.deleteMessage),confirm:n.formatMessage(b.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(b.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(p.k)(t.get("account"),t))},onMute:function(t){e(Object(f.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,M)(r.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return I});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(93),p=n.n(f),g=n(0),v=n.n(g),m=n(152),b=n(5),y=n.n(b),M=n(288),k=n(149),C=n(293),O=n(8),_=(n.n(O),n(10)),w=n.n(_),j=n(154),I=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new C.a,o.handleScroll=p()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,a=n-t-i;o._oldScrollPosition=n-t,400>a&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=p()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(j.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(j.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(j.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof O.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,a=t.shouldUpdateScroll,r=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,f=v.a.Children.count(n),p=c&&f>0&&d?s()(k.a,{visible:!r,onClick:this.handleLoadMore}):null,g=null;return g=r||f>0||!u?v.a.createElement("div",{className:w()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:f,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),p)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(m.a,{scrollKey:o,shouldUpdateScroll:a},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),a=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},r=function(e){return{onHeightChange:function(t,n,o){e(Object(a.d)(t,n,o))}}};t.a=Object(o.connect)(s,r)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),a=n(3),s=n.n(a),r=n(4),c=n.n(r),l=n(0),u=n.n(l),d=n(290),h=n(292),f=n(8),p=(n.n(f),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,a;i()(this,t);for(var r=arguments.length,c=Array(r),l=0;l<r;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},a=n,s()(o,a)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:p).every(function(t){return Object(f.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,a=e.cachedHeight,s=this.state,r=s.isIntersecting,c=s.isHidden;return r||!c&&!a?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||a)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;r.length&&e.timeRemaining()>0;)r.shift()();r.length?requestIdleCallback(o):c=!1}function i(e){r.push(e),c||(c=!0,requestIdleCallback(o))}var a=n(291),s=n.n(a),r=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),a=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=a},805:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return E});var o,i,a,s,r=n(2),c=n.n(r),l=n(1),u=n.n(l),d=n(3),h=n.n(d),f=n(4),p=n.n(f),g=n(34),v=n.n(g),m=n(0),b=n.n(m),y=n(9),M=n(69),k=n(68),C=n(101),O=n(297),_=n(955),w=n(6),j=n(957),I=n(95),N=(n.n(I),n(8)),S=(n.n(N),n(287)),P=n(149),x=Object(w.f)({title:{id:"column.notifications",defaultMessage:"Notifications"}}),T=Object(I.createSelector)([function(e){return Object(N.List)(e.getIn(["settings","notifications","shows"]).filter(function(e){return!e}).keys())},function(e){return e.getIn(["notifications","items"])}],function(e,t){return t.filterNot(function(t){return null!==t&&e.includes(t.get("type"))})}),R=function(e){function t(){var n,o,i;u()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,h()(o,i)}return p()(t,e),t.prototype.render=function(){return c()(P.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(b.a.PureComponent),L=function(e){return{notifications:T(e),isLoading:e.getIn(["notifications","isLoading"],!0),isUnread:e.getIn(["notifications","unread"])>0,hasMore:e.getIn(["notifications","hasMore"])}},E=(o=Object(y.connect)(L))(i=Object(w.g)((s=a=function(e){function t(){var n,o,i;u()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.handleLoadGap=function(e){o.props.dispatch(Object(C.h)({maxId:e}))},o.handleLoadOlder=v()(function(){var e=o.props.notifications.last();o.props.dispatch(Object(C.h)({maxId:e&&e.get("id")}))},300,{leading:!0}),o.handleScrollToTop=v()(function(){o.props.dispatch(Object(C.i)(!0))},100),o.handleScroll=v()(function(){o.props.dispatch(Object(C.i)(!1))},100),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(O.f)(t):Object(O.d)("NOTIFICATIONS",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(O.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setColumnRef=function(e){o.column=e},o.handleMoveUp=function(e){var t=o.props.notifications.findIndex(function(t){return null!==t&&t.get("id")===e})-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.notifications.findIndex(function(t){return null!==t&&t.get("id")===e})+1;o._selectChild(t)},i=n,h()(o,i)}return p()(t,e),t.prototype.componentWillUnmount=function(){this.handleLoadOlder.cancel(),this.handleScrollToTop.cancel(),this.handleScroll.cancel(),this.props.dispatch(Object(C.i)(!1))},t.prototype._selectChild=function(e){var t=this.column.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.intl,o=t.notifications,i=t.shouldUpdateScroll,a=t.isLoading,s=t.isUnread,r=t.columnId,l=t.multiColumn,u=t.hasMore,d=!!r,h=c()(w.b,{id:"empty_column.notifications",defaultMessage:"You don't have any notifications yet. Interact with others to start the conversation."}),f=null;f=a&&this.scrollableContent?this.scrollableContent:o.size>0||u?o.map(function(t,n){return null===t?c()(R,{disabled:a,maxId:n>0?o.getIn([n-1,"id"]):null,onClick:e.handleLoadGap},"gap:"+o.getIn([n+1,"id"])):c()(_.a,{notification:t,accountId:t.get("account"),onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t.get("id"))}):null,this.scrollableContent=f;var p=c()(S.a,{scrollKey:"notifications-"+r,trackScroll:!d,isLoading:a,hasMore:u,emptyMessage:h,onLoadMore:this.handleLoadOlder,onScrollToTop:this.handleScrollToTop,onScroll:this.handleScroll,shouldUpdateScroll:i},void 0,f);return b.a.createElement(M.a,{ref:this.setColumnRef},c()(k.a,{icon:"bell",active:s,title:n.formatMessage(x.title),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:d,multiColumn:l},void 0,c()(j.a,{})),p)},t}(b.a.PureComponent),a.defaultProps={trackScroll:!0},i=s))||i)||i},843:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(9)),r=n(6),c=n(66),l=n(844),u=n(22),d=n(26),h=n(283),f=n(11),p=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),g=function(){var e=Object(c.c)();return function(t,n){return{account:e(t,n.id)}}},v=function(e,t){var n=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?f.j?Object(d.d)("CONFIRM",{message:i()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(p.unfollowConfirm),onConfirm:function(){return e(Object(u.D)(t.get("id")))}}):Object(u.D)(t.get("id")):Object(u.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(u.C)(t.get("id")):Object(u.q)(t.get("id")))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(u.E)(t.get("id")):Object(h.a)(t))},onMuteNotifications:function(t,n){e(Object(u.A)(t.get("id"),n))}}};t.a=Object(r.g)(Object(s.connect)(g,v)(l.a))},844:function(e,t,n){"use strict";n.d(t,"a",function(){return N});var o,i,a,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),h=n(4),f=n.n(h),p=n(0),g=(n.n(p),n(13)),v=n.n(g),m=n(5),b=n.n(m),y=n(56),M=n(55),k=n(295),C=n(23),O=n(6),_=n(12),w=n.n(_),j=n(11),I=Object(O.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),N=Object(O.g)((a=i=function(e){function t(){var n,o,i;l()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},i=n,d()(o,i)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.intl,o=e.hidden;if(!t)return r()("div",{});if(o)return r()("div",{},void 0,t.get("display_name"),t.get("username"));var i=void 0;if(t.get("id")!==j.g&&null!==t.get("relationship",null)){var a=t.getIn(["relationship","following"]),s=t.getIn(["relationship","requested"]),c=t.getIn(["relationship","blocking"]),l=t.getIn(["relationship","muting"]);if(s)i=r()(C.a,{disabled:!0,icon:"hourglass",title:n.formatMessage(I.requested)});else if(c)i=r()(C.a,{active:!0,icon:"unlock-alt",title:n.formatMessage(I.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(l){var u=void 0;u=t.getIn(["relationship","muting_notifications"])?r()(C.a,{active:!0,icon:"bell",title:n.formatMessage(I.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):r()(C.a,{active:!0,icon:"bell-slash",title:n.formatMessage(I.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),i=r()(p.Fragment,{},void 0,r()(C.a,{active:!0,icon:"volume-up",title:n.formatMessage(I.unmute,{name:t.get("username")}),onClick:this.handleMute}),u)}else t.get("moved")&&!a||(i=r()(C.a,{icon:a?"user-times":"user-plus",title:n.formatMessage(a?I.unfollow:I.follow),onClick:this.handleFollow,active:a}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(k.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(y.a,{account:t,size:36})),r()(M.a,{account:t})),r()("div",{className:"account__relationship"},void 0,i)))},t}(w.a),i.propTypes={account:v.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},o=a))||o},856:function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var n={};for(var o in e)t.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var c=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},l=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),u=n(0),d=o(u),h=n(10),f=o(h),p=n(5),g=o(p),v=n(858),m=o(v),b=n(859),y=o(b),M=n(860),k=function(e){function t(e){a(this,t);var n=s(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleClick=n.handleClick.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.handleTouchEnd=n.handleTouchEnd.bind(n),n.handleFocus=n.handleFocus.bind(n),n.handleBlur=n.handleBlur.bind(n),n.previouslyChecked=!(!e.checked&&!e.defaultChecked),n.state={checked:!(!e.checked&&!e.defaultChecked),hasFocus:!1},n}return r(t,e),l(t,[{key:"componentWillReceiveProps",value:function(e){"checked"in e&&this.setState({checked:!!e.checked})}},{key:"handleClick",value:function(e){var t=this.input;if(e.target!==t&&!this.moved)return this.previouslyChecked=t.checked,e.preventDefault(),t.focus(),void t.click();var n=this.props.hasOwnProperty("checked")?this.props.checked:t.checked;this.setState({checked:n})}},{key:"handleTouchStart",value:function(e){this.startX=(0,M.pointerCoord)(e).x,this.activated=!0}},{key:"handleTouchMove",value:function(e){if(this.activated&&(this.moved=!0,this.startX)){var t=(0,M.pointerCoord)(e).x;this.state.checked&&t+15<this.startX?(this.setState({checked:!1}),this.startX=t,this.activated=!0):t-15>this.startX&&(this.setState({checked:!0}),this.startX=t,this.activated=t<this.startX+5)}}},{key:"handleTouchEnd",value:function(e){if(this.moved){var t=this.input;if(e.preventDefault(),this.startX){var n=(0,M.pointerCoord)(e).x;!0===this.previouslyChecked&&this.startX+4>n?this.previouslyChecked!==this.state.checked&&(this.setState({checked:!1}),this.previouslyChecked=this.state.checked,t.click()):this.startX-4<n&&this.previouslyChecked!==this.state.checked&&(this.setState({checked:!0}),this.previouslyChecked=this.state.checked,t.click()),this.activated=!1,this.startX=null,this.moved=!1}}}},{key:"handleFocus",value:function(e){var t=this.props.onFocus;t&&t(e),this.setState({hasFocus:!0})}},{key:"handleBlur",value:function(e){var t=this.props.onBlur;t&&t(e),this.setState({hasFocus:!1})}},{key:"getIcon",value:function(e){var n=this.props.icons;return n?void 0===n[e]?t.defaultProps.icons[e]:n[e]:null}},{key:"render",value:function(){var e=this,t=this.props,n=t.className,o=(t.icons,i(t,["className","icons"])),a=(0,f.default)("react-toggle",{"react-toggle--checked":this.state.checked,"react-toggle--focus":this.state.hasFocus,"react-toggle--disabled":this.props.disabled},n);return d.default.createElement("div",{className:a,onClick:this.handleClick,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd},d.default.createElement("div",{className:"react-toggle-track"},d.default.createElement("div",{className:"react-toggle-track-check"},this.getIcon("checked")),d.default.createElement("div",{className:"react-toggle-track-x"},this.getIcon("unchecked"))),d.default.createElement("div",{className:"react-toggle-thumb"}),d.default.createElement("input",c({},o,{ref:function(t){e.input=t},onFocus:this.handleFocus,onBlur:this.handleBlur,className:"react-toggle-screenreader-only",type:"checkbox"})))}}]),t}(u.PureComponent);t.default=k,k.displayName="Toggle",k.defaultProps={icons:{checked:d.default.createElement(m.default,null),unchecked:d.default.createElement(y.default,null)}},k.propTypes={checked:g.default.bool,disabled:g.default.bool,defaultChecked:g.default.bool,onChange:g.default.func,onFocus:g.default.func,onBlur:g.default.func,className:g.default.string,name:g.default.string,value:g.default.string,id:g.default.string,"aria-labelledby":g.default.string,"aria-label":g.default.string,icons:g.default.oneOfType([g.default.bool,g.default.shape({checked:g.default.node,unchecked:g.default.node})])}},858:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(o);t.default=function(){return i.default.createElement("svg",{width:"14",height:"11",viewBox:"0 0 14 11"},i.default.createElement("title",null,"switch-check"),i.default.createElement("path",{d:"M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0",fill:"#fff",fillRule:"evenodd"}))}},859:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(o);t.default=function(){return i.default.createElement("svg",{width:"10",height:"10",viewBox:"0 0 10 10"},i.default.createElement("title",null,"switch-x"),i.default.createElement("path",{d:"M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12",fill:"#fff",fillRule:"evenodd"}))}},860:function(e,t,n){"use strict";function o(e){if(e){var t=e.changedTouches;if(t&&t.length>0){var n=t[0];return{x:n.clientX,y:n.clientY}}var o=e.pageX;if(void 0!==o)return{x:o,y:e.pageY}}return{x:0,y:0}}Object.defineProperty(t,"__esModule",{value:!0}),t.pointerCoord=o},871:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=n(856),p=n.n(f),g=function(e){function t(){var n,o,i;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.onChange=function(e){var t=e.target;o.props.onChange(o.props.settingPath,t.checked)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.prefix,n=e.settings,o=e.settingPath,a=e.label,s=e.meta,r=["setting-toggle",t].concat(o).filter(Boolean).join("-");return i()("div",{className:"setting-toggle"},void 0,i()(p.a,{id:r,checked:n.getIn(o),onChange:this.onChange,onKeyDown:this.onKeyDown}),i()("label",{htmlFor:r,className:"setting-toggle__label"},void 0,a),s&&i()("span",{className:"setting-meta__label"},void 0,s))},t}(h.a.PureComponent)},955:function(e,t,n){"use strict";var o=n(9),i=n(66),a=n(956),s=n(18),r=function(){var e=Object(i.d)();return function(t,n){return{notification:e(t,n.notification,n.accountId)}}},c=function(e){return{onMention:function(t,n){e(Object(s.R)(t,n))}}};t.a=Object(o.connect)(r,c)(a.a)},956:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(0),p=(n.n(f),n(5)),g=n.n(p),v=n(13),m=n.n(v),b=n(285),y=n(843),M=n(6),k=n(295),C=n(12),O=n.n(C),_=n(157),w=(n.n(_),i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(){var e=o.props,t=e.notification;(0,e.onMoveUp)(t.get("id"))},o.handleMoveDown=function(){var e=o.props,t=e.notification;(0,e.onMoveDown)(t.get("id"))},o.handleOpen=function(){var e=o.props.notification;e.get("status")?o.context.router.history.push("/statuses/"+e.get("status")):o.handleOpenProfile()},o.handleOpenProfile=function(){var e=o.props.notification;o.context.router.history.push("/accounts/"+e.getIn(["account","id"]))},o.handleMention=function(e){e.preventDefault();var t=o.props,n=t.notification;(0,t.onMention)(n.get("account"),o.context.router.history)},i=n,u()(o,i)}return h()(t,e),t.prototype.getHandlers=function(){return{moveUp:this.handleMoveUp,moveDown:this.handleMoveDown,open:this.handleOpen,openProfile:this.handleOpenProfile,mention:this.handleMention,reply:this.handleMention}},t.prototype.renderFollow=function(e,t){return s()(_.HotKeys,{handlers:this.getHandlers()},void 0,s()("div",{className:"notification notification-follow focusable",tabIndex:"0"},void 0,s()("div",{className:"notification__message"},void 0,s()("div",{className:"notification__favourite-icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-user-plus"})),s()(M.b,{id:"notification.follow",defaultMessage:"{name} followed you",values:{name:t}})),s()(y.a,{id:e.get("id"),withNote:!1,hidden:this.props.hidden})))},t.prototype.renderMention=function(e){return s()(b.a,{id:e.get("status"),withDismiss:!0,hidden:this.props.hidden,onMoveDown:this.handleMoveDown,onMoveUp:this.handleMoveUp})},t.prototype.renderFavourite=function(e,t){return s()(_.HotKeys,{handlers:this.getHandlers()},void 0,s()("div",{className:"notification notification-favourite focusable",tabIndex:"0"},void 0,s()("div",{className:"notification__message"},void 0,s()("div",{className:"notification__favourite-icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-star star-icon"})),s()(M.b,{id:"notification.favourite",defaultMessage:"{name} favourited your status",values:{name:t}})),s()(b.a,{id:e.get("status"),account:e.get("account"),muted:!0,withDismiss:!0,hidden:!!this.props.hidden})))},t.prototype.renderReblog=function(e,t){return s()(_.HotKeys,{handlers:this.getHandlers()},void 0,s()("div",{className:"notification notification-reblog focusable",tabIndex:"0"},void 0,s()("div",{className:"notification__message"},void 0,s()("div",{className:"notification__favourite-icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-retweet"})),s()(M.b,{id:"notification.reblog",defaultMessage:"{name} boosted your status",values:{name:t}})),s()(b.a,{id:e.get("status"),account:e.get("account"),muted:!0,withDismiss:!0,hidden:this.props.hidden})))},t.prototype.render=function(){var e=this.props.notification,t=e.get("account"),n={__html:t.get("display_name_html")},o=s()("bdi",{},void 0,s()(k.a,{className:"notification__display-name",href:t.get("url"),title:t.get("acct"),to:"/accounts/"+t.get("id"),dangerouslySetInnerHTML:n}));switch(e.get("type")){case"follow":return this.renderFollow(t,o);case"mention":return this.renderMention(e);case"favourite":return this.renderFavourite(e,o);case"reblog":return this.renderReblog(e,o)}return null},t}(O.a),o.contextTypes={router:g.a.object},o.propTypes={notification:m.a.map.isRequired,hidden:g.a.bool,onMoveUp:g.a.func.isRequired,onMoveDown:g.a.func.isRequired,onMention:g.a.func.isRequired},i)},957:function(e,t,n){"use strict";var o=n(9),i=n(6),a=n(958),s=n(57),r=n(101),c=n(158),l=n(26),u=Object(i.f)({clearMessage:{id:"notifications.clear_confirmation",defaultMessage:"Are you sure you want to permanently clear all your notifications?"},clearConfirm:{id:"notifications.clear",defaultMessage:"Clear notifications"}}),d=function(e){return{settings:e.getIn(["settings","notifications"]),pushSettings:e.get("push_notifications")}},h=function(e,t){var n=t.intl;return{onChange:function(t,n){e("push"===t[0]?Object(c.e)(t.slice(1),n):Object(s.c)(["notifications"].concat(t),n))},onClear:function(){e(Object(l.d)("CONFIRM",{message:n.formatMessage(u.clearMessage),confirm:n.formatMessage(u.clearConfirm),onConfirm:function(){return e(Object(r.g)())}}))}}};t.a=Object(i.g)(Object(o.connect)(d,h)(a.a))},958:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=n(6),p=n(959),g=n(871),v=function(e){function t(){var n,o,i;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.onPushChange=function(e,t){o.props.onChange(["push"].concat(e),t)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.pushSettings,o=e.onChange,a=e.onClear,s=i()(f.b,{id:"notifications.column_settings.alert",defaultMessage:"Desktop notifications"}),r=i()(f.b,{id:"notifications.column_settings.show",defaultMessage:"Show in column"}),c=i()(f.b,{id:"notifications.column_settings.sound",defaultMessage:"Play sound"}),l=n.get("browserSupport")&&n.get("isSubscribed"),u=l&&i()(f.b,{id:"notifications.column_settings.push",defaultMessage:"Push notifications"}),d=l&&i()(f.b,{id:"notifications.column_settings.push_meta",defaultMessage:"This device"});return i()("div",{},void 0,i()("div",{className:"column-settings__row"},void 0,i()(p.a,{onClick:a})),i()("div",{role:"group","aria-labelledby":"notifications-follow"},void 0,i()("span",{id:"notifications-follow",className:"column-settings__section"},void 0,i()(f.b,{id:"notifications.column_settings.follow",defaultMessage:"New followers:"})),i()("div",{className:"column-settings__row"},void 0,i()(g.a,{prefix:"notifications_desktop",settings:t,settingPath:["alerts","follow"],onChange:o,label:s}),l&&i()(g.a,{prefix:"notifications_push",settings:n,settingPath:["alerts","follow"],meta:d,onChange:this.onPushChange,label:u}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["shows","follow"],onChange:o,label:r}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["sounds","follow"],onChange:o,label:c}))),i()("div",{role:"group","aria-labelledby":"notifications-favourite"},void 0,i()("span",{id:"notifications-favourite",className:"column-settings__section"},void 0,i()(f.b,{id:"notifications.column_settings.favourite",defaultMessage:"Favourites:"})),i()("div",{className:"column-settings__row"},void 0,i()(g.a,{prefix:"notifications_desktop",settings:t,settingPath:["alerts","favourite"],onChange:o,label:s}),l&&i()(g.a,{prefix:"notifications_push",settings:n,settingPath:["alerts","favourite"],meta:d,onChange:this.onPushChange,label:u}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["shows","favourite"],onChange:o,label:r}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["sounds","favourite"],onChange:o,label:c}))),i()("div",{role:"group","aria-labelledby":"notifications-mention"},void 0,i()("span",{id:"notifications-mention",className:"column-settings__section"},void 0,i()(f.b,{id:"notifications.column_settings.mention",defaultMessage:"Mentions:"})),i()("div",{className:"column-settings__row"},void 0,i()(g.a,{prefix:"notifications_desktop",settings:t,settingPath:["alerts","mention"],onChange:o,label:s}),l&&i()(g.a,{prefix:"notifications_push",settings:n,settingPath:["alerts","mention"],meta:d,onChange:this.onPushChange,label:u}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["shows","mention"],onChange:o,label:r}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["sounds","mention"],onChange:o,label:c}))),i()("div",{role:"group","aria-labelledby":"notifications-reblog"},void 0,i()("span",{id:"notifications-reblog",className:"column-settings__section"},void 0,i()(f.b,{id:"notifications.column_settings.reblog",defaultMessage:"Boosts:"})),i()("div",{className:"column-settings__row"},void 0,i()(g.a,{prefix:"notifications_desktop",settings:t,settingPath:["alerts","reblog"],onChange:o,label:s}),l&&i()(g.a,{prefix:"notifications_push",settings:n,settingPath:["alerts","reblog"],meta:d,onChange:this.onPushChange,label:u}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["shows","reblog"],onChange:o,label:r}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["sounds","reblog"],onChange:o,label:c}))))},t}(h.a.PureComponent)},959:function(e,t,n){"use strict";n.d(t,"a",function(){return p});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=n(6),p=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){return i()("button",{className:"text-btn column-header__setting-btn",tabIndex:"0",onClick:this.props.onClick},void 0,i()("i",{className:"fa fa-eraser"})," ",i()(f.b,{id:"notifications.clear",defaultMessage:"Clear notifications"}))},t}(h.a.PureComponent)}}); +webpackJsonp([5],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(0),p=n.n(f),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(p.a.PureComponent),o.defaultProps={visible:!0},i)},282:function(e,t,n){"use strict";function o(e){return function(t){t({type:a,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),a="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:a,account:e,status:t}),n(Object(i.d)("REPORT"))}}t.a=o;var i=(n(14),n(26)),a="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(9)),r=n(152),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),f=n(282),p=n(284),g=n(26),v=n(6),m=n(11),b=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!m.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(m.e?Object(g.d)("CONFIRM",{message:n.formatMessage(b.deleteMessage),confirm:n.formatMessage(b.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(b.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(p.a)(t.get("account"),t))},onMute:function(t){e(Object(f.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,M)(r.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return I});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(93),p=n.n(f),g=n(0),v=n.n(g),m=n(151),b=n(5),y=n.n(b),M=n(288),k=n(149),C=n(293),O=n(8),_=(n.n(O),n(10)),w=n.n(_),j=n(153),I=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new C.a,o.handleScroll=p()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,a=n-t-i;o._oldScrollPosition=n-t,400>a&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=p()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(j.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(j.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(j.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof O.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,a=t.shouldUpdateScroll,r=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,f=v.a.Children.count(n),p=c&&f>0&&d?s()(k.a,{visible:!r,onClick:this.handleLoadMore}):null,g=null;return g=r||f>0||!u?v.a.createElement("div",{className:w()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:f,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),p)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(m.a,{scrollKey:o,shouldUpdateScroll:a},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),a=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},r=function(e){return{onHeightChange:function(t,n,o){e(Object(a.d)(t,n,o))}}};t.a=Object(o.connect)(s,r)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),a=n(3),s=n.n(a),r=n(4),c=n.n(r),l=n(0),u=n.n(l),d=n(290),h=n(292),f=n(8),p=(n.n(f),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,a;i()(this,t);for(var r=arguments.length,c=Array(r),l=0;l<r;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},a=n,s()(o,a)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:p).every(function(t){return Object(f.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,a=e.cachedHeight,s=this.state,r=s.isIntersecting,c=s.isHidden;return r||!c&&!a?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||a)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;r.length&&e.timeRemaining()>0;)r.shift()();r.length?requestIdleCallback(o):c=!1}function i(e){r.push(e),c||(c=!0,requestIdleCallback(o))}var a=n(291),s=n.n(a),r=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),a=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=a},804:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return L});var o,i,a,s,r=n(2),c=n.n(r),l=n(1),u=n.n(l),d=n(3),h=n.n(d),f=n(4),p=n.n(f),g=n(34),v=n.n(g),m=n(0),b=n.n(m),y=n(9),M=n(69),k=n(68),C=n(100),O=n(297),_=n(953),w=n(6),j=n(955),I=n(95),N=(n.n(I),n(8)),S=(n.n(N),n(287)),P=n(149),x=Object(w.f)({title:{id:"column.notifications",defaultMessage:"Notifications"}}),T=Object(I.createSelector)([function(e){return Object(N.List)(e.getIn(["settings","notifications","shows"]).filter(function(e){return!e}).keys())},function(e){return e.getIn(["notifications","items"])}],function(e,t){return t.filterNot(function(t){return null!==t&&e.includes(t.get("type"))})}),R=function(e){function t(){var n,o,i;u()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,h()(o,i)}return p()(t,e),t.prototype.render=function(){return c()(P.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(b.a.PureComponent),E=function(e){return{notifications:T(e),isLoading:e.getIn(["notifications","isLoading"],!0),isUnread:e.getIn(["notifications","unread"])>0,hasMore:e.getIn(["notifications","hasMore"])}},L=(o=Object(y.connect)(E))(i=Object(w.g)((s=a=function(e){function t(){var n,o,i;u()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=h()(this,e.call.apply(e,[this].concat(s))),o.handleLoadGap=function(e){o.props.dispatch(Object(C.h)({maxId:e}))},o.handleLoadOlder=v()(function(){var e=o.props.notifications.last();o.props.dispatch(Object(C.h)({maxId:e&&e.get("id")}))},300,{leading:!0}),o.handleScrollToTop=v()(function(){o.props.dispatch(Object(C.i)(!0))},100),o.handleScroll=v()(function(){o.props.dispatch(Object(C.i)(!1))},100),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(O.f)(t):Object(O.d)("NOTIFICATIONS",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(O.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setColumnRef=function(e){o.column=e},o.handleMoveUp=function(e){var t=o.props.notifications.findIndex(function(t){return null!==t&&t.get("id")===e})-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.notifications.findIndex(function(t){return null!==t&&t.get("id")===e})+1;o._selectChild(t)},i=n,h()(o,i)}return p()(t,e),t.prototype.componentWillUnmount=function(){this.handleLoadOlder.cancel(),this.handleScrollToTop.cancel(),this.handleScroll.cancel(),this.props.dispatch(Object(C.i)(!1))},t.prototype._selectChild=function(e){var t=this.column.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.intl,o=t.notifications,i=t.shouldUpdateScroll,a=t.isLoading,s=t.isUnread,r=t.columnId,l=t.multiColumn,u=t.hasMore,d=!!r,h=c()(w.b,{id:"empty_column.notifications",defaultMessage:"You don't have any notifications yet. Interact with others to start the conversation."}),f=null;f=a&&this.scrollableContent?this.scrollableContent:o.size>0||u?o.map(function(t,n){return null===t?c()(R,{disabled:a,maxId:n>0?o.getIn([n-1,"id"]):null,onClick:e.handleLoadGap},"gap:"+o.getIn([n+1,"id"])):c()(_.a,{notification:t,accountId:t.get("account"),onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t.get("id"))}):null,this.scrollableContent=f;var p=c()(S.a,{scrollKey:"notifications-"+r,trackScroll:!d,isLoading:a,hasMore:u,emptyMessage:h,onLoadMore:this.handleLoadOlder,onScrollToTop:this.handleScrollToTop,onScroll:this.handleScroll,shouldUpdateScroll:i},void 0,f);return b.a.createElement(M.a,{ref:this.setColumnRef},c()(k.a,{icon:"bell",active:s,title:n.formatMessage(x.title),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:d,multiColumn:l},void 0,c()(j.a,{})),p)},t}(b.a.PureComponent),a.defaultProps={trackScroll:!0},i=s))||i)||i},841:function(e,t,n){"use strict";var o=n(2),i=n.n(o),a=n(0),s=(n.n(a),n(9)),r=n(6),c=n(66),l=n(842),u=n(22),d=n(26),h=n(282),f=n(11),p=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),g=function(){var e=Object(c.c)();return function(t,n){return{account:e(t,n.id)}}},v=function(e,t){var n=t.intl;return{onFollow:function(t){e(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?f.j?Object(d.d)("CONFIRM",{message:i()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(p.unfollowConfirm),onConfirm:function(){return e(Object(u.D)(t.get("id")))}}):Object(u.D)(t.get("id")):Object(u.z)(t.get("id")))},onBlock:function(t){e(t.getIn(["relationship","blocking"])?Object(u.C)(t.get("id")):Object(u.q)(t.get("id")))},onMute:function(t){e(t.getIn(["relationship","muting"])?Object(u.E)(t.get("id")):Object(h.a)(t))},onMuteNotifications:function(t,n){e(Object(u.A)(t.get("id"),n))}}};t.a=Object(r.g)(Object(s.connect)(g,v)(l.a))},842:function(e,t,n){"use strict";n.d(t,"a",function(){return N});var o,i,a,s=n(2),r=n.n(s),c=n(1),l=n.n(c),u=n(3),d=n.n(u),h=n(4),f=n.n(h),p=n(0),g=(n.n(p),n(13)),v=n.n(g),m=n(5),b=n.n(m),y=n(56),M=n(55),k=n(295),C=n(23),O=n(6),_=n(12),w=n.n(_),j=n(11),I=Object(O.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),N=Object(O.g)((a=i=function(e){function t(){var n,o,i;l()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=d()(this,e.call.apply(e,[this].concat(s))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},i=n,d()(o,i)}return f()(t,e),t.prototype.render=function(){var e=this.props,t=e.account,n=e.intl,o=e.hidden;if(!t)return r()("div",{});if(o)return r()("div",{},void 0,t.get("display_name"),t.get("username"));var i=void 0;if(t.get("id")!==j.g&&null!==t.get("relationship",null)){var a=t.getIn(["relationship","following"]),s=t.getIn(["relationship","requested"]),c=t.getIn(["relationship","blocking"]),l=t.getIn(["relationship","muting"]);if(s)i=r()(C.a,{disabled:!0,icon:"hourglass",title:n.formatMessage(I.requested)});else if(c)i=r()(C.a,{active:!0,icon:"unlock-alt",title:n.formatMessage(I.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(l){var u=void 0;u=t.getIn(["relationship","muting_notifications"])?r()(C.a,{active:!0,icon:"bell",title:n.formatMessage(I.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):r()(C.a,{active:!0,icon:"bell-slash",title:n.formatMessage(I.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),i=r()(p.Fragment,{},void 0,r()(C.a,{active:!0,icon:"volume-up",title:n.formatMessage(I.unmute,{name:t.get("username")}),onClick:this.handleMute}),u)}else t.get("moved")&&!a||(i=r()(C.a,{icon:a?"user-times":"user-plus",title:n.formatMessage(a?I.unfollow:I.follow),onClick:this.handleFollow,active:a}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(k.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(y.a,{account:t,size:36})),r()(M.a,{account:t})),r()("div",{className:"account__relationship"},void 0,i)))},t}(w.a),i.propTypes={account:v.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},o=a))||o},865:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=n(866),p=n.n(f),g=function(e){function t(){var n,o,i;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.onChange=function(e){var t=e.target;o.props.onChange(o.props.settingPath,t.checked)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.prefix,n=e.settings,o=e.settingPath,a=e.label,s=e.meta,r=["setting-toggle",t].concat(o).filter(Boolean).join("-");return i()("div",{className:"setting-toggle"},void 0,i()(p.a,{id:r,checked:n.getIn(o),onChange:this.onChange,onKeyDown:this.onKeyDown}),i()("label",{htmlFor:r,className:"setting-toggle__label"},void 0,a),s&&i()("span",{className:"setting-meta__label"},void 0,s))},t}(h.a.PureComponent)},866:function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var n={};for(var o in e)t.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var c=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},l=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),u=n(0),d=o(u),h=n(10),f=o(h),p=n(5),g=o(p),v=n(867),m=o(v),b=n(868),y=o(b),M=n(869),k=function(e){function t(e){a(this,t);var n=s(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleClick=n.handleClick.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.handleTouchEnd=n.handleTouchEnd.bind(n),n.handleFocus=n.handleFocus.bind(n),n.handleBlur=n.handleBlur.bind(n),n.previouslyChecked=!(!e.checked&&!e.defaultChecked),n.state={checked:!(!e.checked&&!e.defaultChecked),hasFocus:!1},n}return r(t,e),l(t,[{key:"componentWillReceiveProps",value:function(e){"checked"in e&&this.setState({checked:!!e.checked})}},{key:"handleClick",value:function(e){var t=this.input;if(e.target!==t&&!this.moved)return this.previouslyChecked=t.checked,e.preventDefault(),t.focus(),void t.click();var n=this.props.hasOwnProperty("checked")?this.props.checked:t.checked;this.setState({checked:n})}},{key:"handleTouchStart",value:function(e){this.startX=(0,M.pointerCoord)(e).x,this.activated=!0}},{key:"handleTouchMove",value:function(e){if(this.activated&&(this.moved=!0,this.startX)){var t=(0,M.pointerCoord)(e).x;this.state.checked&&t+15<this.startX?(this.setState({checked:!1}),this.startX=t,this.activated=!0):t-15>this.startX&&(this.setState({checked:!0}),this.startX=t,this.activated=t<this.startX+5)}}},{key:"handleTouchEnd",value:function(e){if(this.moved){var t=this.input;if(e.preventDefault(),this.startX){var n=(0,M.pointerCoord)(e).x;!0===this.previouslyChecked&&this.startX+4>n?this.previouslyChecked!==this.state.checked&&(this.setState({checked:!1}),this.previouslyChecked=this.state.checked,t.click()):this.startX-4<n&&this.previouslyChecked!==this.state.checked&&(this.setState({checked:!0}),this.previouslyChecked=this.state.checked,t.click()),this.activated=!1,this.startX=null,this.moved=!1}}}},{key:"handleFocus",value:function(e){var t=this.props.onFocus;t&&t(e),this.setState({hasFocus:!0})}},{key:"handleBlur",value:function(e){var t=this.props.onBlur;t&&t(e),this.setState({hasFocus:!1})}},{key:"getIcon",value:function(e){var n=this.props.icons;return n?void 0===n[e]?t.defaultProps.icons[e]:n[e]:null}},{key:"render",value:function(){var e=this,t=this.props,n=t.className,o=(t.icons,i(t,["className","icons"])),a=(0,f.default)("react-toggle",{"react-toggle--checked":this.state.checked,"react-toggle--focus":this.state.hasFocus,"react-toggle--disabled":this.props.disabled},n);return d.default.createElement("div",{className:a,onClick:this.handleClick,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd},d.default.createElement("div",{className:"react-toggle-track"},d.default.createElement("div",{className:"react-toggle-track-check"},this.getIcon("checked")),d.default.createElement("div",{className:"react-toggle-track-x"},this.getIcon("unchecked"))),d.default.createElement("div",{className:"react-toggle-thumb"}),d.default.createElement("input",c({},o,{ref:function(t){e.input=t},onFocus:this.handleFocus,onBlur:this.handleBlur,className:"react-toggle-screenreader-only",type:"checkbox"})))}}]),t}(u.PureComponent);t.default=k,k.displayName="Toggle",k.defaultProps={icons:{checked:d.default.createElement(m.default,null),unchecked:d.default.createElement(y.default,null)}},k.propTypes={checked:g.default.bool,disabled:g.default.bool,defaultChecked:g.default.bool,onChange:g.default.func,onFocus:g.default.func,onBlur:g.default.func,className:g.default.string,name:g.default.string,value:g.default.string,id:g.default.string,"aria-labelledby":g.default.string,"aria-label":g.default.string,icons:g.default.oneOfType([g.default.bool,g.default.shape({checked:g.default.node,unchecked:g.default.node})])}},867:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(o);t.default=function(){return i.default.createElement("svg",{width:"14",height:"11",viewBox:"0 0 14 11"},i.default.createElement("title",null,"switch-check"),i.default.createElement("path",{d:"M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0",fill:"#fff",fillRule:"evenodd"}))}},868:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(o);t.default=function(){return i.default.createElement("svg",{width:"10",height:"10",viewBox:"0 0 10 10"},i.default.createElement("title",null,"switch-x"),i.default.createElement("path",{d:"M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12",fill:"#fff",fillRule:"evenodd"}))}},869:function(e,t,n){"use strict";function o(e){if(e){var t=e.changedTouches;if(t&&t.length>0){var n=t[0];return{x:n.clientX,y:n.clientY}}var o=e.pageX;if(void 0!==o)return{x:o,y:e.pageY}}return{x:0,y:0}}Object.defineProperty(t,"__esModule",{value:!0}),t.pointerCoord=o},953:function(e,t,n){"use strict";var o=n(9),i=n(66),a=n(954),s=n(18),r=function(){var e=Object(i.d)();return function(t,n){return{notification:e(t,n.notification,n.accountId)}}},c=function(e){return{onMention:function(t,n){e(Object(s.R)(t,n))}}};t.a=Object(o.connect)(r,c)(a.a)},954:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,i,a=n(2),s=n.n(a),r=n(1),c=n.n(r),l=n(3),u=n.n(l),d=n(4),h=n.n(d),f=n(0),p=(n.n(f),n(5)),g=n.n(p),v=n(13),m=n.n(v),b=n(285),y=n(841),M=n(6),k=n(295),C=n(12),O=n.n(C),_=n(156),w=(n.n(_),i=o=function(e){function t(){var n,o,i;c()(this,t);for(var a=arguments.length,s=Array(a),r=0;r<a;r++)s[r]=arguments[r];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(){var e=o.props,t=e.notification;(0,e.onMoveUp)(t.get("id"))},o.handleMoveDown=function(){var e=o.props,t=e.notification;(0,e.onMoveDown)(t.get("id"))},o.handleOpen=function(){var e=o.props.notification;e.get("status")?o.context.router.history.push("/statuses/"+e.get("status")):o.handleOpenProfile()},o.handleOpenProfile=function(){var e=o.props.notification;o.context.router.history.push("/accounts/"+e.getIn(["account","id"]))},o.handleMention=function(e){e.preventDefault();var t=o.props,n=t.notification;(0,t.onMention)(n.get("account"),o.context.router.history)},i=n,u()(o,i)}return h()(t,e),t.prototype.getHandlers=function(){return{moveUp:this.handleMoveUp,moveDown:this.handleMoveDown,open:this.handleOpen,openProfile:this.handleOpenProfile,mention:this.handleMention,reply:this.handleMention}},t.prototype.renderFollow=function(e,t){return s()(_.HotKeys,{handlers:this.getHandlers()},void 0,s()("div",{className:"notification notification-follow focusable",tabIndex:"0"},void 0,s()("div",{className:"notification__message"},void 0,s()("div",{className:"notification__favourite-icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-user-plus"})),s()(M.b,{id:"notification.follow",defaultMessage:"{name} followed you",values:{name:t}})),s()(y.a,{id:e.get("id"),withNote:!1,hidden:this.props.hidden})))},t.prototype.renderMention=function(e){return s()(b.a,{id:e.get("status"),withDismiss:!0,hidden:this.props.hidden,onMoveDown:this.handleMoveDown,onMoveUp:this.handleMoveUp})},t.prototype.renderFavourite=function(e,t){return s()(_.HotKeys,{handlers:this.getHandlers()},void 0,s()("div",{className:"notification notification-favourite focusable",tabIndex:"0"},void 0,s()("div",{className:"notification__message"},void 0,s()("div",{className:"notification__favourite-icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-star star-icon"})),s()(M.b,{id:"notification.favourite",defaultMessage:"{name} favourited your status",values:{name:t}})),s()(b.a,{id:e.get("status"),account:e.get("account"),muted:!0,withDismiss:!0,hidden:!!this.props.hidden})))},t.prototype.renderReblog=function(e,t){return s()(_.HotKeys,{handlers:this.getHandlers()},void 0,s()("div",{className:"notification notification-reblog focusable",tabIndex:"0"},void 0,s()("div",{className:"notification__message"},void 0,s()("div",{className:"notification__favourite-icon-wrapper"},void 0,s()("i",{className:"fa fa-fw fa-retweet"})),s()(M.b,{id:"notification.reblog",defaultMessage:"{name} boosted your status",values:{name:t}})),s()(b.a,{id:e.get("status"),account:e.get("account"),muted:!0,withDismiss:!0,hidden:this.props.hidden})))},t.prototype.render=function(){var e=this.props.notification,t=e.get("account"),n={__html:t.get("display_name_html")},o=s()("bdi",{},void 0,s()(k.a,{className:"notification__display-name",href:t.get("url"),title:t.get("acct"),to:"/accounts/"+t.get("id"),dangerouslySetInnerHTML:n}));switch(e.get("type")){case"follow":return this.renderFollow(t,o);case"mention":return this.renderMention(e);case"favourite":return this.renderFavourite(e,o);case"reblog":return this.renderReblog(e,o)}return null},t}(O.a),o.contextTypes={router:g.a.object},o.propTypes={notification:m.a.map.isRequired,hidden:g.a.bool,onMoveUp:g.a.func.isRequired,onMoveDown:g.a.func.isRequired,onMention:g.a.func.isRequired},i)},955:function(e,t,n){"use strict";var o=n(9),i=n(6),a=n(956),s=n(57),r=n(100),c=n(157),l=n(26),u=Object(i.f)({clearMessage:{id:"notifications.clear_confirmation",defaultMessage:"Are you sure you want to permanently clear all your notifications?"},clearConfirm:{id:"notifications.clear",defaultMessage:"Clear notifications"}}),d=function(e){return{settings:e.getIn(["settings","notifications"]),pushSettings:e.get("push_notifications")}},h=function(e,t){var n=t.intl;return{onChange:function(t,n){e("push"===t[0]?Object(c.e)(t.slice(1),n):Object(s.c)(["notifications"].concat(t),n))},onClear:function(){e(Object(l.d)("CONFIRM",{message:n.formatMessage(u.clearMessage),confirm:n.formatMessage(u.clearConfirm),onConfirm:function(){return e(Object(r.g)())}}))}}};t.a=Object(i.g)(Object(o.connect)(d,h)(a.a))},956:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=n(6),p=n(957),g=n(865),v=function(e){function t(){var n,o,i;s()(this,t);for(var a=arguments.length,r=Array(a),l=0;l<a;l++)r[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(r))),o.onPushChange=function(e,t){o.props.onChange(["push"].concat(e),t)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.pushSettings,o=e.onChange,a=e.onClear,s=i()(f.b,{id:"notifications.column_settings.alert",defaultMessage:"Desktop notifications"}),r=i()(f.b,{id:"notifications.column_settings.show",defaultMessage:"Show in column"}),c=i()(f.b,{id:"notifications.column_settings.sound",defaultMessage:"Play sound"}),l=n.get("browserSupport")&&n.get("isSubscribed"),u=l&&i()(f.b,{id:"notifications.column_settings.push",defaultMessage:"Push notifications"}),d=l&&i()(f.b,{id:"notifications.column_settings.push_meta",defaultMessage:"This device"});return i()("div",{},void 0,i()("div",{className:"column-settings__row"},void 0,i()(p.a,{onClick:a})),i()("div",{role:"group","aria-labelledby":"notifications-follow"},void 0,i()("span",{id:"notifications-follow",className:"column-settings__section"},void 0,i()(f.b,{id:"notifications.column_settings.follow",defaultMessage:"New followers:"})),i()("div",{className:"column-settings__row"},void 0,i()(g.a,{prefix:"notifications_desktop",settings:t,settingPath:["alerts","follow"],onChange:o,label:s}),l&&i()(g.a,{prefix:"notifications_push",settings:n,settingPath:["alerts","follow"],meta:d,onChange:this.onPushChange,label:u}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["shows","follow"],onChange:o,label:r}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["sounds","follow"],onChange:o,label:c}))),i()("div",{role:"group","aria-labelledby":"notifications-favourite"},void 0,i()("span",{id:"notifications-favourite",className:"column-settings__section"},void 0,i()(f.b,{id:"notifications.column_settings.favourite",defaultMessage:"Favourites:"})),i()("div",{className:"column-settings__row"},void 0,i()(g.a,{prefix:"notifications_desktop",settings:t,settingPath:["alerts","favourite"],onChange:o,label:s}),l&&i()(g.a,{prefix:"notifications_push",settings:n,settingPath:["alerts","favourite"],meta:d,onChange:this.onPushChange,label:u}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["shows","favourite"],onChange:o,label:r}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["sounds","favourite"],onChange:o,label:c}))),i()("div",{role:"group","aria-labelledby":"notifications-mention"},void 0,i()("span",{id:"notifications-mention",className:"column-settings__section"},void 0,i()(f.b,{id:"notifications.column_settings.mention",defaultMessage:"Mentions:"})),i()("div",{className:"column-settings__row"},void 0,i()(g.a,{prefix:"notifications_desktop",settings:t,settingPath:["alerts","mention"],onChange:o,label:s}),l&&i()(g.a,{prefix:"notifications_push",settings:n,settingPath:["alerts","mention"],meta:d,onChange:this.onPushChange,label:u}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["shows","mention"],onChange:o,label:r}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["sounds","mention"],onChange:o,label:c}))),i()("div",{role:"group","aria-labelledby":"notifications-reblog"},void 0,i()("span",{id:"notifications-reblog",className:"column-settings__section"},void 0,i()(f.b,{id:"notifications.column_settings.reblog",defaultMessage:"Boosts:"})),i()("div",{className:"column-settings__row"},void 0,i()(g.a,{prefix:"notifications_desktop",settings:t,settingPath:["alerts","reblog"],onChange:o,label:s}),l&&i()(g.a,{prefix:"notifications_push",settings:n,settingPath:["alerts","reblog"],meta:d,onChange:this.onPushChange,label:u}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["shows","reblog"],onChange:o,label:r}),i()(g.a,{prefix:"notifications",settings:t,settingPath:["sounds","reblog"],onChange:o,label:c}))))},t}(h.a.PureComponent)},957:function(e,t,n){"use strict";n.d(t,"a",function(){return p});var o=n(2),i=n.n(o),a=n(1),s=n.n(a),r=n(3),c=n.n(r),l=n(4),u=n.n(l),d=n(0),h=n.n(d),f=n(6),p=function(e){function t(){return s()(this,t),c()(this,e.apply(this,arguments))}return u()(t,e),t.prototype.render=function(){return i()("button",{className:"text-btn column-header__setting-btn",tabIndex:"0",onClick:this.props.onClick},void 0,i()("i",{className:"fa fa-eraser"})," ",i()(f.b,{id:"notifications.clear",defaultMessage:"Clear notifications"}))},t}(h.a.PureComponent)}}); //# sourceMappingURL=notifications.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/notifications.js.map b/priv/static/packs/features/notifications.js.map index b127a4913..a7362deee 100644 --- a/priv/static/packs/features/notifications.js.map +++ b/priv/static/packs/features/notifications.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/notifications.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/features/notifications/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./node_modules/react-toggle/dist/component/index.js","webpack:///./node_modules/react-toggle/dist/component/check.js","webpack:///./node_modules/react-toggle/dist/component/x.js","webpack:///./node_modules/react-toggle/dist/component/util.js","webpack:///./app/javascript/mastodon/features/notifications/components/setting_toggle.js","webpack:///./app/javascript/mastodon/features/notifications/containers/notification_container.js","webpack:///./app/javascript/mastodon/features/notifications/components/notification.js","webpack:///./app/javascript/mastodon/features/notifications/containers/column_settings_container.js","webpack:///./app/javascript/mastodon/features/notifications/components/column_settings.js","webpack:///./app/javascript/mastodon/features/notifications/components/clear_column_button.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","283","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","805","defineProperty","value","Notifications","_dec","_class2","_class3","_temp3","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_6_react_redux__","__WEBPACK_IMPORTED_MODULE_7__components_column__","__WEBPACK_IMPORTED_MODULE_8__components_column_header__","__WEBPACK_IMPORTED_MODULE_9__actions_notifications__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11__containers_notification_container__","__WEBPACK_IMPORTED_MODULE_13__containers_column_settings_container__","__WEBPACK_IMPORTED_MODULE_14_reselect__","__WEBPACK_IMPORTED_MODULE_15_immutable__","__WEBPACK_IMPORTED_MODULE_16__components_scrollable_list__","__WEBPACK_IMPORTED_MODULE_17__components_load_more__","title","getNotifications","filter","keys","excludedTypes","notifications","filterNot","includes","LoadGap","handleClick","maxId","mapStateToProps","isUnread","_React$PureComponent2","_ret2","_len2","_key2","handleLoadGap","handleLoadOlder","leading","handleScrollToTop","handlePin","_this2$props","columnId","handleMove","dir","_this2$props2","handleHeaderClick","column","setColumnRef","handleMoveUp","elementIndex","findIndex","_selectChild","handleMoveDown","cancel","element","querySelector","focus","_this3","multiColumn","pinned","scrollableContent","size","notification","accountId","onMoveUp","onMoveDown","scrollContainer","icon","active","onPin","onMove","843","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","unfollowConfirm","getAccount","onFollow","onMuteNotifications","844","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","_ImmutablePureCompone","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","buttons","following","blocking","muting","hidingNotificationsButton","href","to","propTypes","isRequired","func","bool","856","_interopRequireDefault","obj","__esModule","default","_objectWithoutProperties","indexOf","hasOwnProperty","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","enumerable","writable","configurable","setPrototypeOf","__proto__","_extends","assign","source","_createClass","defineProperties","descriptor","protoProps","staticProps","_react","_react2","_classnames","_classnames2","_propTypes","_propTypes2","_check","_check2","_x","_x2","_util","Toggle","getPrototypeOf","bind","handleTouchStart","handleTouchMove","handleTouchEnd","handleFocus","handleBlur","previouslyChecked","checked","defaultChecked","hasFocus","event","checkbox","input","moved","click","startX","pointerCoord","x","activated","currentX","endX","onFocus","onBlur","icons","inputProps","classes","react-toggle--checked","react-toggle--focus","react-toggle--disabled","onTouchStart","onTouchMove","onTouchEnd","getIcon","displayName","unchecked","onChange","string","aria-labelledby","aria-label","oneOfType","shape","858","viewBox","fill","fillRule","859","860","changedTouches","touch","clientX","y","clientY","pageX","pageY","871","SettingToggle","__WEBPACK_IMPORTED_MODULE_5_react_toggle__","__WEBPACK_IMPORTED_MODULE_5_react_toggle___default","settingPath","prefix","settings","label","meta","Boolean","join","onKeyDown","htmlFor","955","__WEBPACK_IMPORTED_MODULE_1__selectors__","__WEBPACK_IMPORTED_MODULE_2__components_notification__","__WEBPACK_IMPORTED_MODULE_3__actions_compose__","getNotification","956","Notification","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__containers_status_container__","__WEBPACK_IMPORTED_MODULE_8__containers_account_container__","__WEBPACK_IMPORTED_MODULE_9_react_intl__","__WEBPACK_IMPORTED_MODULE_10__components_permalink__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__","_this$props2","handleOpen","history","handleOpenProfile","handleMention","_this$props3","getHandlers","moveUp","moveDown","open","openProfile","mention","reply","renderFollow","link","handlers","withNote","renderMention","withDismiss","renderFavourite","muted","renderReblog","displayNameHtml","__html","dangerouslySetInnerHTML","957","__WEBPACK_IMPORTED_MODULE_1_react_intl__","__WEBPACK_IMPORTED_MODULE_2__components_column_settings__","__WEBPACK_IMPORTED_MODULE_3__actions_settings__","__WEBPACK_IMPORTED_MODULE_4__actions_notifications__","__WEBPACK_IMPORTED_MODULE_5__actions_push_notifications__","__WEBPACK_IMPORTED_MODULE_6__actions_modal__","clearMessage","clearConfirm","pushSettings","path","onClear","958","ColumnSettings","__WEBPACK_IMPORTED_MODULE_6__clear_column_button__","__WEBPACK_IMPORTED_MODULE_7__setting_toggle__","onPushChange","alertStr","showStr","soundStr","showPushSettings","pushStr","pushMeta","959","ClearColumnButton"],"mappings":"AAAAA,cAAc,IAERC,IACA,SAAUC,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOG,IAC9E,IAgBjBC,GAAQC,EAhBaC,EAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFG,EAAqER,EAAoB,GACzFS,EAA6ET,EAAoBO,EAAEC,GACnGE,EAAgFV,EAAoB,GACpGW,EAAwFX,EAAoBO,EAAEG,GAC9GE,EAA+DZ,EAAoB,GACnFa,EAAuEb,EAAoBO,EAAEK,GAC7FE,EAAsCd,EAAoB,GAC1De,EAA8Cf,EAAoBO,EAAEO,GACpEE,EAA2ChB,EAAoB,GCbnEE,GDuBLE,EAAQD,EAAS,SAAUc,GAGzC,QAASf,KAGP,MAFAO,KAA6ES,KAAMhB,GAE5ES,IAAwFO,KAAMD,EAAqBE,MAAMD,KAAME,YAoBxI,MAzBAP,KAAuEX,EAAUe,GAQjFf,EAASmB,UCpBTC,ODoB4B,WCpBnB,GAAAC,GACuBL,KAAKM,MAA3BC,EADDF,EACCE,SAAUC,EADXH,EACWG,OAElB,OAAApB,KAAA,UAAAqB,UACoB,YADpBF,SAC0CA,IAAaC,EADvDE,OACyEC,WAAYH,EAAU,UAAY,UAD3GI,QACgIZ,KAAKM,MAAMM,aAD3I,GAAAxB,IAEKU,EAAA,GAFLe,GAEyB,mBAFzBC,eAE2D,gBDgCtD9B,GCjD6Ba,EAAAkB,EAAMC,eDkDoB/B,EC1CvDgC,cACLT,SAAS,GD2CVtB,IAKGgC,IACA,SAAUtC,EAAQC,EAAqBC,GAE7C,YE0BO,SAASqC,GAAcC,GAC5B,MAAO,UAAAC,GACLA,GACEC,KAAMC,EACNH,YAGFC,EAASG,OAAAC,EAAA,GAAU,UFhBU5C,EAAuB,EAAIsC,CAEvC,IAGIM,IAHqC3C,EAAoB,IACfA,EAAoB,IACpBA,EAAoB,IACvBA,EAAoB,KEzEvEyC,EAAmB,oBFmM1BG,IACA,SAAU9C,EAAQC,EAAqBC,GAE7C,YACqB,IAAIK,GAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFwC,EAAsC7C,EAAoB,GAE1D8C,GAD8C9C,EAAoBO,EAAEsC,GACxB7C,EAAoB,IAChE+C,EAAmD/C,EAAoB,KACvEgD,EAA2ChD,EAAoB,IAC/DiD,EAAiDjD,EAAoB,IACrEkD,EAAsDlD,EAAoB,IAC1EmD,EAAkDnD,EAAoB,IACtEoD,EAAkDpD,EAAoB,IACtEqD,EAA+CrD,EAAoB,KACnEsD,EAAkDtD,EAAoB,KACtEuD,EAAgDvD,EAAoB,IACpEwD,EAA4CxD,EAAoB,GAChEyD,EAAgDzD,EAAoB,IGvMvF0D,EAAWhB,OAAAc,EAAA,IACfG,eAAA5B,GAAA,+BAAAC,eAAA,UACA4B,eAAA7B,GAAA,+BAAAC,eAAA,gDACA6B,cAAA9B,GAAA,8BAAAC,eAAA,WAGI8B,EAAsB,WAC1B,GAAMC,GAAYrB,OAAAM,EAAA,IAMlB,OAJwB,UAACgB,EAAOxC,GAAR,OACtByC,OAAQF,EAAUC,EAAOxC,EAAMO,OAM7BmC,EAAqB,SAAC3B,EAAD4B,GAAA,GAAaC,GAAbD,EAAaC,IAAb,QAEzBC,QAFkD,SAEzCJ,EAAQK,GACf/B,EAASG,OAAAO,EAAA,GAAagB,EAAQK,KAGhCC,cANkD,SAMnCN,GACb1B,EAASG,OAAAQ,EAAA,GAAOe,KAGlBO,SAVkD,SAUxCP,EAAQQ,GACZR,EAAOS,IAAI,aACbnC,EAASG,OAAAQ,EAAA,GAASe,IAEdQ,EAAEE,WAAalB,EAAA,EACjBvC,KAAKqD,cAAcN,GAEnB1B,EAASG,OAAAa,EAAA,GAAU,SAAWU,SAAQO,SAAUtD,KAAKqD,kBAK3DK,YAtBkD,SAsBrCX,GAET1B,EADE0B,EAAOS,IAAI,cACJhC,OAAAQ,EAAA,GAAYe,GAEZvB,OAAAQ,EAAA,GAAUe,KAIvBY,SA9BkD,SA8BxCZ,GAIN1B,EAHGkB,EAAA,EAGMf,OAAAa,EAAA,GAAU,WACjBuB,QAASV,EAAKW,cAAcrB,EAASE,eACrCoB,QAASZ,EAAKW,cAAcrB,EAASC,eACrCsB,UAAW,iBAAM1C,GAASG,OAAAU,EAAA,GAAaa,EAAOS,IAAI,WAL3ChC,OAAAU,EAAA,GAAaa,EAAOS,IAAI,SAUrCQ,UA1CkD,SA0CvC5C,EAASgC,GAClB/B,EAASG,OAAAO,EAAA,GAAeX,EAASgC,KAGnCa,YA9CkD,SA8CrCC,EAAOC,GAClB9C,EAASG,OAAAa,EAAA,GAAU,SAAW6B,QAAOC,YAGvCC,YAlDkD,SAkDrCF,EAAOG,GAClBhD,EAASG,OAAAa,EAAA,GAAU,SAAW6B,QAAOG,WAGvCC,QAtDkD,SAsDzClD,GACPC,EAASG,OAAAa,EAAA,GAAU,WACjBuB,QAAAxE,IAAUkD,EAAA,GAAVzB,GAA8B,8BAA9BC,eAA2E,yCAA3EyD,QAA8HC,KAAApF,IAAAoF,uBAAgBpD,EAAQoC,IAAI,YAC1JM,QAASZ,EAAKW,cAAcrB,EAASG,cACrCoB,UAAW,iBAAM1C,GAASG,OAAAS,EAAA,GAAab,EAAQoC,IAAI,aAIvDiB,SA9DkD,SA8DxC1B,GACR1B,EAASG,OAAAY,EAAA,GAAWW,EAAOS,IAAI,WAAYT,KAG7C2B,OAlEkD,SAkE1CtD,GACNC,EAASG,OAAAW,EAAA,GAAcf,KAGzBuD,mBAtEkD,SAsE9B5B,GAEhB1B,EADE0B,EAAOS,IAAI,SACJhC,OAAAU,EAAA,GAAaa,EAAOS,IAAI,OAExBhC,OAAAU,EAAA,GAAWa,EAAOS,IAAI,SAInCoB,eA9EkD,SA8ElC7B,GAEZ1B,EADE0B,EAAOS,IAAI,UACJhC,OAAAU,EAAA,GAAaa,EAAOS,IAAI,OAExBhC,OAAAU,EAAA,GAAWa,EAAOS,IAAI,UAMrC3E,GAAA,EAAe2C,OAAAc,EAAA,GAAWd,OAAAI,EAAA,SAAQgB,EAAqBI,GAAoBnB,EAAA,KHmOrEgD,IACA,SAAUjG,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOiG,IAC9E,IA6BjB7F,GAAQ8F,EA7Ba5F,EAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFG,EAAqER,EAAoB,GACzFS,EAA6ET,EAAoBO,EAAEC,GACnGE,EAAgFV,EAAoB,GACpGW,EAAwFX,EAAoBO,EAAEG,GAC9GE,EAA+DZ,EAAoB,GACnFa,EAAuEb,EAAoBO,EAAEK,GAC7FsF,EAAgDlG,EAAoB,IACpEmG,EAAwDnG,EAAoBO,EAAE2F,GAC9EE,EAAsCpG,EAAoB,GAC1DqG,EAA8CrG,EAAoBO,EAAE6F,GACpEE,EAAsDtG,EAAoB,KAC1EuG,EAA2CvG,EAAoB,GAC/DwG,EAAmDxG,EAAoBO,EAAEgG,GACzEE,EAAoFzG,EAAoB,KACxG0G,EAA2C1G,EAAoB,KAC/D2G,EAAiF3G,EAAoB,KACrG4G,EAA2C5G,EAAoB,GAE/D6G,GADmD7G,EAAoBO,EAAEqG,GAC7B5G,EAAoB,KAChE8G,EAAoD9G,EAAoBO,EAAEsG,GAC1EE,EAA8D/G,EAAoB,KIvXtFgG,GJ2YCC,EAAS9F,EAAS,SAAU6G,GAGhD,QAAShB,KACP,GAAI5F,GAAO6G,EAAOC,CAElBzG,KAA6ES,KAAM8E,EAEnF,KAAK,GAAImB,GAAO/F,UAAUgG,OAAQC,EAAOC,MAAMH,GAAOI,EAAO,EAAGA,EAAOJ,EAAMI,IAC3EF,EAAKE,GAAQnG,UAAUmG,EAGzB,OAAenH,GAAS6G,EAAQtG,IAAwFO,KAAM8F,EAAeQ,KAAKrG,MAAM6F,GAAiB9F,MAAMuG,OAAOJ,KAAiBJ,EI/XzMjD,OACE0D,cAAe,MJgYZT,EI7XLU,4BAA8B,GAAIhB,GAAA,EJ6XgHM,EI3XlJW,aAAezB,IAAS,WACtB,GAAIc,EAAKY,KAAM,IAAAC,GACqCb,EAAKY,KAA/CE,EADKD,EACLC,UAAWC,EADNF,EACME,aAAcC,EADpBH,EACoBG,aAC3BC,EAASF,EAAeD,EAAYE,CAC1ChB,GAAKkB,mBAAqBH,EAAeD,EAErC,IAAMG,GAAUjB,EAAKzF,MAAM4G,aAAenB,EAAKzF,MAAM6G,WACvDpB,EAAKzF,MAAM4G,aAGTL,EAAY,KAAOd,EAAKzF,MAAM8G,cAChCrB,EAAKzF,MAAM8G,gBACFrB,EAAKzF,MAAM+G,UACpBtB,EAAKzF,MAAM+G,aAGd,KACDC,UAAU,IJgYNvB,EI7XNwB,gBAAkBtC,IAAS,WACzBc,EAAKyB,eAAiB,GAAIC,OACzB,KJ6XQ1B,EI3XX2B,iBAAmB,WACjB3B,EAAKyB,eAAiB,MJ4XnBzB,EIxVL4B,mBAAqB,WACnB5B,EAAK6B,UAAWC,WAAYrG,OAAAqE,EAAA,QJyVzBE,EIxTL+B,OAAS,SAACC,GACRhC,EAAKY,KAAOoB,GJyTThC,EItTLiC,eAAiB,SAACzE,GAChBA,EAAE0E,iBACFlC,EAAKzF,MAAM4G,cJoRJlB,EAmCJ9G,EAAQO,IAAwFsG,EAAOC,GA+H5G,MA7KArG,KAAuEmF,EAAgBgB,GAiDvFhB,EAAe3E,UInYf+H,kBJmY6C,WIlY3ClI,KAAKmI,uBACLnI,KAAKoI,6BACL5G,OAAAqE,EAAA,GAAyB7F,KAAK2H,oBAG9B3H,KAAK0G,gBJsYP5B,EAAe3E,UInYfkI,mBJmY8C,SInY1BC,GAOlB,GANyBnD,EAAApE,EAAMwH,SAASC,MAAMF,EAAUG,UAAY,GAClEtD,EAAApE,EAAMwH,SAASC,MAAMF,EAAUG,UAAYtD,EAAApE,EAAMwH,SAASC,MAAMxI,KAAKM,MAAMmI,WAC3EzI,KAAK0I,iBAAiBJ,KAAetI,KAAK0I,iBAAiB1I,KAAKM,QAI1CN,KAAKiH,oBAAsBjH,KAAK2G,KAAKE,UAAY,EAAG,CAC1E,GAAM8B,GAAe3I,KAAK2G,KAAKG,aAAe9G,KAAKiH,kBAE/CjH,MAAK2G,KAAKE,YAAc8B,IAC1B3I,KAAK2G,KAAKE,UAAY8B,OAGxB3I,MAAKiH,mBAAqBjH,KAAK2G,KAAKG,aAAe9G,KAAK2G,KAAKE,WJqYjE/B,EAAe3E,UIjYfyI,qBJiYgD,WIhY9C5I,KAAK6I,uBACL7I,KAAK8I,6BACLtH,OAAAqE,EAAA,GAAyB7F,KAAK2H,qBJoYhC7C,EAAe3E,UI7XfiI,2BJ6XsD,WI5XpDpI,KAAKyG,4BAA4BsC,SAC/BC,KAAMhJ,KAAK2G,KACXsC,WAAY,cJiYhBnE,EAAe3E,UI7Xf2I,2BJ6XsD,WI5XpD9I,KAAKyG,4BAA4ByC,cJgYnCpE,EAAe3E,UI7XfgI,qBJ6XgD,WI5X9CnI,KAAK2G,KAAKwC,iBAAiB,SAAUnJ,KAAK0G,eJgY5C5B,EAAe3E,UI7Xf0I,qBJ6XgD,WI5X9C7I,KAAK2G,KAAKyC,oBAAoB,SAAUpJ,KAAK0G,eJgY/C5B,EAAe3E,UI7XfuI,iBJ6X4C,SI7X1BpI,GAAO,GACfmI,GAAanI,EAAbmI,SACJY,EAAaZ,CAMjB,OALIA,aAAoB/C,GAAA,KACtB2D,EAAaZ,EAASjF,IAAI,GACjB4C,MAAMkD,QAAQb,KACvBY,EAAaZ,EAAS,IAEjBY,GAAcA,EAAWE,KJiYlCzE,EAAe3E,UIrXfqJ,eJqX0C,WIpXxC,MAA+B,QAAxBxJ,KAAKwH,gBAA6B,GAAIC,MAAUzH,KAAKwH,eAAiB,KJwX/E1C,EAAe3E,UIrXfC,OJqXkC,WIrXxB,GAAAqJ,GAAAzJ,KAAAK,EACgHL,KAAKM,MAArHmI,EADApI,EACAoI,SAAUiB,EADVrJ,EACUqJ,UAAWC,EADrBtJ,EACqBsJ,YAAaC,EADlCvJ,EACkCuJ,mBAAoBzC,EADtD9G,EACsD8G,UAAW0C,EADjExJ,EACiEwJ,QAASC,EAD1EzJ,EAC0EyJ,QAASC,EADnF1J,EACmF0J,aAAc7C,EADjG7G,EACiG6G,WACjGW,EAAe7H,KAAK8C,MAApB+E,WACFmC,EAAgB7E,EAAApE,EAAMwH,SAASC,MAAMC,GAErCwB,EAAgBJ,GAAWG,EAAgB,GAAK9C,EAAjC9H,IAAgDoG,EAAA,GAAhDhF,SAAmE2G,EAAnEvG,QAAuFZ,KAAKgI,iBAAqB,KAClIkC,EAAiB,IAiCrB,OA9BEA,GADE/C,GAAa6C,EAAgB,IAAMD,EAEnC5E,EAAApE,EAAAoJ,cAAA,OAAK1J,UAAWmF,IAAW,cAAgBiC,eAAeuC,IAAKpK,KAAK8H,OAAQuC,YAAarK,KAAKuH,gBAAiB+C,aAActK,KAAK0H,kBAAlItI,IAAA,OAAAmL,KACY,OADZ9J,UAC6B,iBAD7B,GAEKqJ,EAEA3E,EAAApE,EAAMwH,SAASiC,IAAIxK,KAAKM,MAAMmI,SAAU,SAACgC,EAAOtG,GAAR,MAAA/E,KACtCmG,EAAA,GADsC1E,GAGjC4J,EAAMlB,IAH2BpF,MAI9BA,EAJ8BuG,WAKzBV,EALyBvD,4BAMRgD,EAAKhD,4BANGkE,cAOtBhB,EAAiBF,EAAKmB,QAAQxH,OAAOyH,MAAMC,SAASvB,IAApD,IAA2DG,EAAc,MALnFe,EAAMlB,IAOVkB,KAIJR,IAML9E,EAAApE,EAAAoJ,cAAA,OAAK1J,UAAU,yBAAyB2J,IAAKpK,KAAK8H,QAC/CiC,GAKHJ,EACFvK,IACGgG,EAAA,GADHsE,UAC8BA,EAD9BE,mBAC6DA,OAD7D,GAEKM,GAIEA,GJiYJpF,GIzjBmCI,EAAA,eJ0jBajG,EIxjBhD8L,cACL3H,OAAQkC,EAAAvE,EAAUiK,QJyjBnB/L,EIxiBMgC,cACL0I,aAAa,GJyiBd5E,IAKGkG,IACA,SAAUrM,EAAQC,EAAqBC,GAE7C,YACqB,IAAIoM,GAA4CpM,EAAoB,GAChEqM,EAA0ErM,EAAoB,KAC9FsM,EAAsDtM,EAAoB,IKhlB7F8D,EAAsB,SAACE,EAAOxC,GAAR,OAC1B+K,aAAcvI,EAAMwI,OAAO,eAAgBhL,EAAMqK,cAAerK,EAAMO,OAGlEmC,EAAqB,SAAC3B,GAAD,OAEzBkK,eAFwC,SAExBhC,EAAK1I,EAAI2K,GACvBnK,EAASG,OAAA4J,EAAA,GAAU7B,EAAK1I,EAAI2K,MAKhC3M,GAAA,EAAe2C,OAAA0J,EAAA,SAAQtI,EAAqBI,GAAoBmI,EAAA,IL2lB1DM,IACA,SAAU7M,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAO6M,IAC9E,IAAIC,GAAqE7M,EAAoB,GACzF8M,EAA6E9M,EAAoBO,EAAEsM,GACnGE,EAAgF/M,EAAoB,GACpGgN,EAAwFhN,EAAoBO,EAAEwM,GAC9GE,EAA+DjN,EAAoB,GACnFkN,EAAuElN,EAAoBO,EAAE0M,GAC7FE,EAAsCnN,EAAoB,GAC1DoN,EAA8CpN,EAAoBO,EAAE4M,GACpEE,EAAqErN,EAAoB,KACzFsN,EAAsEtN,EAAoB,KAC1FuN,EAA0CvN,EAAoB,GMnnBjFwN,GNonBqExN,EAAoBO,EAAEgN,IMpnB/D,KAAM,QAAS,eAE3CE,GAA8B,KAAM,QAAS,aAAc,gBAE5Cb,EN+nBa,SAAUc,GAG1C,QAASd,KACP,GAAIxM,GAAO6G,EAAOC,CAElB4F,KAA6E5L,KAAM0L,EAEnF,KAAK,GAAIzF,GAAO/F,UAAUgG,OAAQC,EAAOC,MAAMH,GAAOI,EAAO,EAAGA,EAAOJ,EAAMI,IAC3EF,EAAKE,GAAQnG,UAAUmG,EAGzB,OAAenH,GAAS6G,EAAQ+F,IAAwF9L,KAAMwM,EAAiBlG,KAAKrG,MAAMuM,GAAmBxM,MAAMuG,OAAOJ,KAAiBJ,EM9nB7MjD,OACE2J,UAAU,GN+nBP1G,EM7lBL2G,mBAAqB,SAACC,GACpB5G,EAAK4G,MAAQA,EAEbnL,OAAA2K,EAAA,GAAiBpG,EAAK6G,iBACtB7G,EAAK6B,SAAS7B,EAAK8G,+BN8lBhB9G,EM3lBL8G,6BAA+B,SAACC,GAI9B,MAHIA,GAAUC,iBAAmBhH,EAAK4G,MAAMI,gBAC1CvL,OAAA2K,EAAA,GAAiBpG,EAAKiH,wBAGtBD,eAAgBhH,EAAK4G,MAAMI,eAC3BN,UAAU,IN6lBT1G,EMzlBL6G,gBAAkB,WAAM,GAAAK,GACwBlH,EAAKzF,MAA3CiL,EADc0B,EACd1B,eAAgBZ,EADFsC,EACEtC,cAAe9J,EADjBoM,EACiBpM,EAGvCkF,GAAKyF,OAAShK,OAAA4K,EAAA,GAAiBrG,EAAK4G,OAAOnB,OAEvCD,GAAkBZ,GACpBY,EAAeZ,EAAe9J,EAAIkF,EAAKyF,SN+lBtCzF,EM3lBLiH,sBAAwB,WACjBjH,EAAKmH,kBAQVnH,EAAK6B,SAAS,SAACkF,GAAD,OAAkBL,UAAWK,EAAUC,mBN8lBlDhH,EM3lBLoH,UAAY,SAACxG,GACXZ,EAAKY,KAAOA,GNkjBLX,EA0CJ9G,EAAQ4M,IAAwF/F,EAAOC,GA0E5G,MA/HAgG,KAAuEN,EAA6Bc,GAwDpGd,EAA4BvL,UMvqB5BiN,sBNuqB8D,SMvqBvCC,EAAWC,GAAW,GAAA7D,GAAAzJ,KACrCuN,GAAgBvN,KAAK8C,MAAMiK,iBAAmB/M,KAAK8C,MAAM2J,UAAYzM,KAAKM,MAAM+K,aAEtF,SAAMkC,KADoBD,EAAUP,iBAAmBO,EAAUb,WAAYY,EAAUhC,iBAMnEkC,EAAehB,EAA6BD,GAC5CkB,MAAM,SAAAC,GAAA,MAAQjM,QAAA6K,EAAA,IAAGgB,EAAUI,GAAOhE,EAAKnJ,MAAMmN,ON8qBnE/B,EAA4BvL,UM3qB5B+H,kBN2qB0D,WM3qBrC,GAAA7H,GACyBL,KAAKM,MAAzCmG,EADWpG,EACXoG,4BAA6B5F,EADlBR,EACkBQ,EAErC4F,GAA4BiH,QAC1B7M,EACAb,KAAK2G,KACL3G,KAAK0M,oBAGP1M,KAAKkN,kBAAmB,GN6qB1BxB,EAA4BvL,UM1qB5ByI,qBN0qB6D,WM1qBrC,GAAA+E,GACsB3N,KAAKM,MAAzCmG,EADckH,EACdlH,4BAA6B5F,EADf8M,EACe9M,EACrC4F,GAA4BmH,UAAU/M,EAAIb,KAAK2G,MAE/C3G,KAAKkN,kBAAmB,GNgrB1BxB,EAA4BvL,UMjoB5BC,ONioB+C,WMjoBrC,GAAAyN,GACkD7N,KAAKM,MAAvDmI,EADAoF,EACApF,SAAU5H,EADVgN,EACUhN,GAAIsD,EADd0J,EACc1J,MAAOuG,EADrBmD,EACqBnD,WAAYW,EADjCwC,EACiCxC,aADjCyC,EAE6B9N,KAAK8C,MAAlCiK,EAFAe,EAEAf,eAAgBN,EAFhBqB,EAEgBrB,QAExB,OAAKM,KAAmBN,IAAYpB,EAgBlCa,EAAAnL,EAAAoJ,cAAA,WAASC,IAAKpK,KAAKmN,UAAWY,gBAAe5J,EAAO6J,eAActD,EAAYuD,UAASpN,EAAIqN,SAAS,KACjGzF,GAAYyD,EAAAnL,EAAMoN,aAAa1F,GAAY2F,QAAQ,KAfpDlC,EAAAnL,EAAAoJ,cAAA,WACEC,IAAKpK,KAAKmN,UACVY,gBAAe5J,EACf6J,eAActD,EACdhK,OAAS8K,QAAWxL,KAAKwL,QAAUH,GAA1B,KAA4CgD,QAAS,EAAGC,SAAU,UAC3EL,UAASpN,EACTqN,SAAS,KAERzF,GAAYyD,EAAAnL,EAAMoN,aAAa1F,GAAY2F,QAAQ,MNqpBrD1C,GM/vBgDQ,EAAAnL,EAAMwN,YNswBzDC,IACA,SAAU5P,EAAQC,EAAqBC,GAE7C,YO3wBA,SAAS2P,GAASC,GAChB,KAAOC,EAAUzI,QAAUwI,EAASE,gBAAkB,GACpDD,EAAUE,SAERF,GAAUzI,OACZ4I,oBAAoBL,GAEpBM,GAA6B,EAIjC,QAASC,GAAiBC,GACxBN,EAAUO,KAAKD,GACVF,IACHA,GAA6B,EAC7BD,oBAAoBL,IAxBxB,GAAAU,GAAArQ,EAAA,KAAAsQ,EAAAtQ,EAAAO,EAAA8P,GAMMR,EAAY,GAAIS,GAAArO,EAClBgO,GAA6B,CAqBjClQ,GAAA,KP2xBMwQ,IACA,SAAUzQ,EAAQ0Q,EAASxQ,GAEjC,YQrzBA,SAASyQ,KACPvP,KAAKkG,OAAS,EAGhBqJ,EAAMpP,UAAU+O,KAAO,SAAUM,GAC/B,GAAI7I,IAAQ6I,KAAMA,EACdxP,MAAKyP,KACPzP,KAAKyP,KAAOzP,KAAKyP,KAAKC,KAAO/I,EAE7B3G,KAAKyP,KAAOzP,KAAK2P,MAAQhJ,EAE3B3G,KAAKkG,UAGPqJ,EAAMpP,UAAU0O,MAAQ,WACtB,GAAIlI,GAAO3G,KAAK2P,KAChB,IAAIhJ,EAKF,MAJA3G,MAAK2P,MAAQhJ,EAAK+I,OACV1P,KAAKkG,SACXlG,KAAKyP,SAAOG,IAEPjJ,EAAK6I,MAIhBD,EAAMpP,UAAU0P,MAAQ,SAAUC,EAAOC,GACvCD,MAAyB,KAAVA,EAAwB,EAAIA,EAC3CC,MAAqB,KAARA,EAAsBC,IAAWD,CAK9C,KAAK,GAHDE,MAEAC,EAAI,EACCvJ,EAAO3G,KAAK2P,MAAOhJ,OACpBoJ,EAAM,GADoBpJ,EAAOA,EAAK+I,OAG/BQ,EAAIJ,GACfG,EAAOf,KAAKvI,EAAK6I,KAGrB,OAAOS,IAGTrR,EAAO0Q,QAAUC,GR+zBXY,IACA,SAAUvR,EAAQC,EAAqBC,GAE7C,YS32BA,SAASsR,GAAiBzD,GACxB,GAAkC,iBAAvB0D,GAAkC,CAC3C,GAAMC,GAAe3D,EAAM4D,OAAOC,wBAC5BC,EAAe9D,EAAM+D,kBAC3BL,GAAqBC,EAAa9E,SAAWiF,EAAajF,QACxD8E,EAAaK,MAAQF,EAAaE,KAClCL,EAAaM,QAAUH,EAAaG,OACpCN,EAAaO,SAAWJ,EAAaI,QACrCP,EAAaQ,OAASL,EAAaK,MACnCR,EAAaS,QAAUN,EAAaM,MAExC,MAAOV,GAAqB1D,EAAM4D,OAAOC,wBAA0B7D,EAAM+D,mBAb3E,GAAIL,SAgBJxR,GAAA,KTi3BMmS,IACA,SAAUpS,EAAQC,EAAqBC,GAE7C,YACqB,IAAI6M,GAAqE7M,EAAoB,GACzF8M,EAA6E9M,EAAoBO,EAAEsM,GUn4BtHsF,EV64B4B,WAChC,QAASA,KACPrF,IAA6E5L,KAAMiR,GAEnFjR,KU/4BFkR,aVg5BElR,KU/4BFmR,mBVg5BEnR,KU/4BFoR,SAAW,KVi8BX,MA/CAH,GAA4B9Q,UUh5B5B4I,QVg5BgD,SUh5BvCsI,GAAS,GAAAtL,GAAA/F,KACVsR,EAAiB,SAACC,GACtBA,EAAQC,QAAQ,SAAA7E,GACd,GAAM9L,GAAK8L,EAAM4D,OAAOkB,aAAa,UACjC1L,GAAKmL,UAAUrQ,IACjBkF,EAAKmL,UAAUrQ,GAAI8L,KAKzB3M,MAAKoR,SAAW,GAAIM,sBAAqBJ,EAAgBD,GACzDrR,KAAKmR,gBAAgBK,QAAQ,SAAAvO,GAA4B,GAAzBpC,GAAyBoC,EAAA,GAArB0D,EAAqB1D,EAAA,GAAf0O,EAAe1O,EAAA,EACvD8C,GAAK2H,QAAQ7M,EAAI8F,EAAMgL,KAEzB3R,KAAKmR,gBAAkB,MVy5BzBF,EAA4B9Q,UUt5B5BuN,QVs5BgD,SUt5BvC7M,EAAI8F,EAAMgL,GACZ3R,KAAKoR,UAGRpR,KAAKkR,UAAUrQ,GAAM8Q,EACrB3R,KAAKoR,SAAS1D,QAAQ/G,IAHtB3G,KAAKmR,gBAAgBjC,MAAOrO,EAAI8F,EAAMgL,KV65B1CV,EAA4B9Q,UUt5B5ByN,UVs5BkD,SUt5BvC/M,EAAI8F,GACT3G,KAAKoR,iBACApR,MAAKkR,UAAUrQ,GACtBb,KAAKoR,SAASxD,UAAUjH,KV05B5BsK,EAA4B9Q,UUt5B5B+I,WVs5BmD,WUr5B7ClJ,KAAKoR,WACPpR,KAAKkR,aACLlR,KAAKoR,SAASlI,aACdlJ,KAAKoR,SAAW,OV05BbH,IUp5BTpS,GAAA,KV25BM+S,IACA,SAAUhT,EAAQC,EAAqBC,GAE7C,YACA0C,QAAOqQ,eAAehT,EAAqB,cAAgBiT,OAAO,IACnChT,EAAoBC,EAAEF,EAAqB,UAAW,WAAa,MAAOkT,IACpF,IAgCjBC,GAAMC,EAASC,EAASC,EAhCHhT,EAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFG,EAAqER,EAAoB,GACzFS,EAA6ET,EAAoBO,EAAEC,GACnGE,EAAgFV,EAAoB,GACpGW,EAAwFX,EAAoBO,EAAEG,GAC9GE,EAA+DZ,EAAoB,GACnFa,EAAuEb,EAAoBO,EAAEK,GAC7F0S,EAAgDtT,EAAoB,IACpEuT,EAAwDvT,EAAoBO,EAAE+S,GAC9ElN,EAAsCpG,EAAoB,GAC1DqG,EAA8CrG,EAAoBO,EAAE6F,GACpEoN,EAA4CxT,EAAoB,GAChEyT,EAAmDzT,EAAoB,IACvE0T,EAA0D1T,EAAoB,IAC9E2T,EAAuD3T,EAAoB,KAC3E4T,EAAkD5T,EAAoB,KACtE6T,EAAoE7T,EAAoB,KACxFwD,EAA4CxD,EAAoB,GAChE8T,EAAuE9T,EAAoB,KAC3F+T,EAA0C/T,EAAoB,IAE9DgU,GADkDhU,EAAoBO,EAAEwT,GAC7B/T,EAAoB,IAE/DiU,GADmDjU,EAAoBO,EAAEyT,GACZhU,EAAoB,MACjFkU,EAAuDlU,EAAoB,KWj+B9F0D,EAAWhB,OAAAc,EAAA,IACf2Q,OAAApS,GAAA,uBAAAC,eAAA,mBAGIoS,EAAmB1R,OAAAqR,EAAA,iBACvB,SAAA/P,GAAA,MAAStB,QAAAsR,EAAA,MAAchQ,EAAMwI,OAAO,WAAY,gBAAiB,UAAU6H,OAAO,SAAA3D,GAAA,OAASA,IAAM4D,SACjG,SAAAtQ,GAAA,MAASA,GAAMwI,OAAO,gBAAiB,YACtC,SAAC+H,EAAeC,GAAhB,MAAkCA,GAAcC,UAAU,SAAA/D,GAAA,MAAiB,QAATA,GAAiB6D,EAAcG,SAAShE,EAAKhM,IAAI,aAEhHiQ,EXogCQ,SAAU1T,GAGtB,QAAS0T,KACP,GAAIvU,GAAO6G,EAAOC,CAElBzG,KAA6ES,KAAMyT,EAEnF,KAAK,GAAIxN,GAAO/F,UAAUgG,OAAQC,EAAOC,MAAMH,GAAOI,EAAO,EAAGA,EAAOJ,EAAMI,IAC3EF,EAAKE,GAAQnG,UAAUmG,EAGzB,OAAenH,GAAS6G,EAAQtG,IAAwFO,KAAMD,EAAqBuG,KAAKrG,MAAMF,GAAuBC,MAAMuG,OAAOJ,KAAiBJ,EWxgCrN2N,YAAc,WACZ3N,EAAKzF,MAAMM,QAAQmF,EAAKzF,MAAMqT,QXugCvB3N,EAEJ9G,EAAQO,IAAwFsG,EAAOC,GAU5G,MAvBArG,KAAuE8T,EAAS1T,GAgBhF0T,EAAQtT,UWzgCRC,OXygC2B,WWxgCzB,MAAAhB,KAAQ4T,EAAA,GAARpS,QAA0BZ,KAAK0T,YAA/BnT,SAAsDP,KAAKM,MAAMC,YX+gC5DkT,GW5hCatO,EAAApE,EAAMC,eAkBtB4S,EAAkB,SAAA9Q,GAAA,OACtBwQ,cAAeJ,EAAiBpQ,GAChCqE,UAAWrE,EAAMwI,OAAO,gBAAiB,cAAc,GACvDuI,SAAU/Q,EAAMwI,OAAO,gBAAiB,WAAa,EACrDzB,QAAS/G,EAAMwI,OAAO,gBAAiB,cAKpByG,GX6gCAC,EW/gCpBxQ,OAAA8Q,EAAA,SAAQsB,IX+gCuG3B,EW9gC/GzQ,OAAAc,EAAA,IX8gC4M6P,EAASD,EAAU,SAAU4B,GAGxO,QAAS/B,KACP,GAAIhN,GAAQ0E,EAAQsK,CAEpBxU,KAA6ES,KAAM+R,EAEnF,KAAK,GAAIiC,GAAQ9T,UAAUgG,OAAQC,EAAOC,MAAM4N,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IAChF9N,EAAK8N,GAAS/T,UAAU+T,EAG1B,OAAgBlP,GAAU0E,EAAShK,IAAwFO,KAAM8T,EAAsBxN,KAAKrG,MAAM6T,GAAwB9T,MAAMuG,OAAOJ,KAAkBsD,EWhgC3NyK,cAAgB,SAACP,GACflK,EAAKnJ,MAAMe,SAASG,OAAAiR,EAAA,IAAsBkB,YXigCvClK,EW9/BL0K,gBAAkB9B,IAAS,WACzB,GAAM5C,GAAOhG,EAAKnJ,MAAMgT,cAAc7D,MACtChG,GAAKnJ,MAAMe,SAASG,OAAAiR,EAAA,IAAsBkB,MAAOlE,GAAQA,EAAKjM,IAAI,UACjE,KAAO4Q,SAAS,IX8/BW3K,EW5/B9B4K,kBAAoBhC,IAAS,WAC3B5I,EAAKnJ,MAAMe,SAASG,OAAAiR,EAAA,IAAuB,KAC1C,KX4/BQhJ,EW1/BX/C,aAAe2L,IAAS,WACtB5I,EAAKnJ,MAAMe,SAASG,OAAAiR,EAAA,IAAuB,KAC1C,KX0/BQhJ,EWx/BX6K,UAAY,WAAM,GAAAC,GACe9K,EAAKnJ,MAA5BkU,EADQD,EACRC,SAAUnT,EADFkT,EACElT,QAGhBA,GADEmT,EACOhT,OAAAkR,EAAA,GAAa8B,GAEbhT,OAAAkR,EAAA,GAAU,sBX6/BlBjJ,EWz/BLgL,WAAa,SAACC,GAAQ,GAAAC,GACWlL,EAAKnJ,MAA5BkU,EADYG,EACZH,UACRnT,EAFoBsT,EACFtT,UACTG,OAAAkR,EAAA,GAAW8B,EAAUE,KX6/B3BjL,EW1/BLmL,kBAAoB,WAClBnL,EAAKoL,OAAOhO,aX2/BT4C,EWx/BLqL,aAAe,SAAA/M,GACb0B,EAAKoL,OAAS9M,GXy/BX0B,EWt/BLsL,aAAe,SAAAlU,GACb,GAAMmU,GAAevL,EAAKnJ,MAAMgT,cAAc2B,UAAU,SAAAzF,GAAA,MAAiB,QAATA,GAAiBA,EAAKhM,IAAI,QAAU3C,IAAM,CAC1G4I,GAAKyL,aAAaF,IXy/BfvL,EWt/BL0L,eAAiB,SAAAtU,GACf,GAAMmU,GAAevL,EAAKnJ,MAAMgT,cAAc2B,UAAU,SAAAzF,GAAA,MAAiB,QAATA,GAAiBA,EAAKhM,IAAI,QAAU3C,IAAM,CAC1G4I,GAAKyL,aAAaF,IXi9BXjB,EAwCJhP,EAAStF,IAAwFgK,EAAQsK,GAyF9G,MA5IApU,KAAuEoS,EAAe+B,GAsDtF/B,EAAc5R,UWljCdyI,qBXkjC+C,WWjjC7C5I,KAAKmU,gBAAgBiB,SACrBpV,KAAKqU,kBAAkBe,SACvBpV,KAAK0G,aAAa0O,SAClBpV,KAAKM,MAAMe,SAASG,OAAAiR,EAAA,IAAuB,KXqjC7CV,EAAc5R,UWhgCd+U,aXggCuC,SWhgCzB/Q,GACZ,GAAMkR,GAAUrV,KAAK6U,OAAOlO,KAAK2O,cAAjB,wBAAsDnR,EAAQ,GAA9D,eAEZkR,IACFA,EAAQE,SXogCZxD,EAAc5R,UWhgCdC,OXggCiC,WWhgCvB,GAAAoV,GAAAxV,KAAAK,EACiGL,KAAKM,MAAtG4C,EADA7C,EACA6C,KAAMoQ,EADNjT,EACMiT,cAAe1J,EADrBvJ,EACqBuJ,mBAAoBzC,EADzC9G,EACyC8G,UAAW0M,EADpDxT,EACoDwT,SAAUW,EAD9DnU,EAC8DmU,SAAUiB,EADxEpV,EACwEoV,YAAa5L,EADrFxJ,EACqFwJ,QACvF6L,IAAWlB,EACXzK,EAAA3K,IAAgBkD,EAAA,GAAhBzB,GAAoC,6BAApCC,eAAgF,0FAElF6U,EAAoB,IAGtBA,GADExO,GAAanH,KAAK2V,kBACA3V,KAAK2V,kBAChBrC,EAAcsC,KAAO,GAAK/L,EACfyJ,EAAc9I,IAAI,SAACgF,EAAMrL,GAAP,MAA0B,QAATqL,EAAApQ,IACpDqU,GADoDlT,SAGzC4G,EAHyCwM,MAI5CxP,EAAQ,EAAImP,EAAchI,OAAOnH,EAAQ,EAAG,OAAS,KAJTvD,QAK1C4U,EAAKtB,eAHT,OAASZ,EAAchI,OAAOnH,EAAQ,EAAG,QAFK/E,IAQpDuT,EAAA,GARoDkD,aAUrCrG,EAVqCsG,UAWxCtG,EAAKhM,IAAI,WAX+BuS,SAYzCP,EAAKT,aAZoCiB,WAavCR,EAAKL,gBAJZ3F,EAAKhM,IAAI,SAQE,KAGtBxD,KAAK2V,kBAAoBA,CAEzB,IAAMM,GAAA7W,IACH2T,EAAA,GADGrJ,UAAA,iBAE0B8K,EAF1B7K,aAGY+L,EAHZvO,UAISA,EAJT0C,QAKOA,EALPE,aAMYA,EANZ7C,WAOUlH,KAAKmU,gBAPf/M,cAQapH,KAAKqU,kBARlBhN,SASQrH,KAAK0G,aATbkD,mBAUkBA,OAVlB,GAYD+L,EAIL,OACExQ,GAAApE,EAAAoJ,cAACoI,EAAA,GAAOnI,IAAKpK,KAAK8U,cAAlB1V,IACGoT,EAAA,GADH0D,KAES,OAFTC,OAGYtC,EAHZZ,MAIW/P,EAAKW,cAAcrB,EAASyQ,OAJvCmD,MAKWpW,KAAKsU,UALhB+B,OAMYrW,KAAKyU,WANjB7T,QAOaZ,KAAK4U,kBAPlBc,OAQYA,EARZD,YASiBA,OATjB,GAAArW,IAWKwT,EAAA,OAGFqD,IXwgCAlE,GW1pCkC5M,EAAApE,EAAMC,eX2pCekR,EW7oCvDjR,cACL0I,aAAa,GX8/BiLsI,EAgJ/LE,KAAYF,IAAYA,GAKrBqE,IACA,SAAU1X,EAAQC,EAAqBC,GAE7C,YACqB,IAAIK,GAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFwC,EAAsC7C,EAAoB,GAE1D8C,GAD8C9C,EAAoBO,EAAEsC,GACxB7C,EAAoB,IAChEyX,EAA2CzX,EAAoB,GAC/DgD,EAA2ChD,EAAoB,IAC/D0X,EAAoD1X,EAAoB,KACxE2X,EAAkD3X,EAAoB,IACtE4X,EAA+C5X,EAAoB,IACnE6X,EAA+C7X,EAAoB,KACnE8X,EAA+C9X,EAAoB,IYrtCtF0D,EAAWhB,OAAA+U,EAAA,IACfM,iBAAAhW,GAAA,iCAAAC,eAAA,cAGI8B,EAAsB,WAC1B,GAAMkU,GAAatV,OAAAM,EAAA,IAMnB,OAJwB,UAACgB,EAAOxC,GAAR,OACtBc,QAAS0V,EAAWhU,EAAOxC,EAAMO,OAM/BmC,EAAqB,SAAC3B,EAAD4B,GAAA,GAAaC,GAAbD,EAAaC,IAAb,QAEzB6T,SAFkD,SAExC3V,GAGJC,EAFAD,EAAQkK,OAAO,eAAgB,eAAiBlK,EAAQkK,OAAO,eAAgB,cAC7EsL,EAAA,EACOpV,OAAAkV,EAAA,GAAU,WACjB9S,QAAAxE,IAAUmX,EAAA,GAAV1V,GAA8B,iCAA9BC,eAA8E,4CAA9EyD,QAAoIC,KAAApF,IAAAoF,uBAAgBpD,EAAQoC,IAAI,YAChKM,QAASZ,EAAKW,cAAcrB,EAASqU,iBACrC9S,UAAW,iBAAM1C,GAASG,OAAAiV,EAAA,GAAgBrV,EAAQoC,IAAI,WAG/ChC,OAAAiV,EAAA,GAAgBrV,EAAQoC,IAAI,OAG9BhC,OAAAiV,EAAA,GAAcrV,EAAQoC,IAAI,SAIvCc,QAlBkD,SAkBzClD,GAELC,EADED,EAAQkK,OAAO,eAAgB,aACxB9J,OAAAiV,EAAA,GAAerV,EAAQoC,IAAI,OAE3BhC,OAAAiV,EAAA,GAAarV,EAAQoC,IAAI,SAItCkB,OA1BkD,SA0B1CtD,GAEJC,EADED,EAAQkK,OAAO,eAAgB,WACxB9J,OAAAiV,EAAA,GAAcrV,EAAQoC,IAAI,OAE1BhC,OAAAmV,EAAA,GAAcvV,KAK3B4V,oBAnCkD,SAmC7B5V,EAASkS,GAC5BjS,EAASG,OAAAiV,EAAA,GAAYrV,EAAQoC,IAAI,MAAO8P,MAI5CzU,GAAA,EAAe2C,OAAA+U,EAAA,GAAW/U,OAAAI,EAAA,SAAQgB,EAAqBI,GAAoBwT,EAAA,KZ8uCrES,IACA,SAAUrY,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOqY,IAC9E,IA2BjBjY,GAAQgT,EAASlN,EA3BI5F,EAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFG,EAAqER,EAAoB,GACzFS,EAA6ET,EAAoBO,EAAEC,GACnGE,EAAgFV,EAAoB,GACpGW,EAAwFX,EAAoBO,EAAEG,GAC9GE,EAA+DZ,EAAoB,GACnFa,EAAuEb,EAAoBO,EAAEK,GAC7FE,EAAsCd,EAAoB,GAE1DqY,GAD8CrY,EAAoBO,EAAEO,GACVd,EAAoB,KAC9EsY,EAAkEtY,EAAoBO,EAAE8X,GACxFE,EAA2CvY,EAAoB,GAC/DwY,EAAmDxY,EAAoBO,EAAEgY,GACzEE,EAAwCzY,EAAoB,IAC5D0Y,EAA8C1Y,EAAoB,IAClE2Y,EAA2C3Y,EAAoB,KAC/D4Y,EAA8C5Y,EAAoB,IAClE6Y,EAA4C7Y,EAAoB,GAChE8Y,EAAgE9Y,EAAoB,IACpF+Y,EAAwE/Y,EAAoBO,EAAEuY,GAC9FrV,EAAgDzD,EAAoB,Iap0CvF0D,EAAWhB,OAAAmW,EAAA,IACfG,QAAAjX,GAAA,iBAAAC,eAAA,UACAiX,UAAAlX,GAAA,mBAAAC,eAAA,YACAkX,WAAAnX,GAAA,oBAAAC,eAAA,qBACAmX,SAAApX,GAAA,kBAAAC,eAAA,mBACAoX,QAAArX,GAAA,iBAAAC,eAAA,kBACAqX,oBAAAtX,GAAA,6BAAAC,eAAA,mCACAsX,sBAAAvX,GAAA,+BAAAC,eAAA,uCAImBoW,EADpB1V,OAAAmW,EAAA,Ib42C+F5S,EAASkN,EAAU,SAAUoG,GAG3H,QAASnB,KACP,GAAIhY,GAAO6G,EAAOC,CAElBzG,KAA6ES,KAAMkX,EAEnF,KAAK,GAAIjR,GAAO/F,UAAUgG,OAAQC,EAAOC,MAAMH,GAAOI,EAAO,EAAGA,EAAOJ,EAAMI,IAC3EF,EAAKE,GAAQnG,UAAUmG,EAGzB,OAAenH,GAAS6G,EAAQtG,IAAwFO,KAAMqY,EAAsB/R,KAAKrG,MAAMoY,GAAwBrY,MAAMuG,OAAOJ,KAAiBJ,Ea32CvNuS,aAAe,WACbvS,EAAKzF,MAAMyW,SAAShR,EAAKzF,MAAMc,Ub42C5B2E,Eaz2CLwS,YAAc,WACZxS,EAAKzF,MAAMgE,QAAQyB,EAAKzF,MAAMc,Ub02C3B2E,Eav2CLyS,WAAa,WACXzS,EAAKzF,MAAMoE,OAAOqB,EAAKzF,MAAMc,Ubw2C1B2E,Ear2CL0S,wBAA0B,WACxB1S,EAAKzF,MAAM0W,oBAAoBjR,EAAKzF,MAAMc,SAAS,Ibs2ChD2E,Ean2CL2S,0BAA4B,WAC1B3S,EAAKzF,MAAM0W,oBAAoBjR,EAAKzF,MAAMc,SAAS,Ib01C5C4E,EAUJ9G,EAAQO,IAAwFsG,EAAOC,GA4F5G,MAjHArG,KAAuEuX,EAASmB,GAwBhFnB,EAAQ/W,Uap2CRC,Obo2C2B,Wap2CjB,GAAAC,GAC0BL,KAAKM,MAA/Bc,EADAf,EACAe,QAAS8B,EADT7C,EACS6C,KAAMkL,EADf/N,EACe+N,MAEvB,KAAKhN,EACH,MAAAhC,KAAA,SAGF,IAAIgP,EACF,MAAAhP,KAAA,gBAEKgC,EAAQoC,IAAI,gBACZpC,EAAQoC,IAAI,YAKnB,IAAImV,SAEJ,IAAIvX,EAAQoC,IAAI,QAAUjB,EAAA,GAA4C,OAAtCnB,EAAQoC,IAAI,eAAgB,MAAgB,CAC1E,GAAMoV,GAAYxX,EAAQkK,OAAO,eAAgB,cAC3C0M,EAAY5W,EAAQkK,OAAO,eAAgB,cAC3CuN,EAAYzX,EAAQkK,OAAO,eAAgB,aAC3CwN,EAAU1X,EAAQkK,OAAO,eAAgB,UAE/C,IAAI0M,EACFW,EAAAvZ,IAAWsY,EAAA,GAAXnX,UAAA,EAAA2V,KAAoC,YAApCjD,MAAuD/P,EAAKW,cAAcrB,EAASwV,iBAC9E,IAAIa,EACTF,EAAAvZ,IAAWsY,EAAA,GAAXvB,QAAA,EAAAD,KAAkC,aAAlCjD,MAAsD/P,EAAKW,cAAcrB,EAASyV,SAAWzT,KAAMpD,EAAQoC,IAAI,cAA/G5C,QAAwIZ,KAAKuY,kBACxI,IAAIO,EAAQ,CACjB,GAAIC,SAEFA,GADE3X,EAAQkK,OAAO,eAAgB,yBACjClM,IAA6BsY,EAAA,GAA7BvB,QAAA,EAAAD,KAAoD,OAApDjD,MAAkE/P,EAAKW,cAAcrB,EAAS4V,sBAAwB5T,KAAMpD,EAAQoC,IAAI,cAAxI5C,QAAiKZ,KAAK0Y,4BAEtKtZ,IAA6BsY,EAAA,GAA7BvB,QAAA,EAAAD,KAAoD,aAApDjD,MAAwE/P,EAAKW,cAAcrB,EAAS2V,oBAAsB3T,KAAMpD,EAAQoC,IAAI,cAA5I5C,QAAsKZ,KAAKyY,0BAE7KE,EAAAvZ,IACGQ,EAAA,gBADH,GAAAR,IAEKsY,EAAA,GAFLvB,QAAA,EAAAD,KAE4B,YAF5BjD,MAE+C/P,EAAKW,cAAcrB,EAAS0V,QAAU1T,KAAMpD,EAAQoC,IAAI,cAFvG5C,QAEgIZ,KAAKwY,aAChIO,OAGK3X,GAAQoC,IAAI,WAAYoV,IAClCD,EAAAvZ,IAAWsY,EAAA,GAAXxB,KAA4B0C,EAAY,aAAe,YAAvD3F,MAA2E/P,EAAKW,cAAc+U,EAAYpW,EAASuV,SAAWvV,EAASsV,QAAvIlX,QAAyJZ,KAAKsY,aAA9JnC,OAAoLyC,KAIxL,MAAAxZ,KAAA,OAAAqB,UACiB,eADjB,GAAArB,IAAA,OAAAqB,UAEmB,wBAFnB,GAAArB,IAGOqY,EAAA,GAHPhX,UAGmD,wBAHnDuY,KAGiF5X,EAAQoC,IAAI,OAH7FyV,GAAA,aAGsH7X,EAAQoC,IAAI,OAA5GpC,EAAQoC,IAAI,MAHlCpE,IAAA,OAAAqB,UAIuB,+BAJvB,GAAArB,IAIkDmY,EAAA,GAJlDnW,QAIkEA,EAJlEwU,KAIiF,MAJjFxW,IAKSoY,EAAA,GALTpW,QAK8BA,KAL9BhC,IAAA,OAAAqB,UAQqB,6BARrB,GASSkY,Mbs4CJzB,Ga79C4BW,EAAA9W,Gb89CuCkR,Ea59CnEiH,WACL9X,QAASgW,EAAArW,EAAmByJ,IAAI2O,WAChCpC,SAAUO,EAAAvW,EAAUqY,KAAKD,WACzB7U,QAASgT,EAAAvW,EAAUqY,KAAKD,WACxBzU,OAAQ4S,EAAAvW,EAAUqY,KAAKD,WACvBnC,oBAAqBM,EAAAvW,EAAUqY,KAAKD,WACpCjW,KAAMoU,EAAAvW,EAAUiK,OAAOmO,WACvB/K,OAAQkJ,EAAAvW,EAAUsY,Mbk2CgEpa,EA2HnF8F,KAAY9F,GAMTqa,IACA,SAAU1a,EAAQ0Q,EAASxQ,GAEjC,Ycr+CA,SAASya,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,QAASF,GAEvF,QAASG,GAAyBH,EAAKpG,GAAQ,GAAI7C,KAAa,KAAK,GAAIL,KAAKsJ,GAAWpG,EAAKwG,QAAQ1J,IAAM,GAAkB1O,OAAOrB,UAAU0Z,eAAevT,KAAKkT,EAAKtJ,KAAcK,EAAOL,GAAKsJ,EAAItJ,GAAM,OAAOK,GAEnN,QAASuJ,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIC,WAAU,qCAEhH,QAASC,GAA2BC,EAAM7T,GAAQ,IAAK6T,EAAQ,KAAM,IAAIC,gBAAe,4DAAgE,QAAO9T,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B6T,EAAP7T,EAElO,QAAS+T,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIN,WAAU,iEAAoEM,GAAeD,GAASna,UAAYqB,OAAOgZ,OAAOD,GAAcA,EAAWpa,WAAasa,aAAe3I,MAAOwI,EAAUI,YAAY,EAAOC,UAAU,EAAMC,cAAc,KAAeL,IAAY/Y,OAAOqZ,eAAiBrZ,OAAOqZ,eAAeP,EAAUC,GAAcD,EAASQ,UAAYP,GAtCje/Y,OAAOqQ,eAAevC,EAAS,cAC7BwC,OAAO,GAGT,IAAIiJ,GAAWvZ,OAAOwZ,QAAU,SAAUzK,GAAU,IAAK,GAAIL,GAAI,EAAGA,EAAIhQ,UAAUgG,OAAQgK,IAAK,CAAE,GAAI+K,GAAS/a,UAAUgQ,EAAI,KAAK,GAAI3G,KAAO0R,GAAczZ,OAAOrB,UAAU0Z,eAAevT,KAAK2U,EAAQ1R,KAAQgH,EAAOhH,GAAO0R,EAAO1R,IAAY,MAAOgH,IAEnP2K,EAAe,WAAc,QAASC,GAAiB5K,EAAQjQ,GAAS,IAAK,GAAI4P,GAAI,EAAGA,EAAI5P,EAAM4F,OAAQgK,IAAK,CAAE,GAAIkL,GAAa9a,EAAM4P,EAAIkL,GAAWV,WAAaU,EAAWV,aAAc,EAAOU,EAAWR,cAAe,EAAU,SAAWQ,KAAYA,EAAWT,UAAW,GAAMnZ,OAAOqQ,eAAetB,EAAQ6K,EAAW7R,IAAK6R,IAAiB,MAAO,UAAUpB,EAAaqB,EAAYC,GAAiJ,MAA9HD,IAAYF,EAAiBnB,EAAY7Z,UAAWkb,GAAiBC,GAAaH,EAAiBnB,EAAasB,GAAqBtB,MAE5hBuB,EAASzc,EAAQ,GAEjB0c,EAAUjC,EAAuBgC,GAEjCE,EAAc3c,EAAQ,IAEtB4c,EAAenC,EAAuBkC,GAEtCE,EAAa7c,EAAQ,GAErB8c,EAAcrC,EAAuBoC,GAErCE,EAAS/c,EAAQ,KAEjBgd,EAAUvC,EAAuBsC,GAEjCE,EAAKjd,EAAQ,KAEbkd,EAAMzC,EAAuBwC,GAE7BE,EAAQnd,EAAQ,KAYhBod,EAAS,SAAUpW,GAGrB,QAASoW,GAAO5b,GACdwZ,EAAgB9Z,KAAMkc,EAEtB,IAAInW,GAAQmU,EAA2Bla,MAAOkc,EAAOpB,WAAatZ,OAAO2a,eAAeD,IAAS5V,KAAKtG,KAAMM,GAa5G,OAXAyF,GAAM2N,YAAc3N,EAAM2N,YAAY0I,KAAKrW,GAC3CA,EAAMsW,iBAAmBtW,EAAMsW,iBAAiBD,KAAKrW,GACrDA,EAAMuW,gBAAkBvW,EAAMuW,gBAAgBF,KAAKrW,GACnDA,EAAMwW,eAAiBxW,EAAMwW,eAAeH,KAAKrW,GACjDA,EAAMyW,YAAczW,EAAMyW,YAAYJ,KAAKrW,GAC3CA,EAAM0W,WAAa1W,EAAM0W,WAAWL,KAAKrW,GACzCA,EAAM2W,qBAAuBpc,EAAMqc,UAAWrc,EAAMsc,gBACpD7W,EAAMjD,OACJ6Z,WAAYrc,EAAMqc,UAAWrc,EAAMsc,gBACnCC,UAAU,GAEL9W,EAmKT,MArLAsU,GAAU6B,EAAQpW,GAqBlBoV,EAAagB,IACX3S,IAAK,4BACLuI,MAAO,SAAmCzE,GACpC,WAAaA,IACfrN,KAAK4H,UAAW+U,UAAWtP,EAAUsP,aAIzCpT,IAAK,cACLuI,MAAO,SAAqBgL,GAC1B,GAAIC,GAAW/c,KAAKgd,KACpB,IAAIF,EAAMvM,SAAWwM,IAAa/c,KAAKid,MAKrC,MAJAjd,MAAK0c,kBAAoBK,EAASJ,QAClCG,EAAM7U,iBACN8U,EAASxH,YACTwH,GAASG,OAIX,IAAIP,GAAU3c,KAAKM,MAAMuZ,eAAe,WAAa7Z,KAAKM,MAAMqc,QAAUI,EAASJ,OAEnF3c,MAAK4H,UAAW+U,QAASA,OAG3BpT,IAAK,mBACLuI,MAAO,SAA0BgL,GAC/B9c,KAAKmd,QAAS,EAAIlB,EAAMmB,cAAcN,GAAOO,EAC7Crd,KAAKsd,WAAY,KAGnB/T,IAAK,kBACLuI,MAAO,SAAyBgL,GAC9B,GAAK9c,KAAKsd,YACVtd,KAAKid,OAAQ,EAETjd,KAAKmd,QAAQ,CACf,GAAII,IAAW,EAAItB,EAAMmB,cAAcN,GAAOO,CAC1Crd,MAAK8C,MAAM6Z,SAAWY,EAAW,GAAKvd,KAAKmd,QAC7Cnd,KAAK4H,UAAW+U,SAAS,IACzB3c,KAAKmd,OAASI,EACdvd,KAAKsd,WAAY,GACRC,EAAW,GAAKvd,KAAKmd,SAC9Bnd,KAAK4H,UAAW+U,SAAS,IACzB3c,KAAKmd,OAASI,EACdvd,KAAKsd,UAAYC,EAAWvd,KAAKmd,OAAS,OAKhD5T,IAAK,iBACLuI,MAAO,SAAwBgL,GAC7B,GAAK9c,KAAKid,MAAV,CACA,GAAIF,GAAW/c,KAAKgd,KAGpB,IAFAF,EAAM7U,iBAEFjI,KAAKmd,OAAQ,CACf,GAAIK,IAAO,EAAIvB,EAAMmB,cAAcN,GAAOO,GACX,IAA3Brd,KAAK0c,mBAA8B1c,KAAKmd,OAAS,EAAIK,EACnDxd,KAAK0c,oBAAsB1c,KAAK8C,MAAM6Z,UACxC3c,KAAK4H,UAAW+U,SAAS,IACzB3c,KAAK0c,kBAAoB1c,KAAK8C,MAAM6Z,QACpCI,EAASG,SAEFld,KAAKmd,OAAS,EAAIK,GACvBxd,KAAK0c,oBAAsB1c,KAAK8C,MAAM6Z,UACxC3c,KAAK4H,UAAW+U,SAAS,IACzB3c,KAAK0c,kBAAoB1c,KAAK8C,MAAM6Z,QACpCI,EAASG,SAIbld,KAAKsd,WAAY,EACjBtd,KAAKmd,OAAS,KACdnd,KAAKid,OAAQ,OAIjB1T,IAAK,cACLuI,MAAO,SAAqBgL,GAC1B,GAAIW,GAAUzd,KAAKM,MAAMmd,OAGrBA,IACFA,EAAQX,GAGV9c,KAAK4H,UAAWiV,UAAU,OAG5BtT,IAAK,aACLuI,MAAO,SAAoBgL,GACzB,GAAIY,GAAS1d,KAAKM,MAAMod,MAGpBA,IACFA,EAAOZ,GAGT9c,KAAK4H,UAAWiV,UAAU,OAG5BtT,IAAK,UACLuI,MAAO,SAAiBxQ,GACtB,GAAIqc,GAAQ3d,KAAKM,MAAMqd,KAEvB,OAAKA,OAGkB/N,KAAhB+N,EAAMrc,GAAsB4a,EAAOjb,aAAa0c,MAAMrc,GAAQqc,EAAMrc,GAFlE,QAKXiI,IAAK,SACLuI,MAAO,WACL,GAAIrI,GAASzJ,KAETK,EAASL,KAAKM,MACdG,EAAYJ,EAAOI,UAEnBmd,GADSvd,EAAOsd,MACHhE,EAAyBtZ,GAAS,YAAa,WAE5Dwd,GAAU,EAAInC,EAAahC,SAAS,gBACtCoE,wBAAyB9d,KAAK8C,MAAM6Z,QACpCoB,sBAAuB/d,KAAK8C,MAAM+Z,SAClCmB,yBAA0Bhe,KAAKM,MAAMC,UACpCE,EAEH,OAAO+a,GAAQ9B,QAAQvP,cACrB,OACE1J,UAAWod,EACXjd,QAASZ,KAAK0T,YACduK,aAAcje,KAAKqc,iBACnB6B,YAAale,KAAKsc,gBAClB6B,WAAYne,KAAKuc,gBACnBf,EAAQ9B,QAAQvP,cACd,OACE1J,UAAW,sBACb+a,EAAQ9B,QAAQvP,cACd,OACE1J,UAAW,4BACbT,KAAKoe,QAAQ,YAEf5C,EAAQ9B,QAAQvP,cACd,OACE1J,UAAW,wBACbT,KAAKoe,QAAQ,eAGjB5C,EAAQ9B,QAAQvP,cAAc,OAAS1J,UAAW,uBAClD+a,EAAQ9B,QAAQvP,cAAc,QAAS4Q,KAAa6C,GAClDxT,IAAK,SAAanH,GAChBwG,EAAOuT,MAAQ/Z,GAEjBwa,QAASzd,KAAKwc,YACdkB,OAAQ1d,KAAKyc,WACbhc,UAAW,iCACXa,KAAM,mBAKP4a,GACPX,EAAOva,cAETsO,GAAQoK,QAAUwC,EAGlBA,EAAOmC,YAAc,SAErBnC,EAAOjb,cACL0c,OACEhB,QAASnB,EAAQ9B,QAAQvP,cAAc2R,EAAQpC,QAAS,MACxD4E,UAAW9C,EAAQ9B,QAAQvP,cAAc6R,EAAItC,QAAS,QAI1DwC,EAAOhD,WACLyD,QAASf,EAAYlC,QAAQL,KAC7B9Y,SAAUqb,EAAYlC,QAAQL,KAC9BuD,eAAgBhB,EAAYlC,QAAQL,KACpCkF,SAAU3C,EAAYlC,QAAQN,KAC9BqE,QAAS7B,EAAYlC,QAAQN,KAC7BsE,OAAQ9B,EAAYlC,QAAQN,KAC5B3Y,UAAWmb,EAAYlC,QAAQ8E,OAC/Bha,KAAMoX,EAAYlC,QAAQ8E,OAC1B1M,MAAO8J,EAAYlC,QAAQ8E,OAC3B3d,GAAI+a,EAAYlC,QAAQ8E,OACxBC,kBAAmB7C,EAAYlC,QAAQ8E,OACvCE,aAAc9C,EAAYlC,QAAQ8E,OAClCb,MAAO/B,EAAYlC,QAAQiF,WAAW/C,EAAYlC,QAAQL,KAAMuC,EAAYlC,QAAQkF,OAClFjC,QAASf,EAAYlC,QAAQ/S,KAC7B2X,UAAW1C,EAAYlC,QAAQ/S,WdwhD7BkY,IACA,SAAUjgB,EAAQ0Q,EAASxQ,GAEjC,YevxDA0C,QAAOqQ,eAAevC,EAAS,cAC7BwC,OAAO,GAGT,IAAIyJ,GAASzc,EAAQ,GAEjB0c,EAEJ,SAAgChC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,QAASF,IAFlD+B,EAIrCjM,GAAQoK,QAAU,WAChB,MAAO8B,GAAQ9B,QAAQvP,cACrB,OACEyG,MAAO,KAAMpF,OAAQ,KAAMsT,QAAS,aACtCtD,EAAQ9B,QAAQvP,cACd,QACA,KACA,gBAEFqR,EAAQ9B,QAAQvP,cAAc,QAAUpL,EAAG,yEAA0EggB,KAAM,OAAQC,SAAU,efyxD3IC,IACA,SAAUrgB,EAAQ0Q,EAASxQ,GAEjC,YgB/yDA0C,QAAOqQ,eAAevC,EAAS,cAC7BwC,OAAO,GAGT,IAAIyJ,GAASzc,EAAQ,GAEjB0c,EAEJ,SAAgChC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,QAASF,IAFlD+B,EAIrCjM,GAAQoK,QAAU,WAChB,MAAO8B,GAAQ9B,QAAQvP,cACrB,OACEyG,MAAO,KAAMpF,OAAQ,KAAMsT,QAAS,aACtCtD,EAAQ9B,QAAQvP,cACd,QACA,KACA,YAEFqR,EAAQ9B,QAAQvP,cAAc,QAAUpL,EAAG,yHAA0HggB,KAAM,OAAQC,SAAU,ehBizD3LE,IACA,SAAUtgB,EAAQ0Q,EAASxQ,GAEjC,YiB/zDA,SAASse,GAAaN,GAGpB,GAAIA,EAAO,CACT,GAAIqC,GAAiBrC,EAAMqC,cAC3B,IAAIA,GAAkBA,EAAejZ,OAAS,EAAG,CAC/C,GAAIkZ,GAAQD,EAAe,EAC3B,QAAS9B,EAAG+B,EAAMC,QAASC,EAAGF,EAAMG,SAEtC,GAAIC,GAAQ1C,EAAM0C,KAClB,QAAc5P,KAAV4P,EACF,OAASnC,EAAGmC,EAAOF,EAAGxC,EAAM2C,OAGhC,OAASpC,EAAG,EAAGiC,EAAG,GAtBpB9d,OAAOqQ,eAAevC,EAAS,cAC7BwC,OAAO,IAETxC,EAAQ8N,aAAeA,GjBk2DjBsC,IACA,SAAU9gB,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAO8gB,IAC9E,IAAIxgB,GAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFG,EAAqER,EAAoB,GACzFS,EAA6ET,EAAoBO,EAAEC,GACnGE,EAAgFV,EAAoB,GACpGW,EAAwFX,EAAoBO,EAAEG,GAC9GE,EAA+DZ,EAAoB,GACnFa,EAAuEb,EAAoBO,EAAEK,GAC7FE,EAAsCd,EAAoB,GAC1De,EAA8Cf,EAAoBO,EAAEO,GACpEggB,EAA6C9gB,EAAoB,KACjE+gB,EAAqD/gB,EAAoBO,EAAEugB,GkBl3D/ED,ElB23DD,SAAU5f,GAG5B,QAAS4f,KACP,GAAIzgB,GAAO6G,EAAOC,CAElBzG,KAA6ES,KAAM2f,EAEnF,KAAK,GAAI1Z,GAAO/F,UAAUgG,OAAQC,EAAOC,MAAMH,GAAOI,EAAO,EAAGA,EAAOJ,EAAMI,IAC3EF,EAAKE,GAAQnG,UAAUmG,EAGzB,OAAenH,GAAS6G,EAAQtG,IAAwFO,KAAMD,EAAqBuG,KAAKrG,MAAMF,GAAuBC,MAAMuG,OAAOJ,KAAiBJ,EkB53DrNwY,SAAW,SAAAtb,GAAgB,GAAbsN,GAAatN,EAAbsN,MACZxK,GAAKzF,MAAMie,SAASxY,EAAKzF,MAAMwf,YAAavP,EAAOoM,UlB23D5C3W,EAIJ9G,EAAQO,IAAwFsG,EAAOC,GA4B5G,MA3CArG,KAAuEggB,EAAe5f,GAkBtF4f,EAAcxf,UkB/3DdC,OlB+3DiC,WkB/3DvB,GAAAC,GAC+CL,KAAKM,MAApDyf,EADA1f,EACA0f,OAAQC,EADR3f,EACQ2f,SAAUF,EADlBzf,EACkByf,YAAaG,EAD/B5f,EAC+B4f,MAAOC,EADtC7f,EACsC6f,KACxCrf,GAAM,iBAAkBkf,GAAnBxZ,OAA8BuZ,GAAa3M,OAAOgN,SAASC,KAAK,IAE3E,OAAAhhB,KAAA,OAAAqB,UACiB,sBADjB,GAAArB,IAEKygB,EAAA9e,GAFLF,GAEgBA,EAFhB8b,QAE6BqD,EAAS1U,MAAMwU,GAF5CvB,SAEoEve,KAAKue,SAFzE8B,UAE8FrgB,KAAKqgB,YAFnGjhB,IAAA,SAAAkhB,QAGoBzf,EAHpBJ,UAGkC,6BAHlC,GAG2Dwf,GACtDC,GAAA9gB,IAAA8gB,QAAAzf,UAAwB,2BAAxB,GAA+Cyf,KlBg5D/CP,GkBv6DkC9f,EAAAkB,EAAMC,gBlB86D3Cuf,IACA,SAAU3hB,EAAQC,EAAqBC,GAE7C,YACqB,IAAIoM,GAA4CpM,EAAoB,GAChE0hB,EAA2C1hB,EAAoB,IAC/D2hB,EAAyD3hB,EAAoB,KAC7E4hB,EAAiD5hB,EAAoB,ImBr7DxF8D,EAAsB,WAC1B,GAAM+d,GAAkBnf,OAAAgf,EAAA,IAMxB,OAJwB,UAAC1d,EAAOxC,GAAR,OACtBuV,aAAc8K,EAAgB7d,EAAOxC,EAAMuV,aAAcvV,EAAMwV,cAM7D9S,EAAqB,SAAA3B,GAAA,OACzB2C,UAAW,SAAC5C,EAASgC,GACnB/B,EAASG,OAAAkf,EAAA,GAAetf,EAASgC,MAIrCvE,GAAA,EAAe2C,OAAA0J,EAAA,SAAQtI,EAAqBI,GAAoByd,EAAA,InBm8D1DG,IACA,SAAUhiB,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOgiB,IAC9E,IA2BjB5hB,GAAQ8F,EA3Ba5F,EAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFG,EAAqER,EAAoB,GACzFS,EAA6ET,EAAoBO,EAAEC,GACnGE,EAAgFV,EAAoB,GACpGW,EAAwFX,EAAoBO,EAAEG,GAC9GE,EAA+DZ,EAAoB,GACnFa,EAAuEb,EAAoBO,EAAEK,GAC7FE,EAAsCd,EAAoB,GAE1DgiB,GAD8ChiB,EAAoBO,EAAEO,GACzBd,EAAoB,IAC/DiiB,EAAmDjiB,EAAoBO,EAAEyhB,GACzEE,EAA0DliB,EAAoB,IAC9EmiB,EAAkEniB,EAAoBO,EAAE2hB,GACxFE,EAA6DpiB,EAAoB,KACjFqiB,EAA8DriB,EAAoB,KAClFsiB,EAA2CtiB,EAAoB,GAC/DuiB,EAAuDviB,EAAoB,KAC3EwiB,EAAgExiB,EAAoB,IACpFyiB,EAAwEziB,EAAoBO,EAAEiiB,GAC9FE,EAA+C1iB,EAAoB,KoBv+DvE+hB,GpBw+D2D/hB,EAAoBO,EAAEmiB,GAkBlFzc,EAAS9F,EAAS,SAAUoZ,GAG9C,QAASwI,KACP,GAAI3hB,GAAO6G,EAAOC,CAElBzG,KAA6ES,KAAM6gB,EAEnF,KAAK,GAAI5a,GAAO/F,UAAUgG,OAAQC,EAAOC,MAAMH,GAAOI,EAAO,EAAGA,EAAOJ,EAAMI,IAC3EF,EAAKE,GAAQnG,UAAUmG,EAGzB,OAAenH,GAAS6G,EAAQtG,IAAwFO,KAAMqY,EAAsB/R,KAAKrG,MAAMoY,GAAwBrY,MAAMuG,OAAOJ,KAAiBJ,EoBx/DvNgP,aAAe,WAAM,GAAA9H,GACgBlH,EAAKzF,MAAhCuV,EADW5I,EACX4I,cACRE,EAFmB9I,EACG8I,UACbF,EAAarS,IAAI,QpB4/DvBuC,EoBz/DLoP,eAAiB,WAAM,GAAAsM,GACgB1b,EAAKzF,MAAlCuV,EADa4L,EACb5L,cACRG,EAFqByL,EACCzL,YACXH,EAAarS,IAAI,QpB6/DzBuC,EoB1/DL2b,WAAa,WAAM,GACT7L,GAAiB9P,EAAKzF,MAAtBuV,YAEJA,GAAarS,IAAI,UACnBuC,EAAK6E,QAAQxH,OAAOue,QAAQzS,KAA5B,aAA8C2G,EAAarS,IAAI,WAE/DuC,EAAK6b,qBpB6/DJ7b,EoBz/DL6b,kBAAoB,WAAM,GAChB/L,GAAiB9P,EAAKzF,MAAtBuV,YACR9P,GAAK6E,QAAQxH,OAAOue,QAAQzS,KAA5B,aAA8C2G,EAAavK,OAAO,UAAW,SpB2/D1EvF,EoBx/DL8b,cAAgB,SAAAte,GACdA,EAAE0E,gBADiB,IAAA6Z,GAGiB/b,EAAKzF,MAAjCuV,EAHWiM,EAGXjM,cACR7R,EAJmB8d,EAGG9d,WACZ6R,EAAarS,IAAI,WAAYuC,EAAK6E,QAAQxH,OAAOue,UpB29DpD3b,EAiCJ9G,EAAQO,IAAwFsG,EAAOC,GA4H5G,MAxKArG,KAAuEkhB,EAAcxI,GA+CrFwI,EAAa1gB,UoB5/Db4hB,YpB4/DqC,WoB3/DnC,OACEC,OAAQhiB,KAAK+U,aACbkN,SAAUjiB,KAAKmV,eACf+M,KAAMliB,KAAK0hB,WACXS,YAAaniB,KAAK4hB,kBAClBQ,QAASpiB,KAAK6hB,cACdQ,MAAOriB,KAAK6hB,gBpBggEhBhB,EAAa1gB,UoB5/DbmiB,apB4/DsC,SoB5/DxBlhB,EAASmhB,GACrB,MAAAnjB,KACGoiB,EAAA,SADHgB,SACqBxiB,KAAK+hB,mBAD1B,GAAA3iB,IAAA,OAAAqB,UAEmB,6CAFnByN,SAEyE,SAFzE,GAAA9O,IAAA,OAAAqB,UAGqB,6BAHrB,GAAArB,IAAA,OAAAqB,UAIuB,4CAJvB,GAAArB,IAAA,KAAAqB,UAKuB,2BALvBrB,IAQSgiB,EAAA,GARTvgB,GAQ6B,sBAR7BC,eAQkE,sBARlEyD,QAQkGC,KAAM+d,MARxGnjB,IAWO+hB,EAAA,GAXPtgB,GAW4BO,EAAQoC,IAAI,MAXxCif,UAWyD,EAXzDrU,OAWwEpO,KAAKM,MAAM8N,YpBugErFyS,EAAa1gB,UoBjgEbuiB,cpBigEuC,SoBjgExB7M,GACb,MAAAzW,KACG8hB,EAAA,GADHrgB,GAEQgV,EAAarS,IAAI,UAFzBmf,aAAA,EAAAvU,OAIYpO,KAAKM,MAAM8N,OAJvB4H,WAKgBhW,KAAKmV,eALrBY,SAMc/V,KAAK+U,gBpBogErB8L,EAAa1gB,UoB//DbyiB,gBpB+/DyC,SoB//DxB/M,EAAc0M,GAC7B,MAAAnjB,KACGoiB,EAAA,SADHgB,SACqBxiB,KAAK+hB,mBAD1B,GAAA3iB,IAAA,OAAAqB,UAEmB,gDAFnByN,SAE4E,SAF5E,GAAA9O,IAAA,OAAAqB,UAGqB,6BAHrB,GAAArB,IAAA,OAAAqB,UAIuB,4CAJvB,GAAArB,IAAA,KAAAqB,UAKuB,gCALvBrB,IAOSgiB,EAAA,GAPTvgB,GAO6B,yBAP7BC,eAOqE,gCAPrEyD,QAO+GC,KAAM+d,MAPrHnjB,IAUO8hB,EAAA,GAVPrgB,GAU2BgV,EAAarS,IAAI,UAV5CpC,QAUgEyU,EAAarS,IAAI,WAVjFqf,OAAA,EAAAF,aAAA,EAAAvU,SAUyHpO,KAAKM,MAAM8N,YpB6gEtIyS,EAAa1gB,UoBvgEb2iB,apBugEsC,SoBvgExBjN,EAAc0M,GAC1B,MAAAnjB,KACGoiB,EAAA,SADHgB,SACqBxiB,KAAK+hB,mBAD1B,GAAA3iB,IAAA,OAAAqB,UAEmB,6CAFnByN,SAEyE,SAFzE,GAAA9O,IAAA,OAAAqB,UAGqB,6BAHrB,GAAArB,IAAA,OAAAqB,UAIuB,4CAJvB,GAAArB,IAAA,KAAAqB,UAKuB,yBALvBrB,IAOSgiB,EAAA,GAPTvgB,GAO6B,sBAP7BC,eAOkE,6BAPlEyD,QAOyGC,KAAM+d,MAP/GnjB,IAUO8hB,EAAA,GAVPrgB,GAU2BgV,EAAarS,IAAI,UAV5CpC,QAUgEyU,EAAarS,IAAI,WAVjFqf,OAAA,EAAAF,aAAA,EAAAvU,OAUuHpO,KAAKM,MAAM8N,YpBqhEpIyS,EAAa1gB,UoB/gEbC,OpB+gEgC,WoB/gEtB,GACAyV,GAAiB7V,KAAKM,MAAtBuV,aACFzU,EAAmByU,EAAarS,IAAI,WACpCuf,GAAqBC,OAAQ5hB,EAAQoC,IAAI,sBACzC+e,EAAAnjB,IAAAmjB,gBAAAnjB,IAAyBiiB,EAAA,GAAzB5gB,UAA6C,6BAA7CuY,KAAgF5X,EAAQoC,IAAI,OAA5FyP,MAA2G7R,EAAQoC,IAAI,QAAvHyV,GAAA,aAAiJ7X,EAAQoC,IAAI,MAA7Jyf,wBAA+LF,IAErM,QAAOlN,EAAarS,IAAI,SACxB,IAAK,SACH,MAAOxD,MAAKsiB,aAAalhB,EAASmhB,EACpC,KAAK,UACH,MAAOviB,MAAK0iB,cAAc7M,EAC5B,KAAK,YACH,MAAO7V,MAAK4iB,gBAAgB/M,EAAc0M,EAC5C,KAAK,SACH,MAAOviB,MAAK8iB,aAAajN,EAAc0M,GAGzC,MAAO,OpByhEF1B,GoBnqEiCU,EAAAxgB,GpBoqEkC9B,EoBlqEnE8L,cACL3H,OAAQ2d,EAAAhgB,EAAUiK,QpBmqEnB/L,EoBhqEMia,WACLrD,aAAcoL,EAAAlgB,EAAmByJ,IAAI2O,WACrC/K,OAAQ2S,EAAAhgB,EAAUsY,KAClBtD,SAAUgL,EAAAhgB,EAAUqY,KAAKD,WACzBnD,WAAY+K,EAAAhgB,EAAUqY,KAAKD,WAC3BnV,UAAW+c,EAAAhgB,EAAUqY,KAAKD,YpBiqE3BpU,IAKGme,IACA,SAAUtkB,EAAQC,EAAqBC,GAE7C,YACqB,IAAIoM,GAA4CpM,EAAoB,GAChEqkB,EAA2CrkB,EAAoB,GAC/DskB,EAA4DtkB,EAAoB,KAChFukB,EAAkDvkB,EAAoB,IACtEwkB,EAAuDxkB,EAAoB,KAC3EykB,EAA4DzkB,EAAoB,KAChF0kB,EAA+C1kB,EAAoB,IqB7rEtF0D,EAAWhB,OAAA2hB,EAAA,IACfM,cAAA5iB,GAAA,mCAAAC,eAAA,sEACA4iB,cAAA7iB,GAAA,sBAAAC,eAAA,yBAGI8S,EAAkB,SAAA9Q,GAAA,OACtBkd,SAAUld,EAAMwI,OAAO,WAAY,kBACnCqY,aAAc7gB,EAAMU,IAAI,wBAGpBR,EAAqB,SAAC3B,EAAD4B,GAAA,GAAaC,GAAbD,EAAaC,IAAb,QAEzBqb,SAFkD,SAExCqF,EAAMjH,GAEZtb,EADc,SAAZuiB,EAAK,GACEpiB,OAAA+hB,EAAA,GAAwBK,EAAK/T,MAAM,GAAI8M,GAEvCnb,OAAA6hB,EAAA,IAAe,iBAAf9c,OAAmCqd,GAAOjH,KAIvDkH,QAVkD,WAWhDxiB,EAASG,OAAAgiB,EAAA,GAAU,WACjB5f,QAASV,EAAKW,cAAcrB,EAASihB,cACrC3f,QAASZ,EAAKW,cAAcrB,EAASkhB,cACrC3f,UAAW,iBAAM1C,GAASG,OAAA8hB,EAAA,YAMhCzkB,GAAA,EAAe2C,OAAA2hB,EAAA,GAAW3hB,OAAA0J,EAAA,SAAQ0I,EAAiB5Q,GAAoBogB,EAAA,KrBotEjEU,IACA,SAAUllB,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOklB,IAC9E,IAAI5kB,GAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFG,EAAqER,EAAoB,GACzFS,EAA6ET,EAAoBO,EAAEC,GACnGE,EAAgFV,EAAoB,GACpGW,EAAwFX,EAAoBO,EAAEG,GAC9GE,EAA+DZ,EAAoB,GACnFa,EAAuEb,EAAoBO,EAAEK,GAC7FE,EAAsCd,EAAoB,GAC1De,EAA8Cf,EAAoBO,EAAEO,GACpEE,EAA2ChB,EAAoB,GAC/DklB,EAAqDllB,EAAoB,KACzEmlB,EAAgDnlB,EAAoB,KsBpwExEilB,EtB+wEA,SAAUhkB,GAG7B,QAASgkB,KACP,GAAI7kB,GAAO6G,EAAOC,CAElBzG,KAA6ES,KAAM+jB,EAEnF,KAAK,GAAI9d,GAAO/F,UAAUgG,OAAQC,EAAOC,MAAMH,GAAOI,EAAO,EAAGA,EAAOJ,EAAMI,IAC3EF,EAAKE,GAAQnG,UAAUmG,EAGzB,OAAenH,GAAS6G,EAAQtG,IAAwFO,KAAMD,EAAqBuG,KAAKrG,MAAMF,GAAuBC,MAAMuG,OAAOJ,KAAiBJ,EsBlxErNme,aAAe,SAACN,EAAMjH,GACpB5W,EAAKzF,MAAMie,UAAU,QAArBhY,OAAgCqd,GAAOjH,ItBixEhC3W,EAEJ9G,EAAQO,IAAwFsG,EAAOC,GAyL5G,MAtMArG,KAAuEokB,EAAgBhkB,GAgBvFgkB,EAAe5jB,UsBnxEfC,OtBmxEkC,WsBnxExB,GAAAC,GAC8CL,KAAKM,MAAnD0f,EADA3f,EACA2f,SAAU2D,EADVtjB,EACUsjB,aAAcpF,EADxBle,EACwBke,SAAUsF,EADlCxjB,EACkCwjB,QAEpCM,EAAA/kB,IAAYU,EAAA,GAAZe,GAAgC,sCAAhCC,eAAqF,0BACrFsjB,EAAAhlB,IAAYU,EAAA,GAAZe,GAAgC,qCAAhCC,eAAoF,mBACpFujB,EAAAjlB,IAAYU,EAAA,GAAZe,GAAgC,sCAAhCC,eAAqF,eAErFwjB,EAAmBX,EAAangB,IAAI,mBAAqBmgB,EAAangB,IAAI,gBAC1E+gB,EAAUD,GAAAllB,IAAqBU,EAAA,GAArBe,GAAyC,qCAAzCC,eAA6F,uBACvG0jB,EAAWF,GAAAllB,IAAqBU,EAAA,GAArBe,GAAyC,0CAAzCC,eAAkG,eAEnH,OAAA1B,KAAA,gBAAAA,IAAA,OAAAqB,UAEmB,4BAFnB,GAAArB,IAGO4kB,EAAA,GAHPpjB,QAGkCijB,KAHlCzkB,IAAA,OAAAmL,KAMc,QANdkU,kBAMsC,4BANtC,GAAArf,IAAA,QAAAyB,GAOe,uBAPfJ,UAOgD,gCAPhD,GAAArB,IAO4EU,EAAA,GAP5Ee,GAOgG,uCAPhGC,eAOsJ,oBAPtJ1B,IAAA,OAAAqB,UASqB,4BATrB,GAAArB,IAUS6kB,EAAA,GAVTlE,OAU8B,wBAV9BC,SAUgEA,EAVhEF,aAUwF,SAAU,UAVlGvB,SAUuHA,EAVvH0B,MAUwIkE,IAC/HG,GAAAllB,IAAqB6kB,EAAA,GAArBlE,OAA0C,qBAA1CC,SAAyE2D,EAAzE7D,aAAqG,SAAU,UAA/GI,KAAgIsE,EAAhIjG,SAAoJve,KAAKkkB,aAAzJjE,MAA8KsE,IAXvLnlB,IAYS6kB,EAAA,GAZTlE,OAY8B,gBAZ9BC,SAYwDA,EAZxDF,aAYgF,QAAS,UAZzFvB,SAY8GA,EAZ9G0B,MAY+HmE,IAZ/HhlB,IAaS6kB,EAAA,GAbTlE,OAa8B,gBAb9BC,SAawDA,EAbxDF,aAagF,SAAU,UAb1FvB,SAa+GA,EAb/G0B,MAagIoE,MAbhIjlB,IAAA,OAAAmL,KAiBc,QAjBdkU,kBAiBsC,+BAjBtC,GAAArf,IAAA,QAAAyB,GAkBe,0BAlBfJ,UAkBmD,gCAlBnD,GAAArB,IAkB+EU,EAAA,GAlB/Ee,GAkBmG,0CAlBnGC,eAkB4J,iBAlB5J1B,IAAA,OAAAqB,UAoBqB,4BApBrB,GAAArB,IAqBS6kB,EAAA,GArBTlE,OAqB8B,wBArB9BC,SAqBgEA,EArBhEF,aAqBwF,SAAU,aArBlGvB,SAqB0HA,EArB1H0B,MAqB2IkE,IAClIG,GAAAllB,IAAqB6kB,EAAA,GAArBlE,OAA0C,qBAA1CC,SAAyE2D,EAAzE7D,aAAqG,SAAU,aAA/GI,KAAmIsE,EAAnIjG,SAAuJve,KAAKkkB,aAA5JjE,MAAiLsE,IAtB1LnlB,IAuBS6kB,EAAA,GAvBTlE,OAuB8B,gBAvB9BC,SAuBwDA,EAvBxDF,aAuBgF,QAAS,aAvBzFvB,SAuBiHA,EAvBjH0B,MAuBkImE,IAvBlIhlB,IAwBS6kB,EAAA,GAxBTlE,OAwB8B,gBAxB9BC,SAwBwDA,EAxBxDF,aAwBgF,SAAU,aAxB1FvB,SAwBkHA,EAxBlH0B,MAwBmIoE,MAxBnIjlB,IAAA,OAAAmL,KA4Bc,QA5BdkU,kBA4BsC,6BA5BtC,GAAArf,IAAA,QAAAyB,GA6Be,wBA7BfJ,UA6BiD,gCA7BjD,GAAArB,IA6B6EU,EAAA,GA7B7Ee,GA6BiG,wCA7BjGC,eA6BwJ,eA7BxJ1B,IAAA,OAAAqB,UA+BqB,4BA/BrB,GAAArB,IAgCS6kB,EAAA,GAhCTlE,OAgC8B,wBAhC9BC,SAgCgEA,EAhChEF,aAgCwF,SAAU,WAhClGvB,SAgCwHA,EAhCxH0B,MAgCyIkE,IAChIG,GAAAllB,IAAqB6kB,EAAA,GAArBlE,OAA0C,qBAA1CC,SAAyE2D,EAAzE7D,aAAqG,SAAU,WAA/GI,KAAiIsE,EAAjIjG,SAAqJve,KAAKkkB,aAA1JjE,MAA+KsE,IAjCxLnlB,IAkCS6kB,EAAA,GAlCTlE,OAkC8B,gBAlC9BC,SAkCwDA,EAlCxDF,aAkCgF,QAAS,WAlCzFvB,SAkC+GA,EAlC/G0B,MAkCgImE,IAlChIhlB,IAmCS6kB,EAAA,GAnCTlE,OAmC8B,gBAnC9BC,SAmCwDA,EAnCxDF,aAmCgF,SAAU,WAnC1FvB,SAmCgHA,EAnChH0B,MAmCiIoE,MAnCjIjlB,IAAA,OAAAmL,KAuCc,QAvCdkU,kBAuCsC,4BAvCtC,GAAArf,IAAA,QAAAyB,GAwCe,uBAxCfJ,UAwCgD,gCAxChD,GAAArB,IAwC4EU,EAAA,GAxC5Ee,GAwCgG,uCAxChGC,eAwCsJ,aAxCtJ1B,IAAA,OAAAqB,UA0CqB,4BA1CrB,GAAArB,IA2CS6kB,EAAA,GA3CTlE,OA2C8B,wBA3C9BC,SA2CgEA,EA3ChEF,aA2CwF,SAAU,UA3ClGvB,SA2CuHA,EA3CvH0B,MA2CwIkE,IAC/HG,GAAAllB,IAAqB6kB,EAAA,GAArBlE,OAA0C,qBAA1CC,SAAyE2D,EAAzE7D,aAAqG,SAAU,UAA/GI,KAAgIsE,EAAhIjG,SAAoJve,KAAKkkB,aAAzJjE,MAA8KsE,IA5CvLnlB,IA6CS6kB,EAAA,GA7CTlE,OA6C8B,gBA7C9BC,SA6CwDA,EA7CxDF,aA6CgF,QAAS,UA7CzFvB,SA6C8GA,EA7C9G0B,MA6C+HmE,IA7C/HhlB,IA8CS6kB,EAAA,GA9CTlE,OA8C8B,gBA9C9BC,SA8CwDA,EA9CxDF,aA8CgF,SAAU,UA9C1FvB,SA8C+GA,EA9C/G0B,MA8CgIoE,QtBg5E3HN,GsBt9EmClkB,EAAAkB,EAAMC,gBtB69E5CyjB,IACA,SAAU7lB,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAO6lB,IAC9E,IAAIvlB,GAA0DL,EAAoB,GAC9EM,EAAkEN,EAAoBO,EAAEF,GACxFG,EAAqER,EAAoB,GACzFS,EAA6ET,EAAoBO,EAAEC,GACnGE,EAAgFV,EAAoB,GACpGW,EAAwFX,EAAoBO,EAAEG,GAC9GE,EAA+DZ,EAAoB,GACnFa,EAAuEb,EAAoBO,EAAEK,GAC7FE,EAAsCd,EAAoB,GAC1De,EAA8Cf,EAAoBO,EAAEO,GACpEE,EAA2ChB,EAAoB,GuB/+EnE4lB,EvBw/EG,SAAU3kB,GAGhC,QAAS2kB,KAGP,MAFAnlB,KAA6ES,KAAM0kB,GAE5EjlB,IAAwFO,KAAMD,EAAqBE,MAAMD,KAAME,YAgBxI,MArBAP,KAAuE+kB,EAAmB3kB,GAQ1F2kB,EAAkBvkB,UuB3/ElBC,OvB2/EqC,WuB1/EnC,MAAAhB,KAAA,UAAAqB,UACoB,sCADpByN,SACmE,IADnEtN,QACgFZ,KAAKM,MAAMM,aAD3F,GAAAxB,IAAA,KAAAqB,UACiH,iBADjH,IAAArB,IACoIU,EAAA,GADpIe,GACwJ,sBADxJC,eAC6L,0BvBsgFxL4jB,GuB9gFsC7kB,EAAAkB,EAAMC","file":"features/notifications.js","sourcesContent":["webpackJsonp([5],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 805:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Notifications; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_notifications__ = __webpack_require__(101);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_notification_container__ = __webpack_require__(955);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__containers_column_settings_container__ = __webpack_require__(957);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__components_scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__components_load_more__ = __webpack_require__(149);\n\n\n\n\n\n\nvar _dec, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n title: {\n 'id': 'column.notifications',\n 'defaultMessage': 'Notifications'\n }\n});\n\nvar getNotifications = Object(__WEBPACK_IMPORTED_MODULE_14_reselect__[\"createSelector\"])([function (state) {\n return Object(__WEBPACK_IMPORTED_MODULE_15_immutable__[\"List\"])(state.getIn(['settings', 'notifications', 'shows']).filter(function (item) {\n return !item;\n }).keys());\n}, function (state) {\n return state.getIn(['notifications', 'items']);\n}], function (excludedTypes, notifications) {\n return notifications.filterNot(function (item) {\n return item !== null && excludedTypes.includes(item.get('type'));\n });\n});\n\nvar LoadGap = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadGap, _React$PureComponent);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17__components_load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n notifications: getNotifications(state),\n isLoading: state.getIn(['notifications', 'isLoading'], true),\n isUnread: state.getIn(['notifications', 'unread']) > 0,\n hasMore: state.getIn(['notifications', 'hasMore'])\n };\n};\n\nvar Notifications = (_dec = Object(__WEBPACK_IMPORTED_MODULE_6_react_redux__[\"connect\"])(mapStateToProps), _dec(_class2 = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Notifications, _React$PureComponent2);\n\n function Notifications() {\n var _temp2, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Notifications);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.handleLoadGap = function (maxId) {\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"h\" /* expandNotifications */])({ maxId: maxId }));\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n var last = _this2.props.notifications.last();\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"h\" /* expandNotifications */])({ maxId: last && last.get('id') }));\n }, 300, { leading: true }), _this2.handleScrollToTop = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"i\" /* scrollTopNotifications */])(true));\n }, 100), _this2.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"i\" /* scrollTopNotifications */])(false));\n }, 100), _this2.handlePin = function () {\n var _this2$props = _this2.props,\n columnId = _this2$props.columnId,\n dispatch = _this2$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('NOTIFICATIONS', {}));\n }\n }, _this2.handleMove = function (dir) {\n var _this2$props2 = _this2.props,\n columnId = _this2$props2.columnId,\n dispatch = _this2$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this2.handleHeaderClick = function () {\n _this2.column.scrollTop();\n }, _this2.setColumnRef = function (c) {\n _this2.column = c;\n }, _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.notifications.findIndex(function (item) {\n return item !== null && item.get('id') === id;\n }) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.notifications.findIndex(function (item) {\n return item !== null && item.get('id') === id;\n }) + 1;\n _this2._selectChild(elementIndex);\n }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n Notifications.prototype.componentWillUnmount = function componentWillUnmount() {\n this.handleLoadOlder.cancel();\n this.handleScrollToTop.cancel();\n this.handleScroll.cancel();\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"i\" /* scrollTopNotifications */])(false));\n };\n\n Notifications.prototype._selectChild = function _selectChild(index) {\n var element = this.column.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n Notifications.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n intl = _props.intl,\n notifications = _props.notifications,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n isUnread = _props.isUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn,\n hasMore = _props.hasMore;\n\n var pinned = !!columnId;\n var emptyMessage = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.notifications',\n defaultMessage: 'You don\\'t have any notifications yet. Interact with others to start the conversation.'\n });\n\n var scrollableContent = null;\n\n if (isLoading && this.scrollableContent) {\n scrollableContent = this.scrollableContent;\n } else if (notifications.size > 0 || hasMore) {\n scrollableContent = notifications.map(function (item, index) {\n return item === null ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? notifications.getIn([index - 1, 'id']) : null,\n onClick: _this3.handleLoadGap\n }, 'gap:' + notifications.getIn([index + 1, 'id'])) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_notification_container__[\"a\" /* default */], {\n notification: item,\n accountId: item.get('account'),\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, item.get('id'));\n });\n } else {\n scrollableContent = null;\n }\n\n this.scrollableContent = scrollableContent;\n\n var scrollContainer = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__components_scrollable_list__[\"a\" /* default */], {\n scrollKey: 'notifications-' + columnId,\n trackScroll: !pinned,\n isLoading: isLoading,\n hasMore: hasMore,\n emptyMessage: emptyMessage,\n onLoadMore: this.handleLoadOlder,\n onScrollToTop: this.handleScrollToTop,\n onScroll: this.handleScroll,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableContent);\n\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_7__components_column__[\"a\" /* default */],\n { ref: this.setColumnRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column_header__[\"a\" /* default */], {\n icon: 'bell',\n active: isUnread,\n title: intl.formatMessage(messages.title),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__containers_column_settings_container__[\"a\" /* default */], {})),\n scrollContainer\n );\n };\n\n return Notifications;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent), _class3.defaultProps = {\n trackScroll: true\n}, _temp3)) || _class2) || _class2);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 856:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n }\n }return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n };\n}();\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = __webpack_require__(10);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = __webpack_require__(5);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _check = __webpack_require__(858);\n\nvar _check2 = _interopRequireDefault(_check);\n\nvar _x = __webpack_require__(859);\n\nvar _x2 = _interopRequireDefault(_x);\n\nvar _util = __webpack_require__(860);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nfunction _objectWithoutProperties(obj, keys) {\n var target = {};for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];\n }return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nvar Toggle = function (_PureComponent) {\n _inherits(Toggle, _PureComponent);\n\n function Toggle(props) {\n _classCallCheck(this, Toggle);\n\n var _this = _possibleConstructorReturn(this, (Toggle.__proto__ || Object.getPrototypeOf(Toggle)).call(this, props));\n\n _this.handleClick = _this.handleClick.bind(_this);\n _this.handleTouchStart = _this.handleTouchStart.bind(_this);\n _this.handleTouchMove = _this.handleTouchMove.bind(_this);\n _this.handleTouchEnd = _this.handleTouchEnd.bind(_this);\n _this.handleFocus = _this.handleFocus.bind(_this);\n _this.handleBlur = _this.handleBlur.bind(_this);\n _this.previouslyChecked = !!(props.checked || props.defaultChecked);\n _this.state = {\n checked: !!(props.checked || props.defaultChecked),\n hasFocus: false\n };\n return _this;\n }\n\n _createClass(Toggle, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if ('checked' in nextProps) {\n this.setState({ checked: !!nextProps.checked });\n }\n }\n }, {\n key: 'handleClick',\n value: function handleClick(event) {\n var checkbox = this.input;\n if (event.target !== checkbox && !this.moved) {\n this.previouslyChecked = checkbox.checked;\n event.preventDefault();\n checkbox.focus();\n checkbox.click();\n return;\n }\n\n var checked = this.props.hasOwnProperty('checked') ? this.props.checked : checkbox.checked;\n\n this.setState({ checked: checked });\n }\n }, {\n key: 'handleTouchStart',\n value: function handleTouchStart(event) {\n this.startX = (0, _util.pointerCoord)(event).x;\n this.activated = true;\n }\n }, {\n key: 'handleTouchMove',\n value: function handleTouchMove(event) {\n if (!this.activated) return;\n this.moved = true;\n\n if (this.startX) {\n var currentX = (0, _util.pointerCoord)(event).x;\n if (this.state.checked && currentX + 15 < this.startX) {\n this.setState({ checked: false });\n this.startX = currentX;\n this.activated = true;\n } else if (currentX - 15 > this.startX) {\n this.setState({ checked: true });\n this.startX = currentX;\n this.activated = currentX < this.startX + 5;\n }\n }\n }\n }, {\n key: 'handleTouchEnd',\n value: function handleTouchEnd(event) {\n if (!this.moved) return;\n var checkbox = this.input;\n event.preventDefault();\n\n if (this.startX) {\n var endX = (0, _util.pointerCoord)(event).x;\n if (this.previouslyChecked === true && this.startX + 4 > endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: false });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n } else if (this.startX - 4 < endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: true });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n }\n\n this.activated = false;\n this.startX = null;\n this.moved = false;\n }\n }\n }, {\n key: 'handleFocus',\n value: function handleFocus(event) {\n var onFocus = this.props.onFocus;\n\n if (onFocus) {\n onFocus(event);\n }\n\n this.setState({ hasFocus: true });\n }\n }, {\n key: 'handleBlur',\n value: function handleBlur(event) {\n var onBlur = this.props.onBlur;\n\n if (onBlur) {\n onBlur(event);\n }\n\n this.setState({ hasFocus: false });\n }\n }, {\n key: 'getIcon',\n value: function getIcon(type) {\n var icons = this.props.icons;\n\n if (!icons) {\n return null;\n }\n return icons[type] === undefined ? Toggle.defaultProps.icons[type] : icons[type];\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n className = _props.className,\n _icons = _props.icons,\n inputProps = _objectWithoutProperties(_props, ['className', 'icons']);\n\n var classes = (0, _classnames2.default)('react-toggle', {\n 'react-toggle--checked': this.state.checked,\n 'react-toggle--focus': this.state.hasFocus,\n 'react-toggle--disabled': this.props.disabled\n }, className);\n\n return _react2.default.createElement('div', { className: classes,\n onClick: this.handleClick,\n onTouchStart: this.handleTouchStart,\n onTouchMove: this.handleTouchMove,\n onTouchEnd: this.handleTouchEnd }, _react2.default.createElement('div', { className: 'react-toggle-track' }, _react2.default.createElement('div', { className: 'react-toggle-track-check' }, this.getIcon('checked')), _react2.default.createElement('div', { className: 'react-toggle-track-x' }, this.getIcon('unchecked'))), _react2.default.createElement('div', { className: 'react-toggle-thumb' }), _react2.default.createElement('input', _extends({}, inputProps, {\n ref: function ref(_ref) {\n _this2.input = _ref;\n },\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n className: 'react-toggle-screenreader-only',\n type: 'checkbox' })));\n }\n }]);\n\n return Toggle;\n}(_react.PureComponent);\n\nexports.default = Toggle;\n\nToggle.displayName = 'Toggle';\n\nToggle.defaultProps = {\n icons: {\n checked: _react2.default.createElement(_check2.default, null),\n unchecked: _react2.default.createElement(_x2.default, null)\n }\n};\n\nToggle.propTypes = {\n checked: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n defaultChecked: _propTypes2.default.bool,\n onChange: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n className: _propTypes2.default.string,\n name: _propTypes2.default.string,\n value: _propTypes2.default.string,\n id: _propTypes2.default.string,\n 'aria-labelledby': _propTypes2.default.string,\n 'aria-label': _propTypes2.default.string,\n icons: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({\n checked: _propTypes2.default.node,\n unchecked: _propTypes2.default.node\n })])\n};\n\n/***/ }),\n\n/***/ 858:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nexports.default = function () {\n return _react2.default.createElement('svg', { width: '14', height: '11', viewBox: '0 0 14 11' }, _react2.default.createElement('title', null, 'switch-check'), _react2.default.createElement('path', { d: 'M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0', fill: '#fff', fillRule: 'evenodd' }));\n};\n\n/***/ }),\n\n/***/ 859:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nexports.default = function () {\n return _react2.default.createElement('svg', { width: '10', height: '10', viewBox: '0 0 10 10' }, _react2.default.createElement('title', null, 'switch-x'), _react2.default.createElement('path', { d: 'M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12', fill: '#fff', fillRule: 'evenodd' }));\n};\n\n/***/ }),\n\n/***/ 860:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pointerCoord = pointerCoord;\n// Copyright 2015-present Drifty Co.\n// http://drifty.com/\n// from: https://github.com/driftyco/ionic/blob/master/src/util/dom.ts\n\nfunction pointerCoord(event) {\n // get coordinates for either a mouse click\n // or a touch depending on the given event\n if (event) {\n var changedTouches = event.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n var touch = changedTouches[0];\n return { x: touch.clientX, y: touch.clientY };\n }\n var pageX = event.pageX;\n if (pageX !== undefined) {\n return { x: pageX, y: event.pageY };\n }\n }\n return { x: 0, y: 0 };\n}\n\n/***/ }),\n\n/***/ 871:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingToggle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_toggle__ = __webpack_require__(856);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_toggle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_toggle__);\n\n\n\n\n\n\n\n\nvar SettingToggle = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingToggle, _React$PureComponent);\n\n function SettingToggle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingToggle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onChange = function (_ref) {\n var target = _ref.target;\n\n _this.props.onChange(_this.props.settingPath, target.checked);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingToggle.prototype.render = function render() {\n var _props = this.props,\n prefix = _props.prefix,\n settings = _props.settings,\n settingPath = _props.settingPath,\n label = _props.label,\n meta = _props.meta;\n\n var id = ['setting-toggle', prefix].concat(settingPath).filter(Boolean).join('-');\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'setting-toggle'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_toggle___default.a, {\n id: id,\n checked: settings.getIn(settingPath),\n onChange: this.onChange,\n onKeyDown: this.onKeyDown\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {\n htmlFor: id,\n className: 'setting-toggle__label'\n }, void 0, label), meta && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'setting-meta__label'\n }, void 0, meta));\n };\n\n return SettingToggle;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 955:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_notification__ = __webpack_require__(956);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_compose__ = __webpack_require__(18);\n\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getNotification = Object(__WEBPACK_IMPORTED_MODULE_1__selectors__[\"d\" /* makeGetNotification */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n notification: getNotification(state, props.notification, props.accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_notification__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 956:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Notification; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_account_container__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_hotkeys__ = __webpack_require__(157);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_hotkeys___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar Notification = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Notification, _ImmutablePureCompone);\n\n function Notification() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Notification);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleMoveUp = function () {\n var _this$props = _this.props,\n notification = _this$props.notification,\n onMoveUp = _this$props.onMoveUp;\n\n onMoveUp(notification.get('id'));\n }, _this.handleMoveDown = function () {\n var _this$props2 = _this.props,\n notification = _this$props2.notification,\n onMoveDown = _this$props2.onMoveDown;\n\n onMoveDown(notification.get('id'));\n }, _this.handleOpen = function () {\n var notification = _this.props.notification;\n\n\n if (notification.get('status')) {\n _this.context.router.history.push('/statuses/' + notification.get('status'));\n } else {\n _this.handleOpenProfile();\n }\n }, _this.handleOpenProfile = function () {\n var notification = _this.props.notification;\n\n _this.context.router.history.push('/accounts/' + notification.getIn(['account', 'id']));\n }, _this.handleMention = function (e) {\n e.preventDefault();\n\n var _this$props3 = _this.props,\n notification = _this$props3.notification,\n onMention = _this$props3.onMention;\n\n onMention(notification.get('account'), _this.context.router.history);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Notification.prototype.getHandlers = function getHandlers() {\n return {\n moveUp: this.handleMoveUp,\n moveDown: this.handleMoveDown,\n open: this.handleOpen,\n openProfile: this.handleOpenProfile,\n mention: this.handleMention,\n reply: this.handleMention\n };\n };\n\n Notification.prototype.renderFollow = function renderFollow(account, link) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__[\"HotKeys\"], {\n handlers: this.getHandlers()\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification notification-follow focusable',\n tabIndex: '0'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__favourite-icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-user-plus'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notification.follow',\n defaultMessage: '{name} followed you',\n values: { name: link }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_account_container__[\"a\" /* default */], {\n id: account.get('id'),\n withNote: false,\n hidden: this.props.hidden\n })));\n };\n\n Notification.prototype.renderMention = function renderMention(notification) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_status_container__[\"a\" /* default */], {\n id: notification.get('status'),\n withDismiss: true,\n hidden: this.props.hidden,\n onMoveDown: this.handleMoveDown,\n onMoveUp: this.handleMoveUp\n });\n };\n\n Notification.prototype.renderFavourite = function renderFavourite(notification, link) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__[\"HotKeys\"], {\n handlers: this.getHandlers()\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification notification-favourite focusable',\n tabIndex: '0'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__favourite-icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-star star-icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notification.favourite',\n defaultMessage: '{name} favourited your status',\n values: { name: link }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_status_container__[\"a\" /* default */], {\n id: notification.get('status'),\n account: notification.get('account'),\n muted: true,\n withDismiss: true,\n hidden: !!this.props.hidden\n })));\n };\n\n Notification.prototype.renderReblog = function renderReblog(notification, link) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__[\"HotKeys\"], {\n handlers: this.getHandlers()\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification notification-reblog focusable',\n tabIndex: '0'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__favourite-icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-retweet'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notification.reblog',\n defaultMessage: '{name} boosted your status',\n values: { name: link }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_status_container__[\"a\" /* default */], {\n id: notification.get('status'),\n account: notification.get('account'),\n muted: true,\n withDismiss: true,\n hidden: this.props.hidden\n })));\n };\n\n Notification.prototype.render = function render() {\n var notification = this.props.notification;\n\n var account = notification.get('account');\n var displayNameHtml = { __html: account.get('display_name_html') };\n var link = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_permalink__[\"a\" /* default */], {\n className: 'notification__display-name',\n href: account.get('url'),\n title: account.get('acct'),\n to: '/accounts/' + account.get('id'),\n dangerouslySetInnerHTML: displayNameHtml\n }));\n\n switch (notification.get('type')) {\n case 'follow':\n return this.renderFollow(account, link);\n case 'mention':\n return this.renderMention(notification);\n case 'favourite':\n return this.renderFavourite(notification, link);\n case 'reblog':\n return this.renderReblog(notification, link);\n }\n\n return null;\n };\n\n return Notification;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n notification: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool,\n onMoveUp: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onMoveDown: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 957:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_column_settings__ = __webpack_require__(958);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_settings__ = __webpack_require__(57);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__actions_notifications__ = __webpack_require__(101);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_push_notifications__ = __webpack_require__(158);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_modal__ = __webpack_require__(26);\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_1_react_intl__[\"f\" /* defineMessages */])({\n clearMessage: {\n 'id': 'notifications.clear_confirmation',\n 'defaultMessage': 'Are you sure you want to permanently clear all your notifications?'\n },\n clearConfirm: {\n 'id': 'notifications.clear',\n 'defaultMessage': 'Clear notifications'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n settings: state.getIn(['settings', 'notifications']),\n pushSettings: state.get('push_notifications')\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onChange: function onChange(path, checked) {\n if (path[0] === 'push') {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_push_notifications__[\"e\" /* changeAlerts */])(path.slice(1), checked));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_settings__[\"c\" /* changeSetting */])(['notifications'].concat(path), checked));\n }\n },\n onClear: function onClear() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.clearMessage),\n confirm: intl.formatMessage(messages.clearConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_4__actions_notifications__[\"g\" /* clearNotifications */])());\n }\n }));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_column_settings__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 958:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnSettings; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__clear_column_button__ = __webpack_require__(959);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__setting_toggle__ = __webpack_require__(871);\n\n\n\n\n\n\n\n\n\n\nvar ColumnSettings = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnSettings, _React$PureComponent);\n\n function ColumnSettings() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnSettings);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onPushChange = function (path, checked) {\n _this.props.onChange(['push'].concat(path), checked);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnSettings.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n pushSettings = _props.pushSettings,\n onChange = _props.onChange,\n onClear = _props.onClear;\n\n\n var alertStr = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.alert',\n defaultMessage: 'Desktop notifications'\n });\n var showStr = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.show',\n defaultMessage: 'Show in column'\n });\n var soundStr = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.sound',\n defaultMessage: 'Play sound'\n });\n\n var showPushSettings = pushSettings.get('browserSupport') && pushSettings.get('isSubscribed');\n var pushStr = showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.push',\n defaultMessage: 'Push notifications'\n });\n var pushMeta = showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.push_meta',\n defaultMessage: 'This device'\n });\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__clear_column_button__[\"a\" /* default */], {\n onClick: onClear\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'group',\n 'aria-labelledby': 'notifications-follow'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n id: 'notifications-follow',\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.follow',\n defaultMessage: 'New followers:'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_desktop',\n settings: settings,\n settingPath: ['alerts', 'follow'],\n onChange: onChange,\n label: alertStr\n }), showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_push',\n settings: pushSettings,\n settingPath: ['alerts', 'follow'],\n meta: pushMeta,\n onChange: this.onPushChange,\n label: pushStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['shows', 'follow'],\n onChange: onChange,\n label: showStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['sounds', 'follow'],\n onChange: onChange,\n label: soundStr\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'group',\n 'aria-labelledby': 'notifications-favourite'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n id: 'notifications-favourite',\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.favourite',\n defaultMessage: 'Favourites:'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_desktop',\n settings: settings,\n settingPath: ['alerts', 'favourite'],\n onChange: onChange,\n label: alertStr\n }), showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_push',\n settings: pushSettings,\n settingPath: ['alerts', 'favourite'],\n meta: pushMeta,\n onChange: this.onPushChange,\n label: pushStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['shows', 'favourite'],\n onChange: onChange,\n label: showStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['sounds', 'favourite'],\n onChange: onChange,\n label: soundStr\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'group',\n 'aria-labelledby': 'notifications-mention'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n id: 'notifications-mention',\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.mention',\n defaultMessage: 'Mentions:'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_desktop',\n settings: settings,\n settingPath: ['alerts', 'mention'],\n onChange: onChange,\n label: alertStr\n }), showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_push',\n settings: pushSettings,\n settingPath: ['alerts', 'mention'],\n meta: pushMeta,\n onChange: this.onPushChange,\n label: pushStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['shows', 'mention'],\n onChange: onChange,\n label: showStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['sounds', 'mention'],\n onChange: onChange,\n label: soundStr\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'group',\n 'aria-labelledby': 'notifications-reblog'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n id: 'notifications-reblog',\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.reblog',\n defaultMessage: 'Boosts:'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_desktop',\n settings: settings,\n settingPath: ['alerts', 'reblog'],\n onChange: onChange,\n label: alertStr\n }), showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_push',\n settings: pushSettings,\n settingPath: ['alerts', 'reblog'],\n meta: pushMeta,\n onChange: this.onPushChange,\n label: pushStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['shows', 'reblog'],\n onChange: onChange,\n label: showStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['sounds', 'reblog'],\n onChange: onChange,\n label: soundStr\n }))));\n };\n\n return ColumnSettings;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 959:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ClearColumnButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar ClearColumnButton = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ClearColumnButton, _React$PureComponent);\n\n function ClearColumnButton() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ClearColumnButton);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n ClearColumnButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'text-btn column-header__setting-btn',\n tabIndex: '0',\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-eraser'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.clear',\n defaultMessage: 'Clear notifications'\n }));\n };\n\n return ClearColumnButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/notifications.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { expandNotifications, scrollTopNotifications } from '../../actions/notifications';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport NotificationContainer from './containers/notification_container';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ColumnSettingsContainer from './containers/column_settings_container';\nimport { createSelector } from 'reselect';\nimport { List as ImmutableList } from 'immutable';\nimport { debounce } from 'lodash';\nimport ScrollableList from '../../components/scrollable_list';\nimport LoadMore from '../../components/load_more';\n\nconst messages = defineMessages({\n title: { id: 'column.notifications', defaultMessage: 'Notifications' },\n});\n\nconst getNotifications = createSelector([\n state => ImmutableList(state.getIn(['settings', 'notifications', 'shows']).filter(item => !item).keys()),\n state => state.getIn(['notifications', 'items']),\n], (excludedTypes, notifications) => notifications.filterNot(item => item !== null && excludedTypes.includes(item.get('type'))));\n\nclass LoadGap extends React.PureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nconst mapStateToProps = state => ({\n notifications: getNotifications(state),\n isLoading: state.getIn(['notifications', 'isLoading'], true),\n isUnread: state.getIn(['notifications', 'unread']) > 0,\n hasMore: state.getIn(['notifications', 'hasMore']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Notifications extends React.PureComponent {\n\n static propTypes = {\n columnId: PropTypes.string,\n notifications: ImmutablePropTypes.list.isRequired,\n dispatch: PropTypes.func.isRequired,\n shouldUpdateScroll: PropTypes.func,\n intl: PropTypes.object.isRequired,\n isLoading: PropTypes.bool,\n isUnread: PropTypes.bool,\n multiColumn: PropTypes.bool,\n hasMore: PropTypes.bool,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n componentWillUnmount () {\n this.handleLoadOlder.cancel();\n this.handleScrollToTop.cancel();\n this.handleScroll.cancel();\n this.props.dispatch(scrollTopNotifications(false));\n }\n\n handleLoadGap = (maxId) => {\n this.props.dispatch(expandNotifications({ maxId }));\n };\n\n handleLoadOlder = debounce(() => {\n const last = this.props.notifications.last();\n this.props.dispatch(expandNotifications({ maxId: last && last.get('id') }));\n }, 300, { leading: true });\n\n handleScrollToTop = debounce(() => {\n this.props.dispatch(scrollTopNotifications(true));\n }, 100);\n\n handleScroll = debounce(() => {\n this.props.dispatch(scrollTopNotifications(false));\n }, 100);\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('NOTIFICATIONS', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n setColumnRef = c => {\n this.column = c;\n }\n\n handleMoveUp = id => {\n const elementIndex = this.props.notifications.findIndex(item => item !== null && item.get('id') === id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.notifications.findIndex(item => item !== null && item.get('id') === id) + 1;\n this._selectChild(elementIndex);\n }\n\n _selectChild (index) {\n const element = this.column.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n render () {\n const { intl, notifications, shouldUpdateScroll, isLoading, isUnread, columnId, multiColumn, hasMore } = this.props;\n const pinned = !!columnId;\n const emptyMessage = <FormattedMessage id='empty_column.notifications' defaultMessage=\"You don't have any notifications yet. Interact with others to start the conversation.\" />;\n\n let scrollableContent = null;\n\n if (isLoading && this.scrollableContent) {\n scrollableContent = this.scrollableContent;\n } else if (notifications.size > 0 || hasMore) {\n scrollableContent = notifications.map((item, index) => item === null ? (\n <LoadGap\n key={'gap:' + notifications.getIn([index + 1, 'id'])}\n disabled={isLoading}\n maxId={index > 0 ? notifications.getIn([index - 1, 'id']) : null}\n onClick={this.handleLoadGap}\n />\n ) : (\n <NotificationContainer\n key={item.get('id')}\n notification={item}\n accountId={item.get('account')}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ));\n } else {\n scrollableContent = null;\n }\n\n this.scrollableContent = scrollableContent;\n\n const scrollContainer = (\n <ScrollableList\n scrollKey={`notifications-${columnId}`}\n trackScroll={!pinned}\n isLoading={isLoading}\n hasMore={hasMore}\n emptyMessage={emptyMessage}\n onLoadMore={this.handleLoadOlder}\n onScrollToTop={this.handleScrollToTop}\n onScroll={this.handleScroll}\n shouldUpdateScroll={shouldUpdateScroll}\n >\n {scrollableContent}\n </ScrollableList>\n );\n\n return (\n <Column ref={this.setColumnRef}>\n <ColumnHeader\n icon='bell'\n active={isUnread}\n title={intl.formatMessage(messages.title)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <ColumnSettingsContainer />\n </ColumnHeader>\n\n {scrollContainer}\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _check = require('./check');\n\nvar _check2 = _interopRequireDefault(_check);\n\nvar _x = require('./x');\n\nvar _x2 = _interopRequireDefault(_x);\n\nvar _util = require('./util');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Toggle = function (_PureComponent) {\n _inherits(Toggle, _PureComponent);\n\n function Toggle(props) {\n _classCallCheck(this, Toggle);\n\n var _this = _possibleConstructorReturn(this, (Toggle.__proto__ || Object.getPrototypeOf(Toggle)).call(this, props));\n\n _this.handleClick = _this.handleClick.bind(_this);\n _this.handleTouchStart = _this.handleTouchStart.bind(_this);\n _this.handleTouchMove = _this.handleTouchMove.bind(_this);\n _this.handleTouchEnd = _this.handleTouchEnd.bind(_this);\n _this.handleFocus = _this.handleFocus.bind(_this);\n _this.handleBlur = _this.handleBlur.bind(_this);\n _this.previouslyChecked = !!(props.checked || props.defaultChecked);\n _this.state = {\n checked: !!(props.checked || props.defaultChecked),\n hasFocus: false\n };\n return _this;\n }\n\n _createClass(Toggle, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if ('checked' in nextProps) {\n this.setState({ checked: !!nextProps.checked });\n }\n }\n }, {\n key: 'handleClick',\n value: function handleClick(event) {\n var checkbox = this.input;\n if (event.target !== checkbox && !this.moved) {\n this.previouslyChecked = checkbox.checked;\n event.preventDefault();\n checkbox.focus();\n checkbox.click();\n return;\n }\n\n var checked = this.props.hasOwnProperty('checked') ? this.props.checked : checkbox.checked;\n\n this.setState({ checked: checked });\n }\n }, {\n key: 'handleTouchStart',\n value: function handleTouchStart(event) {\n this.startX = (0, _util.pointerCoord)(event).x;\n this.activated = true;\n }\n }, {\n key: 'handleTouchMove',\n value: function handleTouchMove(event) {\n if (!this.activated) return;\n this.moved = true;\n\n if (this.startX) {\n var currentX = (0, _util.pointerCoord)(event).x;\n if (this.state.checked && currentX + 15 < this.startX) {\n this.setState({ checked: false });\n this.startX = currentX;\n this.activated = true;\n } else if (currentX - 15 > this.startX) {\n this.setState({ checked: true });\n this.startX = currentX;\n this.activated = currentX < this.startX + 5;\n }\n }\n }\n }, {\n key: 'handleTouchEnd',\n value: function handleTouchEnd(event) {\n if (!this.moved) return;\n var checkbox = this.input;\n event.preventDefault();\n\n if (this.startX) {\n var endX = (0, _util.pointerCoord)(event).x;\n if (this.previouslyChecked === true && this.startX + 4 > endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: false });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n } else if (this.startX - 4 < endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: true });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n }\n\n this.activated = false;\n this.startX = null;\n this.moved = false;\n }\n }\n }, {\n key: 'handleFocus',\n value: function handleFocus(event) {\n var onFocus = this.props.onFocus;\n\n\n if (onFocus) {\n onFocus(event);\n }\n\n this.setState({ hasFocus: true });\n }\n }, {\n key: 'handleBlur',\n value: function handleBlur(event) {\n var onBlur = this.props.onBlur;\n\n\n if (onBlur) {\n onBlur(event);\n }\n\n this.setState({ hasFocus: false });\n }\n }, {\n key: 'getIcon',\n value: function getIcon(type) {\n var icons = this.props.icons;\n\n if (!icons) {\n return null;\n }\n return icons[type] === undefined ? Toggle.defaultProps.icons[type] : icons[type];\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n className = _props.className,\n _icons = _props.icons,\n inputProps = _objectWithoutProperties(_props, ['className', 'icons']);\n\n var classes = (0, _classnames2.default)('react-toggle', {\n 'react-toggle--checked': this.state.checked,\n 'react-toggle--focus': this.state.hasFocus,\n 'react-toggle--disabled': this.props.disabled\n }, className);\n\n return _react2.default.createElement(\n 'div',\n { className: classes,\n onClick: this.handleClick,\n onTouchStart: this.handleTouchStart,\n onTouchMove: this.handleTouchMove,\n onTouchEnd: this.handleTouchEnd },\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track' },\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track-check' },\n this.getIcon('checked')\n ),\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track-x' },\n this.getIcon('unchecked')\n )\n ),\n _react2.default.createElement('div', { className: 'react-toggle-thumb' }),\n _react2.default.createElement('input', _extends({}, inputProps, {\n ref: function ref(_ref) {\n _this2.input = _ref;\n },\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n className: 'react-toggle-screenreader-only',\n type: 'checkbox' }))\n );\n }\n }]);\n\n return Toggle;\n}(_react.PureComponent);\n\nexports.default = Toggle;\n\n\nToggle.displayName = 'Toggle';\n\nToggle.defaultProps = {\n icons: {\n checked: _react2.default.createElement(_check2.default, null),\n unchecked: _react2.default.createElement(_x2.default, null)\n }\n};\n\nToggle.propTypes = {\n checked: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n defaultChecked: _propTypes2.default.bool,\n onChange: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n className: _propTypes2.default.string,\n name: _propTypes2.default.string,\n value: _propTypes2.default.string,\n id: _propTypes2.default.string,\n 'aria-labelledby': _propTypes2.default.string,\n 'aria-label': _propTypes2.default.string,\n icons: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({\n checked: _propTypes2.default.node,\n unchecked: _propTypes2.default.node\n })])\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/index.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n return _react2.default.createElement(\n 'svg',\n { width: '14', height: '11', viewBox: '0 0 14 11' },\n _react2.default.createElement(\n 'title',\n null,\n 'switch-check'\n ),\n _react2.default.createElement('path', { d: 'M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0', fill: '#fff', fillRule: 'evenodd' })\n );\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/check.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n return _react2.default.createElement(\n 'svg',\n { width: '10', height: '10', viewBox: '0 0 10 10' },\n _react2.default.createElement(\n 'title',\n null,\n 'switch-x'\n ),\n _react2.default.createElement('path', { d: 'M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12', fill: '#fff', fillRule: 'evenodd' })\n );\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/x.js","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pointerCoord = pointerCoord;\n// Copyright 2015-present Drifty Co.\n// http://drifty.com/\n// from: https://github.com/driftyco/ionic/blob/master/src/util/dom.ts\n\nfunction pointerCoord(event) {\n // get coordinates for either a mouse click\n // or a touch depending on the given event\n if (event) {\n var changedTouches = event.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n var touch = changedTouches[0];\n return { x: touch.clientX, y: touch.clientY };\n }\n var pageX = event.pageX;\n if (pageX !== undefined) {\n return { x: pageX, y: event.pageY };\n }\n }\n return { x: 0, y: 0 };\n}\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/util.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Toggle from 'react-toggle';\n\nexport default class SettingToggle extends React.PureComponent {\n\n static propTypes = {\n prefix: PropTypes.string,\n settings: ImmutablePropTypes.map.isRequired,\n settingPath: PropTypes.array.isRequired,\n label: PropTypes.node.isRequired,\n meta: PropTypes.node,\n onChange: PropTypes.func.isRequired,\n }\n\n onChange = ({ target }) => {\n this.props.onChange(this.props.settingPath, target.checked);\n }\n\n render () {\n const { prefix, settings, settingPath, label, meta } = this.props;\n const id = ['setting-toggle', prefix, ...settingPath].filter(Boolean).join('-');\n\n return (\n <div className='setting-toggle'>\n <Toggle id={id} checked={settings.getIn(settingPath)} onChange={this.onChange} onKeyDown={this.onKeyDown} />\n <label htmlFor={id} className='setting-toggle__label'>{label}</label>\n {meta && <span className='setting-meta__label'>{meta}</span>}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/setting_toggle.js","import { connect } from 'react-redux';\nimport { makeGetNotification } from '../../../selectors';\nimport Notification from '../components/notification';\nimport { mentionCompose } from '../../../actions/compose';\n\nconst makeMapStateToProps = () => {\n const getNotification = makeGetNotification();\n\n const mapStateToProps = (state, props) => ({\n notification: getNotification(state, props.notification, props.accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = dispatch => ({\n onMention: (account, router) => {\n dispatch(mentionCompose(account, router));\n },\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(Notification);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/containers/notification_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport StatusContainer from '../../../containers/status_container';\nimport AccountContainer from '../../../containers/account_container';\nimport { FormattedMessage } from 'react-intl';\nimport Permalink from '../../../components/permalink';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { HotKeys } from 'react-hotkeys';\n\nexport default class Notification extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n notification: ImmutablePropTypes.map.isRequired,\n hidden: PropTypes.bool,\n onMoveUp: PropTypes.func.isRequired,\n onMoveDown: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n };\n\n handleMoveUp = () => {\n const { notification, onMoveUp } = this.props;\n onMoveUp(notification.get('id'));\n }\n\n handleMoveDown = () => {\n const { notification, onMoveDown } = this.props;\n onMoveDown(notification.get('id'));\n }\n\n handleOpen = () => {\n const { notification } = this.props;\n\n if (notification.get('status')) {\n this.context.router.history.push(`/statuses/${notification.get('status')}`);\n } else {\n this.handleOpenProfile();\n }\n }\n\n handleOpenProfile = () => {\n const { notification } = this.props;\n this.context.router.history.push(`/accounts/${notification.getIn(['account', 'id'])}`);\n }\n\n handleMention = e => {\n e.preventDefault();\n\n const { notification, onMention } = this.props;\n onMention(notification.get('account'), this.context.router.history);\n }\n\n getHandlers () {\n return {\n moveUp: this.handleMoveUp,\n moveDown: this.handleMoveDown,\n open: this.handleOpen,\n openProfile: this.handleOpenProfile,\n mention: this.handleMention,\n reply: this.handleMention,\n };\n }\n\n renderFollow (account, link) {\n return (\n <HotKeys handlers={this.getHandlers()}>\n <div className='notification notification-follow focusable' tabIndex='0'>\n <div className='notification__message'>\n <div className='notification__favourite-icon-wrapper'>\n <i className='fa fa-fw fa-user-plus' />\n </div>\n\n <FormattedMessage id='notification.follow' defaultMessage='{name} followed you' values={{ name: link }} />\n </div>\n\n <AccountContainer id={account.get('id')} withNote={false} hidden={this.props.hidden} />\n </div>\n </HotKeys>\n );\n }\n\n renderMention (notification) {\n return (\n <StatusContainer\n id={notification.get('status')}\n withDismiss\n hidden={this.props.hidden}\n onMoveDown={this.handleMoveDown}\n onMoveUp={this.handleMoveUp}\n />\n );\n }\n\n renderFavourite (notification, link) {\n return (\n <HotKeys handlers={this.getHandlers()}>\n <div className='notification notification-favourite focusable' tabIndex='0'>\n <div className='notification__message'>\n <div className='notification__favourite-icon-wrapper'>\n <i className='fa fa-fw fa-star star-icon' />\n </div>\n <FormattedMessage id='notification.favourite' defaultMessage='{name} favourited your status' values={{ name: link }} />\n </div>\n\n <StatusContainer id={notification.get('status')} account={notification.get('account')} muted withDismiss hidden={!!this.props.hidden} />\n </div>\n </HotKeys>\n );\n }\n\n renderReblog (notification, link) {\n return (\n <HotKeys handlers={this.getHandlers()}>\n <div className='notification notification-reblog focusable' tabIndex='0'>\n <div className='notification__message'>\n <div className='notification__favourite-icon-wrapper'>\n <i className='fa fa-fw fa-retweet' />\n </div>\n <FormattedMessage id='notification.reblog' defaultMessage='{name} boosted your status' values={{ name: link }} />\n </div>\n\n <StatusContainer id={notification.get('status')} account={notification.get('account')} muted withDismiss hidden={this.props.hidden} />\n </div>\n </HotKeys>\n );\n }\n\n render () {\n const { notification } = this.props;\n const account = notification.get('account');\n const displayNameHtml = { __html: account.get('display_name_html') };\n const link = <bdi><Permalink className='notification__display-name' href={account.get('url')} title={account.get('acct')} to={`/accounts/${account.get('id')}`} dangerouslySetInnerHTML={displayNameHtml} /></bdi>;\n\n switch(notification.get('type')) {\n case 'follow':\n return this.renderFollow(account, link);\n case 'mention':\n return this.renderMention(notification);\n case 'favourite':\n return this.renderFavourite(notification, link);\n case 'reblog':\n return this.renderReblog(notification, link);\n }\n\n return null;\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/notification.js","import { connect } from 'react-redux';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ColumnSettings from '../components/column_settings';\nimport { changeSetting } from '../../../actions/settings';\nimport { clearNotifications } from '../../../actions/notifications';\nimport { changeAlerts as changePushNotifications } from '../../../actions/push_notifications';\nimport { openModal } from '../../../actions/modal';\n\nconst messages = defineMessages({\n clearMessage: { id: 'notifications.clear_confirmation', defaultMessage: 'Are you sure you want to permanently clear all your notifications?' },\n clearConfirm: { id: 'notifications.clear', defaultMessage: 'Clear notifications' },\n});\n\nconst mapStateToProps = state => ({\n settings: state.getIn(['settings', 'notifications']),\n pushSettings: state.get('push_notifications'),\n});\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onChange (path, checked) {\n if (path[0] === 'push') {\n dispatch(changePushNotifications(path.slice(1), checked));\n } else {\n dispatch(changeSetting(['notifications', ...path], checked));\n }\n },\n\n onClear () {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.clearMessage),\n confirm: intl.formatMessage(messages.clearConfirm),\n onConfirm: () => dispatch(clearNotifications()),\n }));\n },\n\n});\n\nexport default injectIntl(connect(mapStateToProps, mapDispatchToProps)(ColumnSettings));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/containers/column_settings_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ClearColumnButton from './clear_column_button';\nimport SettingToggle from './setting_toggle';\n\nexport default class ColumnSettings extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n pushSettings: ImmutablePropTypes.map.isRequired,\n onChange: PropTypes.func.isRequired,\n onClear: PropTypes.func.isRequired,\n };\n\n onPushChange = (path, checked) => {\n this.props.onChange(['push', ...path], checked);\n }\n\n render () {\n const { settings, pushSettings, onChange, onClear } = this.props;\n\n const alertStr = <FormattedMessage id='notifications.column_settings.alert' defaultMessage='Desktop notifications' />;\n const showStr = <FormattedMessage id='notifications.column_settings.show' defaultMessage='Show in column' />;\n const soundStr = <FormattedMessage id='notifications.column_settings.sound' defaultMessage='Play sound' />;\n\n const showPushSettings = pushSettings.get('browserSupport') && pushSettings.get('isSubscribed');\n const pushStr = showPushSettings && <FormattedMessage id='notifications.column_settings.push' defaultMessage='Push notifications' />;\n const pushMeta = showPushSettings && <FormattedMessage id='notifications.column_settings.push_meta' defaultMessage='This device' />;\n\n return (\n <div>\n <div className='column-settings__row'>\n <ClearColumnButton onClick={onClear} />\n </div>\n\n <div role='group' aria-labelledby='notifications-follow'>\n <span id='notifications-follow' className='column-settings__section'><FormattedMessage id='notifications.column_settings.follow' defaultMessage='New followers:' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'follow']} onChange={onChange} label={alertStr} />\n {showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'follow']} meta={pushMeta} onChange={this.onPushChange} label={pushStr} />}\n <SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'follow']} onChange={onChange} label={showStr} />\n <SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'follow']} onChange={onChange} label={soundStr} />\n </div>\n </div>\n\n <div role='group' aria-labelledby='notifications-favourite'>\n <span id='notifications-favourite' className='column-settings__section'><FormattedMessage id='notifications.column_settings.favourite' defaultMessage='Favourites:' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'favourite']} onChange={onChange} label={alertStr} />\n {showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'favourite']} meta={pushMeta} onChange={this.onPushChange} label={pushStr} />}\n <SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'favourite']} onChange={onChange} label={showStr} />\n <SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'favourite']} onChange={onChange} label={soundStr} />\n </div>\n </div>\n\n <div role='group' aria-labelledby='notifications-mention'>\n <span id='notifications-mention' className='column-settings__section'><FormattedMessage id='notifications.column_settings.mention' defaultMessage='Mentions:' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'mention']} onChange={onChange} label={alertStr} />\n {showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'mention']} meta={pushMeta} onChange={this.onPushChange} label={pushStr} />}\n <SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'mention']} onChange={onChange} label={showStr} />\n <SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'mention']} onChange={onChange} label={soundStr} />\n </div>\n </div>\n\n <div role='group' aria-labelledby='notifications-reblog'>\n <span id='notifications-reblog' className='column-settings__section'><FormattedMessage id='notifications.column_settings.reblog' defaultMessage='Boosts:' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'reblog']} onChange={onChange} label={alertStr} />\n {showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'reblog']} meta={pushMeta} onChange={this.onPushChange} label={pushStr} />}\n <SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'reblog']} onChange={onChange} label={showStr} />\n <SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'reblog']} onChange={onChange} label={soundStr} />\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/column_settings.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\n\nexport default class ClearColumnButton extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func.isRequired,\n };\n\n render () {\n return (\n <button className='text-btn column-header__setting-btn' tabIndex='0' onClick={this.props.onClick}><i className='fa fa-eraser' /> <FormattedMessage id='notifications.clear' defaultMessage='Clear notifications' /></button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/clear_column_button.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/notifications.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/features/notifications/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/features/notifications/components/setting_toggle.js","webpack:///./node_modules/react-toggle/dist/component/index.js","webpack:///./node_modules/react-toggle/dist/component/check.js","webpack:///./node_modules/react-toggle/dist/component/x.js","webpack:///./node_modules/react-toggle/dist/component/util.js","webpack:///./app/javascript/mastodon/features/notifications/containers/notification_container.js","webpack:///./app/javascript/mastodon/features/notifications/components/notification.js","webpack:///./app/javascript/mastodon/features/notifications/containers/column_settings_container.js","webpack:///./app/javascript/mastodon/features/notifications/components/column_settings.js","webpack:///./app/javascript/mastodon/features/notifications/components/clear_column_button.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","282","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","804","defineProperty","value","Notifications","_dec","_class2","_class3","_temp3","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_6_react_redux__","__WEBPACK_IMPORTED_MODULE_7__components_column__","__WEBPACK_IMPORTED_MODULE_8__components_column_header__","__WEBPACK_IMPORTED_MODULE_9__actions_notifications__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11__containers_notification_container__","__WEBPACK_IMPORTED_MODULE_13__containers_column_settings_container__","__WEBPACK_IMPORTED_MODULE_14_reselect__","__WEBPACK_IMPORTED_MODULE_15_immutable__","__WEBPACK_IMPORTED_MODULE_16__components_scrollable_list__","__WEBPACK_IMPORTED_MODULE_17__components_load_more__","title","getNotifications","filter","keys","excludedTypes","notifications","filterNot","includes","LoadGap","handleClick","maxId","mapStateToProps","isUnread","_React$PureComponent2","_ret2","_len2","_key2","handleLoadGap","handleLoadOlder","leading","handleScrollToTop","handlePin","_this2$props","columnId","handleMove","dir","_this2$props2","handleHeaderClick","column","setColumnRef","handleMoveUp","elementIndex","findIndex","_selectChild","handleMoveDown","cancel","element","querySelector","focus","_this3","multiColumn","pinned","scrollableContent","size","notification","accountId","onMoveUp","onMoveDown","scrollContainer","icon","active","onPin","onMove","841","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","unfollowConfirm","getAccount","onFollow","onMuteNotifications","842","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","_ImmutablePureCompone","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","buttons","following","blocking","muting","hidingNotificationsButton","href","to","propTypes","isRequired","func","bool","865","SettingToggle","__WEBPACK_IMPORTED_MODULE_5_react_toggle__","__WEBPACK_IMPORTED_MODULE_5_react_toggle___default","onChange","settingPath","checked","prefix","settings","label","meta","Boolean","join","onKeyDown","htmlFor","866","_interopRequireDefault","obj","__esModule","default","_objectWithoutProperties","indexOf","hasOwnProperty","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","enumerable","writable","configurable","setPrototypeOf","__proto__","_extends","assign","source","_createClass","defineProperties","descriptor","protoProps","staticProps","_react","_react2","_classnames","_classnames2","_propTypes","_propTypes2","_check","_check2","_x","_x2","_util","Toggle","getPrototypeOf","bind","handleTouchStart","handleTouchMove","handleTouchEnd","handleFocus","handleBlur","previouslyChecked","defaultChecked","hasFocus","event","checkbox","input","moved","click","startX","pointerCoord","x","activated","currentX","endX","onFocus","onBlur","icons","inputProps","classes","react-toggle--checked","react-toggle--focus","react-toggle--disabled","onTouchStart","onTouchMove","onTouchEnd","getIcon","displayName","unchecked","string","aria-labelledby","aria-label","oneOfType","shape","867","viewBox","fill","fillRule","868","869","changedTouches","touch","clientX","y","clientY","pageX","pageY","953","__WEBPACK_IMPORTED_MODULE_1__selectors__","__WEBPACK_IMPORTED_MODULE_2__components_notification__","__WEBPACK_IMPORTED_MODULE_3__actions_compose__","getNotification","954","Notification","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__containers_status_container__","__WEBPACK_IMPORTED_MODULE_8__containers_account_container__","__WEBPACK_IMPORTED_MODULE_9_react_intl__","__WEBPACK_IMPORTED_MODULE_10__components_permalink__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__","_this$props2","handleOpen","history","handleOpenProfile","handleMention","_this$props3","getHandlers","moveUp","moveDown","open","openProfile","mention","reply","renderFollow","link","handlers","withNote","renderMention","withDismiss","renderFavourite","muted","renderReblog","displayNameHtml","__html","dangerouslySetInnerHTML","955","__WEBPACK_IMPORTED_MODULE_1_react_intl__","__WEBPACK_IMPORTED_MODULE_2__components_column_settings__","__WEBPACK_IMPORTED_MODULE_3__actions_settings__","__WEBPACK_IMPORTED_MODULE_4__actions_notifications__","__WEBPACK_IMPORTED_MODULE_5__actions_push_notifications__","__WEBPACK_IMPORTED_MODULE_6__actions_modal__","clearMessage","clearConfirm","pushSettings","path","onClear","956","ColumnSettings","__WEBPACK_IMPORTED_MODULE_6__clear_column_button__","__WEBPACK_IMPORTED_MODULE_7__setting_toggle__","onPushChange","alertStr","showStr","soundStr","showPushSettings","pushStr","pushMeta","957","ClearColumnButton"],"mappings":"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","file":"features/notifications.js","sourcesContent":["webpackJsonp([5],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 804:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Notifications; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_notifications__ = __webpack_require__(100);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_notification_container__ = __webpack_require__(953);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__containers_column_settings_container__ = __webpack_require__(955);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__components_scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__components_load_more__ = __webpack_require__(149);\n\n\n\n\n\n\nvar _dec, _class2, _class3, _temp3;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n title: {\n 'id': 'column.notifications',\n 'defaultMessage': 'Notifications'\n }\n});\n\nvar getNotifications = Object(__WEBPACK_IMPORTED_MODULE_14_reselect__[\"createSelector\"])([function (state) {\n return Object(__WEBPACK_IMPORTED_MODULE_15_immutable__[\"List\"])(state.getIn(['settings', 'notifications', 'shows']).filter(function (item) {\n return !item;\n }).keys());\n}, function (state) {\n return state.getIn(['notifications', 'items']);\n}], function (excludedTypes, notifications) {\n return notifications.filterNot(function (item) {\n return item !== null && excludedTypes.includes(item.get('type'));\n });\n});\n\nvar LoadGap = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadGap, _React$PureComponent);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17__components_load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n notifications: getNotifications(state),\n isLoading: state.getIn(['notifications', 'isLoading'], true),\n isUnread: state.getIn(['notifications', 'unread']) > 0,\n hasMore: state.getIn(['notifications', 'hasMore'])\n };\n};\n\nvar Notifications = (_dec = Object(__WEBPACK_IMPORTED_MODULE_6_react_redux__[\"connect\"])(mapStateToProps), _dec(_class2 = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp3 = _class3 = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Notifications, _React$PureComponent2);\n\n function Notifications() {\n var _temp2, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Notifications);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.handleLoadGap = function (maxId) {\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"h\" /* expandNotifications */])({ maxId: maxId }));\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n var last = _this2.props.notifications.last();\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"h\" /* expandNotifications */])({ maxId: last && last.get('id') }));\n }, 300, { leading: true }), _this2.handleScrollToTop = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"i\" /* scrollTopNotifications */])(true));\n }, 100), _this2.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n _this2.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"i\" /* scrollTopNotifications */])(false));\n }, 100), _this2.handlePin = function () {\n var _this2$props = _this2.props,\n columnId = _this2$props.columnId,\n dispatch = _this2$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('NOTIFICATIONS', {}));\n }\n }, _this2.handleMove = function (dir) {\n var _this2$props2 = _this2.props,\n columnId = _this2$props2.columnId,\n dispatch = _this2$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this2.handleHeaderClick = function () {\n _this2.column.scrollTop();\n }, _this2.setColumnRef = function (c) {\n _this2.column = c;\n }, _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.notifications.findIndex(function (item) {\n return item !== null && item.get('id') === id;\n }) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.notifications.findIndex(function (item) {\n return item !== null && item.get('id') === id;\n }) + 1;\n _this2._selectChild(elementIndex);\n }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n Notifications.prototype.componentWillUnmount = function componentWillUnmount() {\n this.handleLoadOlder.cancel();\n this.handleScrollToTop.cancel();\n this.handleScroll.cancel();\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_notifications__[\"i\" /* scrollTopNotifications */])(false));\n };\n\n Notifications.prototype._selectChild = function _selectChild(index) {\n var element = this.column.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n Notifications.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n intl = _props.intl,\n notifications = _props.notifications,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n isUnread = _props.isUnread,\n columnId = _props.columnId,\n multiColumn = _props.multiColumn,\n hasMore = _props.hasMore;\n\n var pinned = !!columnId;\n var emptyMessage = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.notifications',\n defaultMessage: 'You don\\'t have any notifications yet. Interact with others to start the conversation.'\n });\n\n var scrollableContent = null;\n\n if (isLoading && this.scrollableContent) {\n scrollableContent = this.scrollableContent;\n } else if (notifications.size > 0 || hasMore) {\n scrollableContent = notifications.map(function (item, index) {\n return item === null ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? notifications.getIn([index - 1, 'id']) : null,\n onClick: _this3.handleLoadGap\n }, 'gap:' + notifications.getIn([index + 1, 'id'])) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_notification_container__[\"a\" /* default */], {\n notification: item,\n accountId: item.get('account'),\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, item.get('id'));\n });\n } else {\n scrollableContent = null;\n }\n\n this.scrollableContent = scrollableContent;\n\n var scrollContainer = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__components_scrollable_list__[\"a\" /* default */], {\n scrollKey: 'notifications-' + columnId,\n trackScroll: !pinned,\n isLoading: isLoading,\n hasMore: hasMore,\n emptyMessage: emptyMessage,\n onLoadMore: this.handleLoadOlder,\n onScrollToTop: this.handleScrollToTop,\n onScroll: this.handleScroll,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableContent);\n\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_7__components_column__[\"a\" /* default */],\n { ref: this.setColumnRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column_header__[\"a\" /* default */], {\n icon: 'bell',\n active: isUnread,\n title: intl.formatMessage(messages.title),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__containers_column_settings_container__[\"a\" /* default */], {})),\n scrollContainer\n );\n };\n\n return Notifications;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent), _class3.defaultProps = {\n trackScroll: true\n}, _temp3)) || _class2) || _class2);\n\n\n/***/ }),\n\n/***/ 841:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(842);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 842:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 865:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingToggle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_toggle__ = __webpack_require__(866);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_toggle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_toggle__);\n\n\n\n\n\n\n\n\nvar SettingToggle = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingToggle, _React$PureComponent);\n\n function SettingToggle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingToggle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onChange = function (_ref) {\n var target = _ref.target;\n\n _this.props.onChange(_this.props.settingPath, target.checked);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingToggle.prototype.render = function render() {\n var _props = this.props,\n prefix = _props.prefix,\n settings = _props.settings,\n settingPath = _props.settingPath,\n label = _props.label,\n meta = _props.meta;\n\n var id = ['setting-toggle', prefix].concat(settingPath).filter(Boolean).join('-');\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'setting-toggle'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_toggle___default.a, {\n id: id,\n checked: settings.getIn(settingPath),\n onChange: this.onChange,\n onKeyDown: this.onKeyDown\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {\n htmlFor: id,\n className: 'setting-toggle__label'\n }, void 0, label), meta && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'setting-meta__label'\n }, void 0, meta));\n };\n\n return SettingToggle;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 866:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n }\n }return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n };\n}();\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = __webpack_require__(10);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = __webpack_require__(5);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _check = __webpack_require__(867);\n\nvar _check2 = _interopRequireDefault(_check);\n\nvar _x = __webpack_require__(868);\n\nvar _x2 = _interopRequireDefault(_x);\n\nvar _util = __webpack_require__(869);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nfunction _objectWithoutProperties(obj, keys) {\n var target = {};for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];\n }return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nvar Toggle = function (_PureComponent) {\n _inherits(Toggle, _PureComponent);\n\n function Toggle(props) {\n _classCallCheck(this, Toggle);\n\n var _this = _possibleConstructorReturn(this, (Toggle.__proto__ || Object.getPrototypeOf(Toggle)).call(this, props));\n\n _this.handleClick = _this.handleClick.bind(_this);\n _this.handleTouchStart = _this.handleTouchStart.bind(_this);\n _this.handleTouchMove = _this.handleTouchMove.bind(_this);\n _this.handleTouchEnd = _this.handleTouchEnd.bind(_this);\n _this.handleFocus = _this.handleFocus.bind(_this);\n _this.handleBlur = _this.handleBlur.bind(_this);\n _this.previouslyChecked = !!(props.checked || props.defaultChecked);\n _this.state = {\n checked: !!(props.checked || props.defaultChecked),\n hasFocus: false\n };\n return _this;\n }\n\n _createClass(Toggle, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if ('checked' in nextProps) {\n this.setState({ checked: !!nextProps.checked });\n }\n }\n }, {\n key: 'handleClick',\n value: function handleClick(event) {\n var checkbox = this.input;\n if (event.target !== checkbox && !this.moved) {\n this.previouslyChecked = checkbox.checked;\n event.preventDefault();\n checkbox.focus();\n checkbox.click();\n return;\n }\n\n var checked = this.props.hasOwnProperty('checked') ? this.props.checked : checkbox.checked;\n\n this.setState({ checked: checked });\n }\n }, {\n key: 'handleTouchStart',\n value: function handleTouchStart(event) {\n this.startX = (0, _util.pointerCoord)(event).x;\n this.activated = true;\n }\n }, {\n key: 'handleTouchMove',\n value: function handleTouchMove(event) {\n if (!this.activated) return;\n this.moved = true;\n\n if (this.startX) {\n var currentX = (0, _util.pointerCoord)(event).x;\n if (this.state.checked && currentX + 15 < this.startX) {\n this.setState({ checked: false });\n this.startX = currentX;\n this.activated = true;\n } else if (currentX - 15 > this.startX) {\n this.setState({ checked: true });\n this.startX = currentX;\n this.activated = currentX < this.startX + 5;\n }\n }\n }\n }, {\n key: 'handleTouchEnd',\n value: function handleTouchEnd(event) {\n if (!this.moved) return;\n var checkbox = this.input;\n event.preventDefault();\n\n if (this.startX) {\n var endX = (0, _util.pointerCoord)(event).x;\n if (this.previouslyChecked === true && this.startX + 4 > endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: false });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n } else if (this.startX - 4 < endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: true });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n }\n\n this.activated = false;\n this.startX = null;\n this.moved = false;\n }\n }\n }, {\n key: 'handleFocus',\n value: function handleFocus(event) {\n var onFocus = this.props.onFocus;\n\n if (onFocus) {\n onFocus(event);\n }\n\n this.setState({ hasFocus: true });\n }\n }, {\n key: 'handleBlur',\n value: function handleBlur(event) {\n var onBlur = this.props.onBlur;\n\n if (onBlur) {\n onBlur(event);\n }\n\n this.setState({ hasFocus: false });\n }\n }, {\n key: 'getIcon',\n value: function getIcon(type) {\n var icons = this.props.icons;\n\n if (!icons) {\n return null;\n }\n return icons[type] === undefined ? Toggle.defaultProps.icons[type] : icons[type];\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n className = _props.className,\n _icons = _props.icons,\n inputProps = _objectWithoutProperties(_props, ['className', 'icons']);\n\n var classes = (0, _classnames2.default)('react-toggle', {\n 'react-toggle--checked': this.state.checked,\n 'react-toggle--focus': this.state.hasFocus,\n 'react-toggle--disabled': this.props.disabled\n }, className);\n\n return _react2.default.createElement('div', { className: classes,\n onClick: this.handleClick,\n onTouchStart: this.handleTouchStart,\n onTouchMove: this.handleTouchMove,\n onTouchEnd: this.handleTouchEnd }, _react2.default.createElement('div', { className: 'react-toggle-track' }, _react2.default.createElement('div', { className: 'react-toggle-track-check' }, this.getIcon('checked')), _react2.default.createElement('div', { className: 'react-toggle-track-x' }, this.getIcon('unchecked'))), _react2.default.createElement('div', { className: 'react-toggle-thumb' }), _react2.default.createElement('input', _extends({}, inputProps, {\n ref: function ref(_ref) {\n _this2.input = _ref;\n },\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n className: 'react-toggle-screenreader-only',\n type: 'checkbox' })));\n }\n }]);\n\n return Toggle;\n}(_react.PureComponent);\n\nexports.default = Toggle;\n\nToggle.displayName = 'Toggle';\n\nToggle.defaultProps = {\n icons: {\n checked: _react2.default.createElement(_check2.default, null),\n unchecked: _react2.default.createElement(_x2.default, null)\n }\n};\n\nToggle.propTypes = {\n checked: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n defaultChecked: _propTypes2.default.bool,\n onChange: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n className: _propTypes2.default.string,\n name: _propTypes2.default.string,\n value: _propTypes2.default.string,\n id: _propTypes2.default.string,\n 'aria-labelledby': _propTypes2.default.string,\n 'aria-label': _propTypes2.default.string,\n icons: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({\n checked: _propTypes2.default.node,\n unchecked: _propTypes2.default.node\n })])\n};\n\n/***/ }),\n\n/***/ 867:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nexports.default = function () {\n return _react2.default.createElement('svg', { width: '14', height: '11', viewBox: '0 0 14 11' }, _react2.default.createElement('title', null, 'switch-check'), _react2.default.createElement('path', { d: 'M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0', fill: '#fff', fillRule: 'evenodd' }));\n};\n\n/***/ }),\n\n/***/ 868:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\nexports.default = function () {\n return _react2.default.createElement('svg', { width: '10', height: '10', viewBox: '0 0 10 10' }, _react2.default.createElement('title', null, 'switch-x'), _react2.default.createElement('path', { d: 'M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12', fill: '#fff', fillRule: 'evenodd' }));\n};\n\n/***/ }),\n\n/***/ 869:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pointerCoord = pointerCoord;\n// Copyright 2015-present Drifty Co.\n// http://drifty.com/\n// from: https://github.com/driftyco/ionic/blob/master/src/util/dom.ts\n\nfunction pointerCoord(event) {\n // get coordinates for either a mouse click\n // or a touch depending on the given event\n if (event) {\n var changedTouches = event.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n var touch = changedTouches[0];\n return { x: touch.clientX, y: touch.clientY };\n }\n var pageX = event.pageX;\n if (pageX !== undefined) {\n return { x: pageX, y: event.pageY };\n }\n }\n return { x: 0, y: 0 };\n}\n\n/***/ }),\n\n/***/ 953:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_notification__ = __webpack_require__(954);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_compose__ = __webpack_require__(18);\n\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getNotification = Object(__WEBPACK_IMPORTED_MODULE_1__selectors__[\"d\" /* makeGetNotification */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n notification: getNotification(state, props.notification, props.accountId)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_notification__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 954:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Notification; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_account_container__ = __webpack_require__(841);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_hotkeys__ = __webpack_require__(156);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_hotkeys___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar Notification = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Notification, _ImmutablePureCompone);\n\n function Notification() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Notification);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleMoveUp = function () {\n var _this$props = _this.props,\n notification = _this$props.notification,\n onMoveUp = _this$props.onMoveUp;\n\n onMoveUp(notification.get('id'));\n }, _this.handleMoveDown = function () {\n var _this$props2 = _this.props,\n notification = _this$props2.notification,\n onMoveDown = _this$props2.onMoveDown;\n\n onMoveDown(notification.get('id'));\n }, _this.handleOpen = function () {\n var notification = _this.props.notification;\n\n\n if (notification.get('status')) {\n _this.context.router.history.push('/statuses/' + notification.get('status'));\n } else {\n _this.handleOpenProfile();\n }\n }, _this.handleOpenProfile = function () {\n var notification = _this.props.notification;\n\n _this.context.router.history.push('/accounts/' + notification.getIn(['account', 'id']));\n }, _this.handleMention = function (e) {\n e.preventDefault();\n\n var _this$props3 = _this.props,\n notification = _this$props3.notification,\n onMention = _this$props3.onMention;\n\n onMention(notification.get('account'), _this.context.router.history);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Notification.prototype.getHandlers = function getHandlers() {\n return {\n moveUp: this.handleMoveUp,\n moveDown: this.handleMoveDown,\n open: this.handleOpen,\n openProfile: this.handleOpenProfile,\n mention: this.handleMention,\n reply: this.handleMention\n };\n };\n\n Notification.prototype.renderFollow = function renderFollow(account, link) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__[\"HotKeys\"], {\n handlers: this.getHandlers()\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification notification-follow focusable',\n tabIndex: '0'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__favourite-icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-user-plus'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notification.follow',\n defaultMessage: '{name} followed you',\n values: { name: link }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_account_container__[\"a\" /* default */], {\n id: account.get('id'),\n withNote: false,\n hidden: this.props.hidden\n })));\n };\n\n Notification.prototype.renderMention = function renderMention(notification) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_status_container__[\"a\" /* default */], {\n id: notification.get('status'),\n withDismiss: true,\n hidden: this.props.hidden,\n onMoveDown: this.handleMoveDown,\n onMoveUp: this.handleMoveUp\n });\n };\n\n Notification.prototype.renderFavourite = function renderFavourite(notification, link) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__[\"HotKeys\"], {\n handlers: this.getHandlers()\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification notification-favourite focusable',\n tabIndex: '0'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__favourite-icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-star star-icon'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notification.favourite',\n defaultMessage: '{name} favourited your status',\n values: { name: link }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_status_container__[\"a\" /* default */], {\n id: notification.get('status'),\n account: notification.get('account'),\n muted: true,\n withDismiss: true,\n hidden: !!this.props.hidden\n })));\n };\n\n Notification.prototype.renderReblog = function renderReblog(notification, link) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_hotkeys__[\"HotKeys\"], {\n handlers: this.getHandlers()\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification notification-reblog focusable',\n tabIndex: '0'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__message'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'notification__favourite-icon-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-retweet'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notification.reblog',\n defaultMessage: '{name} boosted your status',\n values: { name: link }\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_status_container__[\"a\" /* default */], {\n id: notification.get('status'),\n account: notification.get('account'),\n muted: true,\n withDismiss: true,\n hidden: this.props.hidden\n })));\n };\n\n Notification.prototype.render = function render() {\n var notification = this.props.notification;\n\n var account = notification.get('account');\n var displayNameHtml = { __html: account.get('display_name_html') };\n var link = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('bdi', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_permalink__[\"a\" /* default */], {\n className: 'notification__display-name',\n href: account.get('url'),\n title: account.get('acct'),\n to: '/accounts/' + account.get('id'),\n dangerouslySetInnerHTML: displayNameHtml\n }));\n\n switch (notification.get('type')) {\n case 'follow':\n return this.renderFollow(account, link);\n case 'mention':\n return this.renderMention(notification);\n case 'favourite':\n return this.renderFavourite(notification, link);\n case 'reblog':\n return this.renderReblog(notification, link);\n }\n\n return null;\n };\n\n return Notification;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n notification: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool,\n onMoveUp: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onMoveDown: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onMention: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 955:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_column_settings__ = __webpack_require__(956);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_settings__ = __webpack_require__(57);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__actions_notifications__ = __webpack_require__(100);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_push_notifications__ = __webpack_require__(157);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_modal__ = __webpack_require__(26);\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_1_react_intl__[\"f\" /* defineMessages */])({\n clearMessage: {\n 'id': 'notifications.clear_confirmation',\n 'defaultMessage': 'Are you sure you want to permanently clear all your notifications?'\n },\n clearConfirm: {\n 'id': 'notifications.clear',\n 'defaultMessage': 'Clear notifications'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n settings: state.getIn(['settings', 'notifications']),\n pushSettings: state.get('push_notifications')\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onChange: function onChange(path, checked) {\n if (path[0] === 'push') {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_push_notifications__[\"e\" /* changeAlerts */])(path.slice(1), checked));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_settings__[\"c\" /* changeSetting */])(['notifications'].concat(path), checked));\n }\n },\n onClear: function onClear() {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.clearMessage),\n confirm: intl.formatMessage(messages.clearConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_4__actions_notifications__[\"g\" /* clearNotifications */])());\n }\n }));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_column_settings__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 956:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnSettings; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__clear_column_button__ = __webpack_require__(957);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__setting_toggle__ = __webpack_require__(865);\n\n\n\n\n\n\n\n\n\n\nvar ColumnSettings = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnSettings, _React$PureComponent);\n\n function ColumnSettings() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnSettings);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onPushChange = function (path, checked) {\n _this.props.onChange(['push'].concat(path), checked);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnSettings.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n pushSettings = _props.pushSettings,\n onChange = _props.onChange,\n onClear = _props.onClear;\n\n\n var alertStr = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.alert',\n defaultMessage: 'Desktop notifications'\n });\n var showStr = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.show',\n defaultMessage: 'Show in column'\n });\n var soundStr = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.sound',\n defaultMessage: 'Play sound'\n });\n\n var showPushSettings = pushSettings.get('browserSupport') && pushSettings.get('isSubscribed');\n var pushStr = showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.push',\n defaultMessage: 'Push notifications'\n });\n var pushMeta = showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.push_meta',\n defaultMessage: 'This device'\n });\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__clear_column_button__[\"a\" /* default */], {\n onClick: onClear\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'group',\n 'aria-labelledby': 'notifications-follow'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n id: 'notifications-follow',\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.follow',\n defaultMessage: 'New followers:'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_desktop',\n settings: settings,\n settingPath: ['alerts', 'follow'],\n onChange: onChange,\n label: alertStr\n }), showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_push',\n settings: pushSettings,\n settingPath: ['alerts', 'follow'],\n meta: pushMeta,\n onChange: this.onPushChange,\n label: pushStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['shows', 'follow'],\n onChange: onChange,\n label: showStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['sounds', 'follow'],\n onChange: onChange,\n label: soundStr\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'group',\n 'aria-labelledby': 'notifications-favourite'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n id: 'notifications-favourite',\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.favourite',\n defaultMessage: 'Favourites:'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_desktop',\n settings: settings,\n settingPath: ['alerts', 'favourite'],\n onChange: onChange,\n label: alertStr\n }), showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_push',\n settings: pushSettings,\n settingPath: ['alerts', 'favourite'],\n meta: pushMeta,\n onChange: this.onPushChange,\n label: pushStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['shows', 'favourite'],\n onChange: onChange,\n label: showStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['sounds', 'favourite'],\n onChange: onChange,\n label: soundStr\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'group',\n 'aria-labelledby': 'notifications-mention'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n id: 'notifications-mention',\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.mention',\n defaultMessage: 'Mentions:'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_desktop',\n settings: settings,\n settingPath: ['alerts', 'mention'],\n onChange: onChange,\n label: alertStr\n }), showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_push',\n settings: pushSettings,\n settingPath: ['alerts', 'mention'],\n meta: pushMeta,\n onChange: this.onPushChange,\n label: pushStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['shows', 'mention'],\n onChange: onChange,\n label: showStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['sounds', 'mention'],\n onChange: onChange,\n label: soundStr\n }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'group',\n 'aria-labelledby': 'notifications-reblog'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n id: 'notifications-reblog',\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.column_settings.reblog',\n defaultMessage: 'Boosts:'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_desktop',\n settings: settings,\n settingPath: ['alerts', 'reblog'],\n onChange: onChange,\n label: alertStr\n }), showPushSettings && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications_push',\n settings: pushSettings,\n settingPath: ['alerts', 'reblog'],\n meta: pushMeta,\n onChange: this.onPushChange,\n label: pushStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['shows', 'reblog'],\n onChange: onChange,\n label: showStr\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__setting_toggle__[\"a\" /* default */], {\n prefix: 'notifications',\n settings: settings,\n settingPath: ['sounds', 'reblog'],\n onChange: onChange,\n label: soundStr\n }))));\n };\n\n return ColumnSettings;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 957:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ClearColumnButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar ClearColumnButton = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ClearColumnButton, _React$PureComponent);\n\n function ClearColumnButton() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ClearColumnButton);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n ClearColumnButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'text-btn column-header__setting-btn',\n tabIndex: '0',\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-eraser'\n }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'notifications.clear',\n defaultMessage: 'Clear notifications'\n }));\n };\n\n return ClearColumnButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/notifications.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { expandNotifications, scrollTopNotifications } from '../../actions/notifications';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport NotificationContainer from './containers/notification_container';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ColumnSettingsContainer from './containers/column_settings_container';\nimport { createSelector } from 'reselect';\nimport { List as ImmutableList } from 'immutable';\nimport { debounce } from 'lodash';\nimport ScrollableList from '../../components/scrollable_list';\nimport LoadMore from '../../components/load_more';\n\nconst messages = defineMessages({\n title: { id: 'column.notifications', defaultMessage: 'Notifications' },\n});\n\nconst getNotifications = createSelector([\n state => ImmutableList(state.getIn(['settings', 'notifications', 'shows']).filter(item => !item).keys()),\n state => state.getIn(['notifications', 'items']),\n], (excludedTypes, notifications) => notifications.filterNot(item => item !== null && excludedTypes.includes(item.get('type'))));\n\nclass LoadGap extends React.PureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nconst mapStateToProps = state => ({\n notifications: getNotifications(state),\n isLoading: state.getIn(['notifications', 'isLoading'], true),\n isUnread: state.getIn(['notifications', 'unread']) > 0,\n hasMore: state.getIn(['notifications', 'hasMore']),\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Notifications extends React.PureComponent {\n\n static propTypes = {\n columnId: PropTypes.string,\n notifications: ImmutablePropTypes.list.isRequired,\n dispatch: PropTypes.func.isRequired,\n shouldUpdateScroll: PropTypes.func,\n intl: PropTypes.object.isRequired,\n isLoading: PropTypes.bool,\n isUnread: PropTypes.bool,\n multiColumn: PropTypes.bool,\n hasMore: PropTypes.bool,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n componentWillUnmount () {\n this.handleLoadOlder.cancel();\n this.handleScrollToTop.cancel();\n this.handleScroll.cancel();\n this.props.dispatch(scrollTopNotifications(false));\n }\n\n handleLoadGap = (maxId) => {\n this.props.dispatch(expandNotifications({ maxId }));\n };\n\n handleLoadOlder = debounce(() => {\n const last = this.props.notifications.last();\n this.props.dispatch(expandNotifications({ maxId: last && last.get('id') }));\n }, 300, { leading: true });\n\n handleScrollToTop = debounce(() => {\n this.props.dispatch(scrollTopNotifications(true));\n }, 100);\n\n handleScroll = debounce(() => {\n this.props.dispatch(scrollTopNotifications(false));\n }, 100);\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('NOTIFICATIONS', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n setColumnRef = c => {\n this.column = c;\n }\n\n handleMoveUp = id => {\n const elementIndex = this.props.notifications.findIndex(item => item !== null && item.get('id') === id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.notifications.findIndex(item => item !== null && item.get('id') === id) + 1;\n this._selectChild(elementIndex);\n }\n\n _selectChild (index) {\n const element = this.column.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n render () {\n const { intl, notifications, shouldUpdateScroll, isLoading, isUnread, columnId, multiColumn, hasMore } = this.props;\n const pinned = !!columnId;\n const emptyMessage = <FormattedMessage id='empty_column.notifications' defaultMessage=\"You don't have any notifications yet. Interact with others to start the conversation.\" />;\n\n let scrollableContent = null;\n\n if (isLoading && this.scrollableContent) {\n scrollableContent = this.scrollableContent;\n } else if (notifications.size > 0 || hasMore) {\n scrollableContent = notifications.map((item, index) => item === null ? (\n <LoadGap\n key={'gap:' + notifications.getIn([index + 1, 'id'])}\n disabled={isLoading}\n maxId={index > 0 ? notifications.getIn([index - 1, 'id']) : null}\n onClick={this.handleLoadGap}\n />\n ) : (\n <NotificationContainer\n key={item.get('id')}\n notification={item}\n accountId={item.get('account')}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ));\n } else {\n scrollableContent = null;\n }\n\n this.scrollableContent = scrollableContent;\n\n const scrollContainer = (\n <ScrollableList\n scrollKey={`notifications-${columnId}`}\n trackScroll={!pinned}\n isLoading={isLoading}\n hasMore={hasMore}\n emptyMessage={emptyMessage}\n onLoadMore={this.handleLoadOlder}\n onScrollToTop={this.handleScrollToTop}\n onScroll={this.handleScroll}\n shouldUpdateScroll={shouldUpdateScroll}\n >\n {scrollableContent}\n </ScrollableList>\n );\n\n return (\n <Column ref={this.setColumnRef}>\n <ColumnHeader\n icon='bell'\n active={isUnread}\n title={intl.formatMessage(messages.title)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <ColumnSettingsContainer />\n </ColumnHeader>\n\n {scrollContainer}\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Toggle from 'react-toggle';\n\nexport default class SettingToggle extends React.PureComponent {\n\n static propTypes = {\n prefix: PropTypes.string,\n settings: ImmutablePropTypes.map.isRequired,\n settingPath: PropTypes.array.isRequired,\n label: PropTypes.node.isRequired,\n meta: PropTypes.node,\n onChange: PropTypes.func.isRequired,\n }\n\n onChange = ({ target }) => {\n this.props.onChange(this.props.settingPath, target.checked);\n }\n\n render () {\n const { prefix, settings, settingPath, label, meta } = this.props;\n const id = ['setting-toggle', prefix, ...settingPath].filter(Boolean).join('-');\n\n return (\n <div className='setting-toggle'>\n <Toggle id={id} checked={settings.getIn(settingPath)} onChange={this.onChange} onKeyDown={this.onKeyDown} />\n <label htmlFor={id} className='setting-toggle__label'>{label}</label>\n {meta && <span className='setting-meta__label'>{meta}</span>}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/setting_toggle.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _check = require('./check');\n\nvar _check2 = _interopRequireDefault(_check);\n\nvar _x = require('./x');\n\nvar _x2 = _interopRequireDefault(_x);\n\nvar _util = require('./util');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Toggle = function (_PureComponent) {\n _inherits(Toggle, _PureComponent);\n\n function Toggle(props) {\n _classCallCheck(this, Toggle);\n\n var _this = _possibleConstructorReturn(this, (Toggle.__proto__ || Object.getPrototypeOf(Toggle)).call(this, props));\n\n _this.handleClick = _this.handleClick.bind(_this);\n _this.handleTouchStart = _this.handleTouchStart.bind(_this);\n _this.handleTouchMove = _this.handleTouchMove.bind(_this);\n _this.handleTouchEnd = _this.handleTouchEnd.bind(_this);\n _this.handleFocus = _this.handleFocus.bind(_this);\n _this.handleBlur = _this.handleBlur.bind(_this);\n _this.previouslyChecked = !!(props.checked || props.defaultChecked);\n _this.state = {\n checked: !!(props.checked || props.defaultChecked),\n hasFocus: false\n };\n return _this;\n }\n\n _createClass(Toggle, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if ('checked' in nextProps) {\n this.setState({ checked: !!nextProps.checked });\n }\n }\n }, {\n key: 'handleClick',\n value: function handleClick(event) {\n var checkbox = this.input;\n if (event.target !== checkbox && !this.moved) {\n this.previouslyChecked = checkbox.checked;\n event.preventDefault();\n checkbox.focus();\n checkbox.click();\n return;\n }\n\n var checked = this.props.hasOwnProperty('checked') ? this.props.checked : checkbox.checked;\n\n this.setState({ checked: checked });\n }\n }, {\n key: 'handleTouchStart',\n value: function handleTouchStart(event) {\n this.startX = (0, _util.pointerCoord)(event).x;\n this.activated = true;\n }\n }, {\n key: 'handleTouchMove',\n value: function handleTouchMove(event) {\n if (!this.activated) return;\n this.moved = true;\n\n if (this.startX) {\n var currentX = (0, _util.pointerCoord)(event).x;\n if (this.state.checked && currentX + 15 < this.startX) {\n this.setState({ checked: false });\n this.startX = currentX;\n this.activated = true;\n } else if (currentX - 15 > this.startX) {\n this.setState({ checked: true });\n this.startX = currentX;\n this.activated = currentX < this.startX + 5;\n }\n }\n }\n }, {\n key: 'handleTouchEnd',\n value: function handleTouchEnd(event) {\n if (!this.moved) return;\n var checkbox = this.input;\n event.preventDefault();\n\n if (this.startX) {\n var endX = (0, _util.pointerCoord)(event).x;\n if (this.previouslyChecked === true && this.startX + 4 > endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: false });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n } else if (this.startX - 4 < endX) {\n if (this.previouslyChecked !== this.state.checked) {\n this.setState({ checked: true });\n this.previouslyChecked = this.state.checked;\n checkbox.click();\n }\n }\n\n this.activated = false;\n this.startX = null;\n this.moved = false;\n }\n }\n }, {\n key: 'handleFocus',\n value: function handleFocus(event) {\n var onFocus = this.props.onFocus;\n\n\n if (onFocus) {\n onFocus(event);\n }\n\n this.setState({ hasFocus: true });\n }\n }, {\n key: 'handleBlur',\n value: function handleBlur(event) {\n var onBlur = this.props.onBlur;\n\n\n if (onBlur) {\n onBlur(event);\n }\n\n this.setState({ hasFocus: false });\n }\n }, {\n key: 'getIcon',\n value: function getIcon(type) {\n var icons = this.props.icons;\n\n if (!icons) {\n return null;\n }\n return icons[type] === undefined ? Toggle.defaultProps.icons[type] : icons[type];\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n className = _props.className,\n _icons = _props.icons,\n inputProps = _objectWithoutProperties(_props, ['className', 'icons']);\n\n var classes = (0, _classnames2.default)('react-toggle', {\n 'react-toggle--checked': this.state.checked,\n 'react-toggle--focus': this.state.hasFocus,\n 'react-toggle--disabled': this.props.disabled\n }, className);\n\n return _react2.default.createElement(\n 'div',\n { className: classes,\n onClick: this.handleClick,\n onTouchStart: this.handleTouchStart,\n onTouchMove: this.handleTouchMove,\n onTouchEnd: this.handleTouchEnd },\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track' },\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track-check' },\n this.getIcon('checked')\n ),\n _react2.default.createElement(\n 'div',\n { className: 'react-toggle-track-x' },\n this.getIcon('unchecked')\n )\n ),\n _react2.default.createElement('div', { className: 'react-toggle-thumb' }),\n _react2.default.createElement('input', _extends({}, inputProps, {\n ref: function ref(_ref) {\n _this2.input = _ref;\n },\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n className: 'react-toggle-screenreader-only',\n type: 'checkbox' }))\n );\n }\n }]);\n\n return Toggle;\n}(_react.PureComponent);\n\nexports.default = Toggle;\n\n\nToggle.displayName = 'Toggle';\n\nToggle.defaultProps = {\n icons: {\n checked: _react2.default.createElement(_check2.default, null),\n unchecked: _react2.default.createElement(_x2.default, null)\n }\n};\n\nToggle.propTypes = {\n checked: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n defaultChecked: _propTypes2.default.bool,\n onChange: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n className: _propTypes2.default.string,\n name: _propTypes2.default.string,\n value: _propTypes2.default.string,\n id: _propTypes2.default.string,\n 'aria-labelledby': _propTypes2.default.string,\n 'aria-label': _propTypes2.default.string,\n icons: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({\n checked: _propTypes2.default.node,\n unchecked: _propTypes2.default.node\n })])\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/index.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n return _react2.default.createElement(\n 'svg',\n { width: '14', height: '11', viewBox: '0 0 14 11' },\n _react2.default.createElement(\n 'title',\n null,\n 'switch-check'\n ),\n _react2.default.createElement('path', { d: 'M11.264 0L5.26 6.004 2.103 2.847 0 4.95l5.26 5.26 8.108-8.107L11.264 0', fill: '#fff', fillRule: 'evenodd' })\n );\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/check.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n return _react2.default.createElement(\n 'svg',\n { width: '10', height: '10', viewBox: '0 0 10 10' },\n _react2.default.createElement(\n 'title',\n null,\n 'switch-x'\n ),\n _react2.default.createElement('path', { d: 'M9.9 2.12L7.78 0 4.95 2.828 2.12 0 0 2.12l2.83 2.83L0 7.776 2.123 9.9 4.95 7.07 7.78 9.9 9.9 7.776 7.072 4.95 9.9 2.12', fill: '#fff', fillRule: 'evenodd' })\n );\n};\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/x.js","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pointerCoord = pointerCoord;\n// Copyright 2015-present Drifty Co.\n// http://drifty.com/\n// from: https://github.com/driftyco/ionic/blob/master/src/util/dom.ts\n\nfunction pointerCoord(event) {\n // get coordinates for either a mouse click\n // or a touch depending on the given event\n if (event) {\n var changedTouches = event.changedTouches;\n if (changedTouches && changedTouches.length > 0) {\n var touch = changedTouches[0];\n return { x: touch.clientX, y: touch.clientY };\n }\n var pageX = event.pageX;\n if (pageX !== undefined) {\n return { x: pageX, y: event.pageY };\n }\n }\n return { x: 0, y: 0 };\n}\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-toggle/dist/component/util.js","import { connect } from 'react-redux';\nimport { makeGetNotification } from '../../../selectors';\nimport Notification from '../components/notification';\nimport { mentionCompose } from '../../../actions/compose';\n\nconst makeMapStateToProps = () => {\n const getNotification = makeGetNotification();\n\n const mapStateToProps = (state, props) => ({\n notification: getNotification(state, props.notification, props.accountId),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = dispatch => ({\n onMention: (account, router) => {\n dispatch(mentionCompose(account, router));\n },\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(Notification);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/containers/notification_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport StatusContainer from '../../../containers/status_container';\nimport AccountContainer from '../../../containers/account_container';\nimport { FormattedMessage } from 'react-intl';\nimport Permalink from '../../../components/permalink';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { HotKeys } from 'react-hotkeys';\n\nexport default class Notification extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n notification: ImmutablePropTypes.map.isRequired,\n hidden: PropTypes.bool,\n onMoveUp: PropTypes.func.isRequired,\n onMoveDown: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n };\n\n handleMoveUp = () => {\n const { notification, onMoveUp } = this.props;\n onMoveUp(notification.get('id'));\n }\n\n handleMoveDown = () => {\n const { notification, onMoveDown } = this.props;\n onMoveDown(notification.get('id'));\n }\n\n handleOpen = () => {\n const { notification } = this.props;\n\n if (notification.get('status')) {\n this.context.router.history.push(`/statuses/${notification.get('status')}`);\n } else {\n this.handleOpenProfile();\n }\n }\n\n handleOpenProfile = () => {\n const { notification } = this.props;\n this.context.router.history.push(`/accounts/${notification.getIn(['account', 'id'])}`);\n }\n\n handleMention = e => {\n e.preventDefault();\n\n const { notification, onMention } = this.props;\n onMention(notification.get('account'), this.context.router.history);\n }\n\n getHandlers () {\n return {\n moveUp: this.handleMoveUp,\n moveDown: this.handleMoveDown,\n open: this.handleOpen,\n openProfile: this.handleOpenProfile,\n mention: this.handleMention,\n reply: this.handleMention,\n };\n }\n\n renderFollow (account, link) {\n return (\n <HotKeys handlers={this.getHandlers()}>\n <div className='notification notification-follow focusable' tabIndex='0'>\n <div className='notification__message'>\n <div className='notification__favourite-icon-wrapper'>\n <i className='fa fa-fw fa-user-plus' />\n </div>\n\n <FormattedMessage id='notification.follow' defaultMessage='{name} followed you' values={{ name: link }} />\n </div>\n\n <AccountContainer id={account.get('id')} withNote={false} hidden={this.props.hidden} />\n </div>\n </HotKeys>\n );\n }\n\n renderMention (notification) {\n return (\n <StatusContainer\n id={notification.get('status')}\n withDismiss\n hidden={this.props.hidden}\n onMoveDown={this.handleMoveDown}\n onMoveUp={this.handleMoveUp}\n />\n );\n }\n\n renderFavourite (notification, link) {\n return (\n <HotKeys handlers={this.getHandlers()}>\n <div className='notification notification-favourite focusable' tabIndex='0'>\n <div className='notification__message'>\n <div className='notification__favourite-icon-wrapper'>\n <i className='fa fa-fw fa-star star-icon' />\n </div>\n <FormattedMessage id='notification.favourite' defaultMessage='{name} favourited your status' values={{ name: link }} />\n </div>\n\n <StatusContainer id={notification.get('status')} account={notification.get('account')} muted withDismiss hidden={!!this.props.hidden} />\n </div>\n </HotKeys>\n );\n }\n\n renderReblog (notification, link) {\n return (\n <HotKeys handlers={this.getHandlers()}>\n <div className='notification notification-reblog focusable' tabIndex='0'>\n <div className='notification__message'>\n <div className='notification__favourite-icon-wrapper'>\n <i className='fa fa-fw fa-retweet' />\n </div>\n <FormattedMessage id='notification.reblog' defaultMessage='{name} boosted your status' values={{ name: link }} />\n </div>\n\n <StatusContainer id={notification.get('status')} account={notification.get('account')} muted withDismiss hidden={this.props.hidden} />\n </div>\n </HotKeys>\n );\n }\n\n render () {\n const { notification } = this.props;\n const account = notification.get('account');\n const displayNameHtml = { __html: account.get('display_name_html') };\n const link = <bdi><Permalink className='notification__display-name' href={account.get('url')} title={account.get('acct')} to={`/accounts/${account.get('id')}`} dangerouslySetInnerHTML={displayNameHtml} /></bdi>;\n\n switch(notification.get('type')) {\n case 'follow':\n return this.renderFollow(account, link);\n case 'mention':\n return this.renderMention(notification);\n case 'favourite':\n return this.renderFavourite(notification, link);\n case 'reblog':\n return this.renderReblog(notification, link);\n }\n\n return null;\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/notification.js","import { connect } from 'react-redux';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ColumnSettings from '../components/column_settings';\nimport { changeSetting } from '../../../actions/settings';\nimport { clearNotifications } from '../../../actions/notifications';\nimport { changeAlerts as changePushNotifications } from '../../../actions/push_notifications';\nimport { openModal } from '../../../actions/modal';\n\nconst messages = defineMessages({\n clearMessage: { id: 'notifications.clear_confirmation', defaultMessage: 'Are you sure you want to permanently clear all your notifications?' },\n clearConfirm: { id: 'notifications.clear', defaultMessage: 'Clear notifications' },\n});\n\nconst mapStateToProps = state => ({\n settings: state.getIn(['settings', 'notifications']),\n pushSettings: state.get('push_notifications'),\n});\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onChange (path, checked) {\n if (path[0] === 'push') {\n dispatch(changePushNotifications(path.slice(1), checked));\n } else {\n dispatch(changeSetting(['notifications', ...path], checked));\n }\n },\n\n onClear () {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.clearMessage),\n confirm: intl.formatMessage(messages.clearConfirm),\n onConfirm: () => dispatch(clearNotifications()),\n }));\n },\n\n});\n\nexport default injectIntl(connect(mapStateToProps, mapDispatchToProps)(ColumnSettings));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/containers/column_settings_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport ClearColumnButton from './clear_column_button';\nimport SettingToggle from './setting_toggle';\n\nexport default class ColumnSettings extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n pushSettings: ImmutablePropTypes.map.isRequired,\n onChange: PropTypes.func.isRequired,\n onClear: PropTypes.func.isRequired,\n };\n\n onPushChange = (path, checked) => {\n this.props.onChange(['push', ...path], checked);\n }\n\n render () {\n const { settings, pushSettings, onChange, onClear } = this.props;\n\n const alertStr = <FormattedMessage id='notifications.column_settings.alert' defaultMessage='Desktop notifications' />;\n const showStr = <FormattedMessage id='notifications.column_settings.show' defaultMessage='Show in column' />;\n const soundStr = <FormattedMessage id='notifications.column_settings.sound' defaultMessage='Play sound' />;\n\n const showPushSettings = pushSettings.get('browserSupport') && pushSettings.get('isSubscribed');\n const pushStr = showPushSettings && <FormattedMessage id='notifications.column_settings.push' defaultMessage='Push notifications' />;\n const pushMeta = showPushSettings && <FormattedMessage id='notifications.column_settings.push_meta' defaultMessage='This device' />;\n\n return (\n <div>\n <div className='column-settings__row'>\n <ClearColumnButton onClick={onClear} />\n </div>\n\n <div role='group' aria-labelledby='notifications-follow'>\n <span id='notifications-follow' className='column-settings__section'><FormattedMessage id='notifications.column_settings.follow' defaultMessage='New followers:' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'follow']} onChange={onChange} label={alertStr} />\n {showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'follow']} meta={pushMeta} onChange={this.onPushChange} label={pushStr} />}\n <SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'follow']} onChange={onChange} label={showStr} />\n <SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'follow']} onChange={onChange} label={soundStr} />\n </div>\n </div>\n\n <div role='group' aria-labelledby='notifications-favourite'>\n <span id='notifications-favourite' className='column-settings__section'><FormattedMessage id='notifications.column_settings.favourite' defaultMessage='Favourites:' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'favourite']} onChange={onChange} label={alertStr} />\n {showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'favourite']} meta={pushMeta} onChange={this.onPushChange} label={pushStr} />}\n <SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'favourite']} onChange={onChange} label={showStr} />\n <SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'favourite']} onChange={onChange} label={soundStr} />\n </div>\n </div>\n\n <div role='group' aria-labelledby='notifications-mention'>\n <span id='notifications-mention' className='column-settings__section'><FormattedMessage id='notifications.column_settings.mention' defaultMessage='Mentions:' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'mention']} onChange={onChange} label={alertStr} />\n {showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'mention']} meta={pushMeta} onChange={this.onPushChange} label={pushStr} />}\n <SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'mention']} onChange={onChange} label={showStr} />\n <SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'mention']} onChange={onChange} label={soundStr} />\n </div>\n </div>\n\n <div role='group' aria-labelledby='notifications-reblog'>\n <span id='notifications-reblog' className='column-settings__section'><FormattedMessage id='notifications.column_settings.reblog' defaultMessage='Boosts:' /></span>\n\n <div className='column-settings__row'>\n <SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'reblog']} onChange={onChange} label={alertStr} />\n {showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'reblog']} meta={pushMeta} onChange={this.onPushChange} label={pushStr} />}\n <SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'reblog']} onChange={onChange} label={showStr} />\n <SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'reblog']} onChange={onChange} label={soundStr} />\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/column_settings.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\n\nexport default class ClearColumnButton extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func.isRequired,\n };\n\n render () {\n return (\n <button className='text-btn column-header__setting-btn' tabIndex='0' onClick={this.props.onClick}><i className='fa fa-eraser' /> <FormattedMessage id='notifications.clear' defaultMessage='Clear notifications' /></button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/notifications/components/clear_column_button.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/public_timeline.js b/priv/static/packs/features/public_timeline.js index c730d1c34..b3755fc85 100644 --- a/priv/static/packs/features/public_timeline.js +++ b/priv/static/packs/features/public_timeline.js @@ -1,2 +1,2 @@ -webpackJsonp([8],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},283:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(153),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),p=n(283),f=n(151),g=n(26),v=n(6),b=n(11),m=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!b.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(b.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.k)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(93),f=n.n(p),g=n(0),v=n.n(g),b=n(152),m=n(5),y=n.n(m),M=n(288),O=n(149),I=n(293),C=n(8),j=(n.n(C),n(10)),k=n.n(j),_=n(154),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new I.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(_.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(_.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(_.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof C.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,p=v.a.Children.count(n),f=c&&p>0&&d?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||p>0||!u?v.a.createElement("div",{className:k()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(b.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),u=n.n(l),d=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),u=n.n(l),d=n(2),h=n.n(d),p=n(1),f=n.n(p),g=n(3),v=n.n(g),b=n(4),m=n.n(b),y=n(34),M=n.n(y),O=n(0),I=n.n(O),C=n(13),j=n.n(C),k=n(5),_=n.n(k),L=n(285),S=n(12),x=n.n(S),R=n(149),H=n(287),T=n(6),P=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,v()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(R.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(x.a),o.propTypes={disabled:_.a.bool,maxId:_.a.string,onClick:_.a.func.isRequired},i),w=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,v()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(T.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(T.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(P,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return I.a.createElement(H.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(x.a),r.propTypes={scrollKey:_.a.string.isRequired,statusIds:j.a.list.isRequired,onLoadMore:_.a.func,onScrollToTop:_.a.func,onScroll:_.a.func,trackScroll:_.a.bool,shouldUpdateScroll:_.a.func,isLoading:_.a.bool,isPartial:_.a.bool,hasMore:_.a.bool,prepend:_.a.node,emptyMessage:_.a.node},r.defaultProps={trackScroll:!0},s)},807:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return _});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(9),v=n(92),b=n(69),m=n(68),y=n(19),M=n(297),O=n(6),I=n(962),C=n(70),j=Object(O.f)({title:{id:"column.public",defaultMessage:"Federated timeline"}}),k=function(e){return{hasUnread:e.getIn(["timelines","public","unread"])>0}},_=(o=Object(g.connect)(k))(i=Object(O.g)(i=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(M.f)(t):Object(M.d)("PUBLIC",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(M.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){o.props.dispatch(Object(y.q)({maxId:e}))},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){var e=this.props.dispatch;e(Object(y.q)()),this.disconnect=e(Object(C.d)())},t.prototype.componentWillUnmount=function(){this.disconnect&&(this.disconnect(),this.disconnect=null)},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.columnId,o=e.hasUnread,i=e.multiColumn,r=!!n;return f.a.createElement(b.a,{ref:this.setRef},s()(m.a,{icon:"globe",active:o,title:t.formatMessage(j.title),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:r,multiColumn:i},void 0,s()(I.a,{})),s()(v.a,{timelineId:"public",onLoadMore:this.handleLoadMore,trackScroll:!r,scrollKey:"public_timeline-"+n,emptyMessage:s()(O.b,{id:"empty_column.public",defaultMessage:"There is nothing here! Write something publicly, or manually follow users from other instances to fill it up"})}))},t}(f.a.PureComponent))||i)||i},861:function(e,t,n){"use strict";n.d(t,"a",function(){return p});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),p=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleChange=function(e){o.props.onChange(o.props.settingKey,e.target.value)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.settingKey,o=e.label;return i()("label",{},void 0,i()("span",{style:{display:"none"}},void 0,o),i()("input",{className:"setting-text",value:t.getIn(n),onChange:this.handleChange,placeholder:o}))},t}(h.a.PureComponent)},872:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i=n(2),r=n.n(i),s=n(1),a=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),h=n(0),p=n.n(h),f=n(6),g=n(861),v=Object(f.f)({filter_regex:{id:"home.column_settings.filter_regex",defaultMessage:"Filter out by regular expressions"},settings:{id:"home.settings",defaultMessage:"Column settings"}}),b=Object(f.g)(o=function(e){function t(){return a()(this,t),l()(this,e.apply(this,arguments))}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.onChange,o=e.intl;return r()("div",{},void 0,r()("span",{className:"column-settings__section"},void 0,r()(f.b,{id:"home.column_settings.advanced",defaultMessage:"Advanced"})),r()("div",{className:"column-settings__row"},void 0,r()(g.a,{settings:t,settingKey:["regex","body"],onChange:n,label:o.formatMessage(v.filter_regex)})))},t}(p.a.PureComponent))||o},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),u=(n.n(l),n(11)),d=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===u.g)),r&&i&&o.get("account")!==u.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=d();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},p=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,p)(s.a)},962:function(e,t,n){"use strict";var o=n(9),i=n(872),r=n(57),s=function(e){return{settings:e.getIn(["settings","public"])}},a=function(e){return{onChange:function(t,n){e(Object(r.c)(["public"].concat(t),n))}}};t.a=Object(o.connect)(s,a)(i.a)}}); +webpackJsonp([8],{149:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(6),v=(i=o=function(e){function t(){return c()(this,t),u()(this,e.apply(this,arguments))}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.disabled,n=e.visible;return s()("button",{className:"load-more",disabled:t||!n,style:{visibility:n?"visible":"hidden"},onClick:this.props.onClick},void 0,s()(g.b,{id:"status.load_more",defaultMessage:"Load more"}))},t}(f.a.PureComponent),o.defaultProps={visible:!0},i)},282:function(e,t,n){"use strict";function o(e){return function(t){t({type:r,account:e}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(n(14),n(22),n(15),n(26)),r="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";function o(e,t){return function(n){n({type:r,account:e,status:t}),n(Object(i.d)("REPORT"))}}t.a=o;var i=(n(14),n(26)),r="REPORT_INIT"},285:function(e,t,n){"use strict";var o=n(2),i=n.n(o),r=n(0),s=(n.n(r),n(9)),a=n(152),c=n(66),l=n(18),u=n(67),d=n(22),h=n(91),p=n(282),f=n(284),g=n(26),v=n(6),b=n(11),m=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(c.e)();return function(t,n){return{status:e(t,n.id)}}},M=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(l.T)(t,n))},onModalReblog:function(t){e(Object(u.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(u.n)(t)):n.shiftKey||!b.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(u.m)(t):Object(u.i)(t))},onDelete:function(t){e(b.e?Object(g.d)("CONFIRM",{message:n.formatMessage(m.deleteMessage),confirm:n.formatMessage(m.deleteConfirm),onConfirm:function(){return e(Object(h.f)(t.get("id")))}}):Object(h.f)(t.get("id")))},onMention:function(t,n){e(Object(l.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(m.blockConfirm),onConfirm:function(){return e(Object(d.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.a)(t.get("account"),t))},onMute:function(t){e(Object(p.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(h.k)(t.get("id")):Object(h.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(h.j)(t.get("id")):Object(h.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,M)(a.a))},287:function(e,t,n){"use strict";n.d(t,"a",function(){return L});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(93),f=n.n(p),g=n(0),v=n.n(g),b=n(151),m=n(5),y=n.n(m),M=n(288),O=n(149),I=n(293),C=n(8),j=(n.n(C),n(10)),_=n.n(j),k=n(153),L=(i=o=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.state={lastMouseMove:null},o.intersectionObserverWrapper=new I.a,o.handleScroll=f()(function(){if(o.node){var e=o.node,t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight,r=n-t-i;o._oldScrollPosition=n-t,400>r&&o.props.onLoadMore&&!o.props.isLoading&&o.props.onLoadMore(),t<100&&o.props.onScrollToTop?o.props.onScrollToTop():o.props.onScroll&&o.props.onScroll()}},150,{trailing:!0}),o.handleMouseMove=f()(function(){o._lastMouseMove=new Date},300),o.handleMouseLeave=function(){o._lastMouseMove=null},o.onFullScreenChange=function(){o.setState({fullscreen:Object(k.d)()})},o.setRef=function(e){o.node=e},o.handleLoadMore=function(e){e.preventDefault(),o.props.onLoadMore()},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){this.attachScrollListener(),this.attachIntersectionObserver(),Object(k.a)(this.onFullScreenChange),this.handleScroll()},t.prototype.componentDidUpdate=function(e){if(v.a.Children.count(e.children)>0&&v.a.Children.count(e.children)<v.a.Children.count(this.props.children)&&this.getFirstChildKey(e)!==this.getFirstChildKey(this.props)&&this._oldScrollPosition&&this.node.scrollTop>0){var t=this.node.scrollHeight-this._oldScrollPosition;this.node.scrollTop!==t&&(this.node.scrollTop=t)}else this._oldScrollPosition=this.node.scrollHeight-this.node.scrollTop},t.prototype.componentWillUnmount=function(){this.detachScrollListener(),this.detachIntersectionObserver(),Object(k.b)(this.onFullScreenChange)},t.prototype.attachIntersectionObserver=function(){this.intersectionObserverWrapper.connect({root:this.node,rootMargin:"300% 0px"})},t.prototype.detachIntersectionObserver=function(){this.intersectionObserverWrapper.disconnect()},t.prototype.attachScrollListener=function(){this.node.addEventListener("scroll",this.handleScroll)},t.prototype.detachScrollListener=function(){this.node.removeEventListener("scroll",this.handleScroll)},t.prototype.getFirstChildKey=function(e){var t=e.children,n=t;return t instanceof C.List?n=t.get(0):Array.isArray(t)&&(n=t[0]),n&&n.key},t.prototype._recentlyMoved=function(){return null!==this._lastMouseMove&&new Date-this._lastMouseMove<600},t.prototype.render=function(){var e=this,t=this.props,n=t.children,o=t.scrollKey,i=t.trackScroll,r=t.shouldUpdateScroll,a=t.isLoading,c=t.hasMore,l=t.prepend,u=t.emptyMessage,d=t.onLoadMore,h=this.state.fullscreen,p=v.a.Children.count(n),f=c&&p>0&&d?s()(O.a,{visible:!a,onClick:this.handleLoadMore}):null,g=null;return g=a||p>0||!u?v.a.createElement("div",{className:_()("scrollable",{fullscreen:h}),ref:this.setRef,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave},s()("div",{role:"feed",className:"item-list"},void 0,l,v.a.Children.map(this.props.children,function(t,n){return s()(M.a,{id:t.key,index:n,listLength:p,intersectionObserverWrapper:e.intersectionObserverWrapper,saveHeightKey:i?e.context.router.route.location.key+":"+o:null},t.key,t)}),f)):v.a.createElement("div",{className:"empty-column-indicator",ref:this.setRef},u),i?s()(b.a,{scrollKey:o,shouldUpdateScroll:r},void 0,g):g},t}(g.PureComponent),o.contextTypes={router:y.a.object},o.defaultProps={trackScroll:!0},i)},288:function(e,t,n){"use strict";var o=n(9),i=n(289),r=n(94),s=function(e,t){return{cachedHeight:e.getIn(["height_cache",t.saveHeightKey,t.id])}},a=function(e){return{onHeightChange:function(t,n,o){e(Object(r.d)(t,n,o))}}};t.a=Object(o.connect)(s,a)(i.a)},289:function(e,t,n){"use strict";n.d(t,"a",function(){return v});var o=n(1),i=n.n(o),r=n(3),s=n.n(r),a=n(4),c=n.n(a),l=n(0),u=n.n(l),d=n(290),h=n(292),p=n(8),f=(n.n(p),["id","index","listLength"]),g=["id","index","listLength","cachedHeight"],v=function(e){function t(){var n,o,r;i()(this,t);for(var a=arguments.length,c=Array(a),l=0;l<a;l++)c[l]=arguments[l];return n=o=s()(this,e.call.apply(e,[this].concat(c))),o.state={isHidden:!1},o.handleIntersection=function(e){o.entry=e,Object(d.a)(o.calculateHeight),o.setState(o.updateStateAfterIntersection)},o.updateStateAfterIntersection=function(e){return e.isIntersecting&&!o.entry.isIntersecting&&Object(d.a)(o.hideIfNotIntersecting),{isIntersecting:o.entry.isIntersecting,isHidden:!1}},o.calculateHeight=function(){var e=o.props,t=e.onHeightChange,n=e.saveHeightKey,i=e.id;o.height=Object(h.a)(o.entry).height,t&&n&&t(n,i,o.height)},o.hideIfNotIntersecting=function(){o.componentMounted&&o.setState(function(e){return{isHidden:!e.isIntersecting}})},o.handleRef=function(e){o.node=e},r=n,s()(o,r)}return c()(t,e),t.prototype.shouldComponentUpdate=function(e,t){var n=this,o=!this.state.isIntersecting&&(this.state.isHidden||this.props.cachedHeight);return!!o!=!(t.isIntersecting||!t.isHidden&&!e.cachedHeight)||!(o?g:f).every(function(t){return Object(p.is)(e[t],n.props[t])})},t.prototype.componentDidMount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.observe(n,this.node,this.handleIntersection),this.componentMounted=!0},t.prototype.componentWillUnmount=function(){var e=this.props,t=e.intersectionObserverWrapper,n=e.id;t.unobserve(n,this.node),this.componentMounted=!1},t.prototype.render=function(){var e=this.props,t=e.children,n=e.id,o=e.index,i=e.listLength,r=e.cachedHeight,s=this.state,a=s.isIntersecting,c=s.isHidden;return a||!c&&!r?u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!1})):u.a.createElement("article",{ref:this.handleRef,"aria-posinset":o,"aria-setsize":i,style:{height:(this.height||r)+"px",opacity:0,overflow:"hidden"},"data-id":n,tabIndex:"0"},t&&u.a.cloneElement(t,{hidden:!0}))},t}(u.a.Component)},290:function(e,t,n){"use strict";function o(e){for(;a.length&&e.timeRemaining()>0;)a.shift()();a.length?requestIdleCallback(o):c=!1}function i(e){a.push(e),c||(c=!0,requestIdleCallback(o))}var r=n(291),s=n.n(r),a=new s.a,c=!1;t.a=i},291:function(e,t,n){"use strict";function o(){this.length=0}o.prototype.push=function(e){var t={item:e};this.last?this.last=this.last.next=t:this.last=this.first=t,this.length++},o.prototype.shift=function(){var e=this.first;if(e)return this.first=e.next,--this.length||(this.last=void 0),e.item},o.prototype.slice=function(e,t){e=void 0===e?0:e,t=void 0===t?1/0:t;for(var n=[],o=0,i=this.first;i&&!(--t<0);i=i.next)++o>e&&n.push(i.item);return n},e.exports=o},292:function(e,t,n){"use strict";function o(e){if("boolean"!=typeof i){var t=e.target.getBoundingClientRect(),n=e.boundingClientRect;i=t.height!==n.height||t.top!==n.top||t.width!==n.width||t.bottom!==n.bottom||t.left!==n.left||t.right!==n.right}return i?e.target.getBoundingClientRect():e.boundingClientRect}var i=void 0;t.a=o},293:function(e,t,n){"use strict";var o=n(1),i=n.n(o),r=function(){function e(){i()(this,e),this.callbacks={},this.observerBacklog=[],this.observer=null}return e.prototype.connect=function(e){var t=this,n=function(e){e.forEach(function(e){var n=e.target.getAttribute("data-id");t.callbacks[n]&&t.callbacks[n](e)})};this.observer=new IntersectionObserver(n,e),this.observerBacklog.forEach(function(e){var n=e[0],o=e[1],i=e[2];t.observe(n,o,i)}),this.observerBacklog=null},e.prototype.observe=function(e,t,n){this.observer?(this.callbacks[e]=n,this.observer.observe(t)):this.observerBacklog.push([e,t,n])},e.prototype.unobserve=function(e,t){this.observer&&(delete this.callbacks[e],this.observer.unobserve(t))},e.prototype.disconnect=function(){this.observer&&(this.callbacks={},this.observer.disconnect(),this.observer=null)},e}();t.a=r},294:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var o,i,r,s,a=n(29),c=n.n(a),l=n(31),u=n.n(l),d=n(2),h=n.n(d),p=n(1),f=n.n(p),g=n(3),v=n.n(g),b=n(4),m=n.n(b),y=n(34),M=n.n(y),O=n(0),I=n.n(O),C=n(13),j=n.n(C),_=n(5),k=n.n(_),L=n(285),S=n(12),R=n.n(S),x=n(149),T=n(287),H=n(6),P=(i=o=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleClick=function(){o.props.onClick(o.props.maxId)},i=n,v()(o,i)}return m()(t,e),t.prototype.render=function(){return h()(x.a,{onClick:this.handleClick,disabled:this.props.disabled})},t}(R.a),o.propTypes={disabled:k.a.bool,maxId:k.a.string,onClick:k.a.func.isRequired},i),w=(s=r=function(e){function t(){var n,o,i;f()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=v()(this,e.call.apply(e,[this].concat(s))),o.handleMoveUp=function(e){var t=o.props.statusIds.indexOf(e)-1;o._selectChild(t)},o.handleMoveDown=function(e){var t=o.props.statusIds.indexOf(e)+1;o._selectChild(t)},o.handleLoadOlder=M()(function(){o.props.onLoadMore(o.props.statusIds.last())},300,{leading:!0}),o.setRef=function(e){o.node=e},i=n,v()(o,i)}return m()(t,e),t.prototype._selectChild=function(e){var t=this.node.node.querySelector("article:nth-of-type("+(e+1)+") .focusable");t&&t.focus()},t.prototype.render=function(){var e=this,t=this.props,n=t.statusIds,o=t.onLoadMore,i=u()(t,["statusIds","onLoadMore"]),r=i.isLoading;if(i.isPartial)return h()("div",{className:"regeneration-indicator"},void 0,h()("div",{},void 0,h()("div",{className:"regeneration-indicator__label"},void 0,h()(H.b,{id:"regeneration_indicator.label",tagName:"strong",defaultMessage:"Loading…"}),h()(H.b,{id:"regeneration_indicator.sublabel",defaultMessage:"Your home feed is being prepared!"}))));var s=r||n.size>0?n.map(function(t,i){return null===t?h()(P,{disabled:r,maxId:i>0?n.get(i-1):null,onClick:o},"gap:"+n.get(i+1)):h()(L.a,{id:t,onMoveUp:e.handleMoveUp,onMoveDown:e.handleMoveDown},t)}):null;return I.a.createElement(T.a,c()({},i,{onLoadMore:o&&this.handleLoadOlder,ref:this.setRef}),s)},t}(R.a),r.propTypes={scrollKey:k.a.string.isRequired,statusIds:j.a.list.isRequired,onLoadMore:k.a.func,onScrollToTop:k.a.func,onScroll:k.a.func,trackScroll:k.a.bool,shouldUpdateScroll:k.a.func,isLoading:k.a.bool,isPartial:k.a.bool,hasMore:k.a.bool,prepend:k.a.node,emptyMessage:k.a.node},r.defaultProps={trackScroll:!0},s)},806:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return k});var o,i,r=n(2),s=n.n(r),a=n(1),c=n.n(a),l=n(3),u=n.n(l),d=n(4),h=n.n(d),p=n(0),f=n.n(p),g=n(9),v=n(92),b=n(69),m=n(68),y=n(19),M=n(297),O=n(6),I=n(960),C=n(70),j=Object(O.f)({title:{id:"column.public",defaultMessage:"Federated timeline"}}),_=function(e){return{hasUnread:e.getIn(["timelines","public","unread"])>0}},k=(o=Object(g.connect)(_))(i=Object(O.g)(i=function(e){function t(){var n,o,i;c()(this,t);for(var r=arguments.length,s=Array(r),a=0;a<r;a++)s[a]=arguments[a];return n=o=u()(this,e.call.apply(e,[this].concat(s))),o.handlePin=function(){var e=o.props,t=e.columnId,n=e.dispatch;n(t?Object(M.f)(t):Object(M.d)("PUBLIC",{}))},o.handleMove=function(e){var t=o.props,n=t.columnId;(0,t.dispatch)(Object(M.e)(n,e))},o.handleHeaderClick=function(){o.column.scrollTop()},o.setRef=function(e){o.column=e},o.handleLoadMore=function(e){o.props.dispatch(Object(y.q)({maxId:e}))},i=n,u()(o,i)}return h()(t,e),t.prototype.componentDidMount=function(){var e=this.props.dispatch;e(Object(y.q)()),this.disconnect=e(Object(C.d)())},t.prototype.componentWillUnmount=function(){this.disconnect&&(this.disconnect(),this.disconnect=null)},t.prototype.render=function(){var e=this.props,t=e.intl,n=e.columnId,o=e.hasUnread,i=e.multiColumn,r=!!n;return f.a.createElement(b.a,{ref:this.setRef},s()(m.a,{icon:"globe",active:o,title:t.formatMessage(j.title),onPin:this.handlePin,onMove:this.handleMove,onClick:this.handleHeaderClick,pinned:r,multiColumn:i},void 0,s()(I.a,{})),s()(v.a,{timelineId:"public",onLoadMore:this.handleLoadMore,trackScroll:!r,scrollKey:"public_timeline-"+n,emptyMessage:s()(O.b,{id:"empty_column.public",defaultMessage:"There is nothing here! Write something publicly, or manually follow users from other instances to fill it up"})}))},t}(f.a.PureComponent))||i)||i},855:function(e,t,n){"use strict";n.d(t,"a",function(){return p});var o=n(2),i=n.n(o),r=n(1),s=n.n(r),a=n(3),c=n.n(a),l=n(4),u=n.n(l),d=n(0),h=n.n(d),p=function(e){function t(){var n,o,i;s()(this,t);for(var r=arguments.length,a=Array(r),l=0;l<r;l++)a[l]=arguments[l];return n=o=c()(this,e.call.apply(e,[this].concat(a))),o.handleChange=function(e){o.props.onChange(o.props.settingKey,e.target.value)},i=n,c()(o,i)}return u()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.settingKey,o=e.label;return i()("label",{},void 0,i()("span",{style:{display:"none"}},void 0,o),i()("input",{className:"setting-text",value:t.getIn(n),onChange:this.handleChange,placeholder:o}))},t}(h.a.PureComponent)},870:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var o,i=n(2),r=n.n(i),s=n(1),a=n.n(s),c=n(3),l=n.n(c),u=n(4),d=n.n(u),h=n(0),p=n.n(h),f=n(6),g=n(855),v=Object(f.f)({filter_regex:{id:"home.column_settings.filter_regex",defaultMessage:"Filter out by regular expressions"},settings:{id:"home.settings",defaultMessage:"Column settings"}}),b=Object(f.g)(o=function(e){function t(){return a()(this,t),l()(this,e.apply(this,arguments))}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.settings,n=e.onChange,o=e.intl;return r()("div",{},void 0,r()("span",{className:"column-settings__section"},void 0,r()(f.b,{id:"home.column_settings.advanced",defaultMessage:"Advanced"})),r()("div",{className:"column-settings__row"},void 0,r()(g.a,{settings:t,settingKey:["regex","body"],onChange:n,label:o.formatMessage(v.filter_regex)})))},t}(p.a.PureComponent))||o},92:function(e,t,n){"use strict";var o=n(34),i=n.n(o),r=n(9),s=n(294),a=n(19),c=n(8),l=(n.n(c),n(95)),u=(n.n(l),n(11)),d=function(){return Object(l.createSelector)([function(e,t){var n=t.type;return e.getIn(["settings",n],Object(c.Map)())},function(e,t){var n=t.type;return e.getIn(["timelines",n,"items"],Object(c.List)())},function(e){return e.get("statuses")}],function(e,t,n){var o=e.getIn(["regex","body"],"").trim(),i=null;try{i=o&&new RegExp(o,"i")}catch(e){}return t.filter(function(t){var o=n.get(t),r=!0;if(!1===e.getIn(["shows","reblog"])&&(r=r&&null===o.get("reblog")),!1===e.getIn(["shows","reply"])&&(r=r&&(null===o.get("in_reply_to_id")||o.get("in_reply_to_account_id")===u.g)),r&&i&&o.get("account")!==u.g){var s=o.get("reblog")?n.getIn([o.get("reblog"),"search_index"]):o.get("search_index");r=!i.test(s)}return r})})},h=function(){var e=d();return function(t,n){var o=n.timelineId;return{statusIds:e(t,{type:o}),isLoading:t.getIn(["timelines",o,"isLoading"],!0),isPartial:t.getIn(["timelines",o,"isPartial"],!1),hasMore:t.getIn(["timelines",o,"hasMore"])}}},p=function(e,t){var n=t.timelineId;return{onScrollToTop:i()(function(){e(Object(a.r)(n,!0))},100),onScroll:i()(function(){e(Object(a.r)(n,!1))},100)}};t.a=Object(r.connect)(h,p)(s.a)},960:function(e,t,n){"use strict";var o=n(9),i=n(870),r=n(57),s=function(e){return{settings:e.getIn(["settings","public"])}},a=function(e){return{onChange:function(t,n){e(Object(r.c)(["public"].concat(t),n))}}};t.a=Object(o.connect)(s,a)(i.a)}}); //# sourceMappingURL=public_timeline.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/public_timeline.js.map b/priv/static/packs/features/public_timeline.js.map index 28a0a8e46..046117d45 100644 --- a/priv/static/packs/features/public_timeline.js.map +++ b/priv/static/packs/features/public_timeline.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/public_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/public_timeline/index.js","webpack:///./app/javascript/mastodon/components/setting_text.js","webpack:///./app/javascript/mastodon/features/community_timeline/components/column_settings.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js","webpack:///./app/javascript/mastodon/features/public_timeline/containers/column_settings_container.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","283","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","status","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","807","defineProperty","value","PublicTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_7__components_column__","__WEBPACK_IMPORTED_MODULE_8__components_column_header__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__","__WEBPACK_IMPORTED_MODULE_13__actions_streaming__","title","mapStateToProps","hasUnread","handlePin","columnId","handleMove","dir","_this$props2","handleHeaderClick","column","multiColumn","pinned","icon","active","onPin","onMove","timelineId","861","SettingText","handleChange","onChange","settingKey","settings","label","display","placeholder","872","ColumnSettings","__WEBPACK_IMPORTED_MODULE_6__components_setting_text__","filter_regex","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","filter","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4","962","__WEBPACK_IMPORTED_MODULE_1__community_timeline_components_column_settings__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","checked"],"mappings":"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","file":"features/public_timeline.js","sourcesContent":["webpackJsonp([8],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 807:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return PublicTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__ = __webpack_require__(962);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_streaming__ = __webpack_require__(70);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n title: {\n 'id': 'column.public',\n 'defaultMessage': 'Federated timeline'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n hasUnread: state.getIn(['timelines', 'public', 'unread']) > 0\n };\n};\n\nvar PublicTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PublicTimeline, _React$PureComponent);\n\n function PublicTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PublicTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('PUBLIC', {}));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"q\" /* expandPublicTimeline */])({ maxId: maxId }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n PublicTimeline.prototype.componentDidMount = function componentDidMount() {\n var dispatch = this.props.dispatch;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"q\" /* expandPublicTimeline */])());\n this.disconnect = dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_streaming__[\"d\" /* connectPublicStream */])());\n };\n\n PublicTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n };\n\n PublicTimeline.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n columnId = _props.columnId,\n hasUnread = _props.hasUnread,\n multiColumn = _props.multiColumn;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_7__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column_header__[\"a\" /* default */], {\n icon: 'globe',\n active: hasUnread,\n title: intl.formatMessage(messages.title),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__[\"a\" /* default */], {})),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__[\"a\" /* default */], {\n timelineId: 'public',\n onLoadMore: this.handleLoadMore,\n trackScroll: !pinned,\n scrollKey: 'public_timeline-' + columnId,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.public',\n defaultMessage: 'There is nothing here! Write something publicly, or manually follow users from other instances to fill it up'\n })\n })\n );\n };\n\n return PublicTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 861:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingText; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar SettingText = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingText, _React$PureComponent);\n\n function SettingText() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingText);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(_this.props.settingKey, e.target.value);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingText.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n settingKey = _props.settingKey,\n label = _props.label;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, label), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'setting-text',\n value: settings.getIn(settingKey),\n onChange: this.handleChange,\n placeholder: label\n }));\n };\n\n return SettingText;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 872:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnSettings; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_setting_text__ = __webpack_require__(861);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n filter_regex: {\n 'id': 'home.column_settings.filter_regex',\n 'defaultMessage': 'Filter out by regular expressions'\n },\n settings: {\n 'id': 'home.settings',\n 'defaultMessage': 'Column settings'\n }\n});\n\nvar ColumnSettings = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnSettings, _React$PureComponent);\n\n function ColumnSettings() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnSettings);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n ColumnSettings.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n onChange = _props.onChange,\n intl = _props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.advanced',\n defaultMessage: 'Advanced'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_setting_text__[\"a\" /* default */], {\n settings: settings,\n settingKey: ['regex', 'body'],\n onChange: onChange,\n label: intl.formatMessage(messages.filter_regex)\n })));\n };\n\n return ColumnSettings;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 962:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__community_timeline_components_column_settings__ = __webpack_require__(872);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(57);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n settings: state.getIn(['settings', 'public'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(key, checked) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['public'].concat(key), checked));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__community_timeline_components_column_settings__[\"a\" /* default */]));\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/public_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { expandPublicTimeline } from '../../actions/timelines';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ColumnSettingsContainer from './containers/column_settings_container';\nimport { connectPublicStream } from '../../actions/streaming';\n\nconst messages = defineMessages({\n title: { id: 'column.public', defaultMessage: 'Federated timeline' },\n});\n\nconst mapStateToProps = state => ({\n hasUnread: state.getIn(['timelines', 'public', 'unread']) > 0,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class PublicTimeline extends React.PureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n columnId: PropTypes.string,\n multiColumn: PropTypes.bool,\n hasUnread: PropTypes.bool,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('PUBLIC', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n componentDidMount () {\n const { dispatch } = this.props;\n\n dispatch(expandPublicTimeline());\n this.disconnect = dispatch(connectPublicStream());\n }\n\n componentWillUnmount () {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandPublicTimeline({ maxId }));\n }\n\n render () {\n const { intl, columnId, hasUnread, multiColumn } = this.props;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='globe'\n active={hasUnread}\n title={intl.formatMessage(messages.title)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <ColumnSettingsContainer />\n </ColumnHeader>\n\n <StatusListContainer\n timelineId='public'\n onLoadMore={this.handleLoadMore}\n trackScroll={!pinned}\n scrollKey={`public_timeline-${columnId}`}\n emptyMessage={<FormattedMessage id='empty_column.public' defaultMessage='There is nothing here! Write something publicly, or manually follow users from other instances to fill it up' />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/public_timeline/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nexport default class SettingText extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n settingKey: PropTypes.array.isRequired,\n label: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n handleChange = (e) => {\n this.props.onChange(this.props.settingKey, e.target.value);\n }\n\n render () {\n const { settings, settingKey, label } = this.props;\n\n return (\n <label>\n <span style={{ display: 'none' }}>{label}</span>\n <input\n className='setting-text'\n value={settings.getIn(settingKey)}\n onChange={this.handleChange}\n placeholder={label}\n />\n </label>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/setting_text.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport SettingText from '../../../components/setting_text';\n\nconst messages = defineMessages({\n filter_regex: { id: 'home.column_settings.filter_regex', defaultMessage: 'Filter out by regular expressions' },\n settings: { id: 'home.settings', defaultMessage: 'Column settings' },\n});\n\n@injectIntl\nexport default class ColumnSettings extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n onChange: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { settings, onChange, intl } = this.props;\n\n return (\n <div>\n <span className='column-settings__section'><FormattedMessage id='home.column_settings.advanced' defaultMessage='Advanced' /></span>\n\n <div className='column-settings__row'>\n <SettingText settings={settings} settingKey={['regex', 'body']} onChange={onChange} label={intl.formatMessage(messages.filter_regex)} />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/community_timeline/components/column_settings.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js","import { connect } from 'react-redux';\nimport ColumnSettings from '../../community_timeline/components/column_settings';\nimport { changeSetting } from '../../../actions/settings';\n\nconst mapStateToProps = state => ({\n settings: state.getIn(['settings', 'public']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (key, checked) {\n dispatch(changeSetting(['public', ...key], checked));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ColumnSettings);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/public_timeline/containers/column_settings_container.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/public_timeline.js","webpack:///./app/javascript/mastodon/components/load_more.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/scrollable_list.js","webpack:///./app/javascript/mastodon/containers/intersection_observer_article_container.js","webpack:///./app/javascript/mastodon/components/intersection_observer_article.js","webpack:///./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","webpack:///./node_modules/tiny-queue/index.js","webpack:///./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","webpack:///./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","webpack:///./app/javascript/mastodon/components/status_list.js","webpack:///./app/javascript/mastodon/features/public_timeline/index.js","webpack:///./app/javascript/mastodon/components/setting_text.js","webpack:///./app/javascript/mastodon/features/community_timeline/components/column_settings.js","webpack:///./app/javascript/mastodon/features/ui/containers/status_list_container.js","webpack:///./app/javascript/mastodon/features/public_timeline/containers/column_settings_container.js"],"names":["webpackJsonp","149","module","__webpack_exports__","__webpack_require__","d","LoadMore","_class","_temp","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_react_intl__","_React$PureComponent","this","apply","arguments","prototype","render","_props","props","disabled","visible","className","style","visibility","onClick","id","defaultMessage","a","PureComponent","defaultProps","282","initMuteModal","account","dispatch","type","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","messages","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","mapDispatchToProps","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","onFavourite","onDelete","message","formatMessage","confirm","onConfirm","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","287","ScrollableList","_temp2","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__","__WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_7_prop_types__","__WEBPACK_IMPORTED_MODULE_7_prop_types___default","__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__","__WEBPACK_IMPORTED_MODULE_9__load_more__","__WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__","__WEBPACK_IMPORTED_MODULE_11_immutable__","__WEBPACK_IMPORTED_MODULE_12_classnames__","__WEBPACK_IMPORTED_MODULE_12_classnames___default","__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__","_PureComponent","_this","_ret","_len","length","args","Array","_key","call","concat","lastMouseMove","intersectionObserverWrapper","handleScroll","node","_this$node","scrollTop","scrollHeight","clientHeight","offset","_oldScrollPosition","onLoadMore","isLoading","onScrollToTop","onScroll","trailing","handleMouseMove","_lastMouseMove","Date","handleMouseLeave","onFullScreenChange","setState","fullscreen","setRef","c","handleLoadMore","preventDefault","componentDidMount","attachScrollListener","attachIntersectionObserver","componentDidUpdate","prevProps","Children","count","children","getFirstChildKey","newScrollTop","componentWillUnmount","detachScrollListener","detachIntersectionObserver","connect","root","rootMargin","disconnect","addEventListener","removeEventListener","firstChild","isArray","key","_recentlyMoved","_this2","scrollKey","trackScroll","shouldUpdateScroll","hasMore","prepend","emptyMessage","childrenCount","loadMore","scrollableArea","createElement","ref","onMouseMove","onMouseLeave","role","map","child","listLength","saveHeightKey","context","route","location","contextTypes","object","288","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__","__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__","cachedHeight","getIn","onHeightChange","height","289","IntersectionObserverArticle","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_3_react__","__WEBPACK_IMPORTED_MODULE_3_react___default","__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__","__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__","__WEBPACK_IMPORTED_MODULE_6_immutable__","updateOnPropsForRendered","updateOnPropsForUnrendered","_React$Component","isHidden","handleIntersection","entry","calculateHeight","updateStateAfterIntersection","prevState","isIntersecting","hideIfNotIntersecting","_this$props","componentMounted","handleRef","shouldComponentUpdate","nextProps","nextState","isUnrendered","every","prop","observe","_props2","unobserve","_props3","_state","aria-posinset","aria-setsize","data-id","tabIndex","cloneElement","hidden","opacity","overflow","Component","290","runTasks","deadline","taskQueue","timeRemaining","shift","requestIdleCallback","runningRequestIdleCallback","scheduleIdleTask","task","push","__WEBPACK_IMPORTED_MODULE_0_tiny_queue__","__WEBPACK_IMPORTED_MODULE_0_tiny_queue___default","291","exports","Queue","item","last","next","first","undefined","slice","start","end","Infinity","output","i","292","getRectFromEntry","hasBoundingRectBug","boundingRect","target","getBoundingClientRect","observerRect","boundingClientRect","top","width","bottom","left","right","293","IntersectionObserverWrapper","callbacks","observerBacklog","observer","options","onIntersection","entries","forEach","getAttribute","IntersectionObserver","callback","294","StatusList","_class2","_temp4","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_7_react__","__WEBPACK_IMPORTED_MODULE_7_react___default","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__containers_status_container__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__load_more__","__WEBPACK_IMPORTED_MODULE_13__scrollable_list__","__WEBPACK_IMPORTED_MODULE_14_react_intl__","LoadGap","_ImmutablePureCompone","handleClick","maxId","propTypes","bool","string","func","isRequired","_ImmutablePureCompone2","_temp3","_ret2","_len2","_key2","handleMoveUp","elementIndex","statusIds","indexOf","_selectChild","handleMoveDown","handleLoadOlder","leading","element","querySelector","focus","_this3","other","isPartial","tagName","scrollableContent","size","statusId","onMoveUp","onMoveDown","list","806","defineProperty","value","PublicTimeline","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__","__WEBPACK_IMPORTED_MODULE_7__components_column__","__WEBPACK_IMPORTED_MODULE_8__components_column_header__","__WEBPACK_IMPORTED_MODULE_9__actions_timelines__","__WEBPACK_IMPORTED_MODULE_10__actions_columns__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__","__WEBPACK_IMPORTED_MODULE_13__actions_streaming__","title","mapStateToProps","hasUnread","handlePin","columnId","handleMove","dir","_this$props2","handleHeaderClick","column","multiColumn","pinned","icon","active","onPin","onMove","timelineId","855","SettingText","handleChange","onChange","settingKey","settings","label","display","placeholder","870","ColumnSettings","__WEBPACK_IMPORTED_MODULE_6__components_setting_text__","filter_regex","92","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_1_react_redux__","__WEBPACK_IMPORTED_MODULE_2__components_status_list__","__WEBPACK_IMPORTED_MODULE_3__actions_timelines__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5_reselect__","__WEBPACK_IMPORTED_MODULE_6__initial_state__","makeGetStatusIds","_ref2","columnSettings","statuses","rawRegex","trim","regex","RegExp","filter","statusForId","showStatus","searchIndex","test","getStatusIds","_ref3","_ref4","960","__WEBPACK_IMPORTED_MODULE_1__community_timeline_components_column_settings__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","checked"],"mappings":"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","file":"features/public_timeline.js","sourcesContent":["webpackJsonp([8],{\n\n/***/ 149:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return LoadMore; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n\n\n\n\n\nvar _class, _temp;\n\n\n\nvar LoadMore = (_temp = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LoadMore, _React$PureComponent);\n\n function LoadMore() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, LoadMore);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n LoadMore.prototype.render = function render() {\n var _props = this.props,\n disabled = _props.disabled,\n visible = _props.visible;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'load-more',\n disabled: disabled || !visible,\n style: { visibility: visible ? 'visible' : 'hidden' },\n onClick: this.props.onClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.load_more',\n defaultMessage: 'Load more'\n }));\n };\n\n return LoadMore;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n visible: true\n}, _temp);\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 287:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ScrollableList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_throttle__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__ = __webpack_require__(288);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar ScrollableList = (_temp2 = _class = function (_PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ScrollableList, _PureComponent);\n\n function ScrollableList() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ScrollableList);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _PureComponent.call.apply(_PureComponent, [this].concat(args))), _this), _this.state = {\n lastMouseMove: null\n }, _this.intersectionObserverWrapper = new __WEBPACK_IMPORTED_MODULE_10__features_ui_util_intersection_observer_wrapper__[\"a\" /* default */](), _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n if (_this.node) {\n var _this$node = _this.node,\n scrollTop = _this$node.scrollTop,\n scrollHeight = _this$node.scrollHeight,\n clientHeight = _this$node.clientHeight;\n\n var offset = scrollHeight - scrollTop - clientHeight;\n _this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && _this.props.onLoadMore && !_this.props.isLoading) {\n _this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && _this.props.onScrollToTop) {\n _this.props.onScrollToTop();\n } else if (_this.props.onScroll) {\n _this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true\n }), _this.handleMouseMove = __WEBPACK_IMPORTED_MODULE_4_lodash_throttle___default()(function () {\n _this._lastMouseMove = new Date();\n }, 300), _this.handleMouseLeave = function () {\n _this._lastMouseMove = null;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.handleLoadMore = function (e) {\n e.preventDefault();\n _this.props.onLoadMore();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ScrollableList.prototype.componentDidMount = function componentDidMount() {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n };\n\n ScrollableList.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var someItemInserted = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) > 0 && __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(prevProps.children) < __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(this.props.children) && this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n var newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n };\n\n ScrollableList.prototype.componentWillUnmount = function componentWillUnmount() {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n Object(__WEBPACK_IMPORTED_MODULE_13__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n ScrollableList.prototype.attachIntersectionObserver = function attachIntersectionObserver() {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px'\n });\n };\n\n ScrollableList.prototype.detachIntersectionObserver = function detachIntersectionObserver() {\n this.intersectionObserverWrapper.disconnect();\n };\n\n ScrollableList.prototype.attachScrollListener = function attachScrollListener() {\n this.node.addEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.detachScrollListener = function detachScrollListener() {\n this.node.removeEventListener('scroll', this.handleScroll);\n };\n\n ScrollableList.prototype.getFirstChildKey = function getFirstChildKey(props) {\n var children = props.children;\n\n var firstChild = children;\n if (children instanceof __WEBPACK_IMPORTED_MODULE_11_immutable__[\"List\"]) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n };\n\n ScrollableList.prototype._recentlyMoved = function _recentlyMoved() {\n return this._lastMouseMove !== null && new Date() - this._lastMouseMove < 600;\n };\n\n ScrollableList.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n children = _props.children,\n scrollKey = _props.scrollKey,\n trackScroll = _props.trackScroll,\n shouldUpdateScroll = _props.shouldUpdateScroll,\n isLoading = _props.isLoading,\n hasMore = _props.hasMore,\n prepend = _props.prepend,\n emptyMessage = _props.emptyMessage,\n onLoadMore = _props.onLoadMore;\n var fullscreen = this.state.fullscreen;\n\n var childrenCount = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.count(children);\n\n var loadMore = hasMore && childrenCount > 0 && onLoadMore ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__load_more__[\"a\" /* default */], {\n visible: !isLoading,\n onClick: this.handleLoadMore\n }) : null;\n var scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_12_classnames___default()('scrollable', { fullscreen: fullscreen }), ref: this.setRef, onMouseMove: this.handleMouseMove, onMouseLeave: this.handleMouseLeave },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n role: 'feed',\n className: 'item-list'\n }, void 0, prepend, __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.map(this.props.children, function (child, index) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_intersection_observer_article_container__[\"a\" /* default */], {\n id: child.key,\n index: index,\n listLength: childrenCount,\n intersectionObserverWrapper: _this2.intersectionObserverWrapper,\n saveHeightKey: trackScroll ? _this2.context.router.route.location.key + ':' + scrollKey : null\n }, child.key, child);\n }), loadMore)\n );\n } else {\n scrollableArea = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n { className: 'empty-column-indicator', ref: this.setRef },\n emptyMessage\n );\n }\n\n if (trackScroll) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: scrollKey,\n shouldUpdateScroll: shouldUpdateScroll\n }, void 0, scrollableArea);\n } else {\n return scrollableArea;\n }\n };\n\n return ScrollableList;\n}(__WEBPACK_IMPORTED_MODULE_5_react__[\"PureComponent\"]), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object\n}, _class.defaultProps = {\n trackScroll: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 288:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__ = __webpack_require__(289);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_height_cache__ = __webpack_require__(94);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps(state, props) {\n return {\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onHeightChange: function onHeightChange(key, id, height) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_height_cache__[\"d\" /* setHeight */])(key, id, height));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_intersection_observer_article__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 289:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return IntersectionObserverArticle; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__ = __webpack_require__(290);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__ = __webpack_require__(292);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_immutable__);\n\n\n\n\n\n\n\n\n\n// Diff these props in the \"rendered\" state\nvar updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nvar updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nvar IntersectionObserverArticle = function (_React$Component) {\n __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(IntersectionObserverArticle, _React$Component);\n\n function IntersectionObserverArticle() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverArticle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n isHidden: false // set to true in requestIdleCallback to trigger un-render\n }, _this.handleIntersection = function (entry) {\n _this.entry = entry;\n\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.calculateHeight);\n _this.setState(_this.updateStateAfterIntersection);\n }, _this.updateStateAfterIntersection = function (prevState) {\n if (prevState.isIntersecting && !_this.entry.isIntersecting) {\n Object(__WEBPACK_IMPORTED_MODULE_4__features_ui_util_schedule_idle_task__[\"a\" /* default */])(_this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: _this.entry.isIntersecting,\n isHidden: false\n };\n }, _this.calculateHeight = function () {\n var _this$props = _this.props,\n onHeightChange = _this$props.onHeightChange,\n saveHeightKey = _this$props.saveHeightKey,\n id = _this$props.id;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n\n _this.height = Object(__WEBPACK_IMPORTED_MODULE_5__features_ui_util_get_rect_from_entry__[\"a\" /* default */])(_this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, _this.height);\n }\n }, _this.hideIfNotIntersecting = function () {\n if (!_this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n _this.setState(function (prevState) {\n return { isHidden: !prevState.isIntersecting };\n });\n }, _this.handleRef = function (node) {\n _this.node = node;\n }, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n IntersectionObserverArticle.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) {\n var _this2 = this;\n\n var isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n var willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n var propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(function (prop) {\n return Object(__WEBPACK_IMPORTED_MODULE_6_immutable__[\"is\"])(nextProps[prop], _this2.props[prop]);\n });\n };\n\n IntersectionObserverArticle.prototype.componentDidMount = function componentDidMount() {\n var _props = this.props,\n intersectionObserverWrapper = _props.intersectionObserverWrapper,\n id = _props.id;\n\n\n intersectionObserverWrapper.observe(id, this.node, this.handleIntersection);\n\n this.componentMounted = true;\n };\n\n IntersectionObserverArticle.prototype.componentWillUnmount = function componentWillUnmount() {\n var _props2 = this.props,\n intersectionObserverWrapper = _props2.intersectionObserverWrapper,\n id = _props2.id;\n\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n };\n\n IntersectionObserverArticle.prototype.render = function render() {\n var _props3 = this.props,\n children = _props3.children,\n id = _props3.id,\n index = _props3.index,\n listLength = _props3.listLength,\n cachedHeight = _props3.cachedHeight;\n var _state = this.state,\n isIntersecting = _state.isIntersecting,\n isHidden = _state.isHidden;\n\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n {\n ref: this.handleRef,\n 'aria-posinset': index,\n 'aria-setsize': listLength,\n style: { height: (this.height || cachedHeight) + 'px', opacity: 0, overflow: 'hidden' },\n 'data-id': id,\n tabIndex: '0'\n },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: true })\n );\n }\n\n return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(\n 'article',\n { ref: this.handleRef, 'aria-posinset': index, 'aria-setsize': listLength, 'data-id': id, tabIndex: '0' },\n children && __WEBPACK_IMPORTED_MODULE_3_react___default.a.cloneElement(children, { hidden: false })\n );\n };\n\n return IntersectionObserverArticle;\n}(__WEBPACK_IMPORTED_MODULE_3_react___default.a.Component);\n\n\n\n/***/ }),\n\n/***/ 290:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_tiny_queue__);\n// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\n\n\nvar taskQueue = new __WEBPACK_IMPORTED_MODULE_0_tiny_queue___default.a();\nvar runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (scheduleIdleTask);\n\n/***/ }),\n\n/***/ 291:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = { item: item };\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (! --this.length) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n};\n\nmodule.exports = Queue;\n\n/***/ }),\n\n/***/ 292:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nvar hasBoundingRectBug = void 0;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n var boundingRect = entry.target.getBoundingClientRect();\n var observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height || boundingRect.top !== observerRect.top || boundingRect.width !== observerRect.width || boundingRect.bottom !== observerRect.bottom || boundingRect.left !== observerRect.left || boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (getRectFromEntry);\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);\n\n\n// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nvar IntersectionObserverWrapper = function () {\n function IntersectionObserverWrapper() {\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, IntersectionObserverWrapper);\n\n this.callbacks = {};\n this.observerBacklog = [];\n this.observer = null;\n }\n\n IntersectionObserverWrapper.prototype.connect = function connect(options) {\n var _this = this;\n\n var onIntersection = function onIntersection(entries) {\n entries.forEach(function (entry) {\n var id = entry.target.getAttribute('data-id');\n if (_this.callbacks[id]) {\n _this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(function (_ref) {\n var id = _ref[0],\n node = _ref[1],\n callback = _ref[2];\n\n _this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n };\n\n IntersectionObserverWrapper.prototype.observe = function observe(id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([id, node, callback]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.unobserve = function unobserve(id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n };\n\n IntersectionObserverWrapper.prototype.disconnect = function disconnect() {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n };\n\n return IntersectionObserverWrapper;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (IntersectionObserverWrapper);\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return StatusList; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__load_more__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__scrollable_list__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_intl__ = __webpack_require__(6);\n\n\n\n\n\n\n\n\nvar _class, _temp2, _class2, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar LoadGap = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(LoadGap, _ImmutablePureCompone);\n\n function LoadGap() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, LoadGap);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick(_this.props.maxId);\n }, _temp), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n LoadGap.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__load_more__[\"a\" /* default */], {\n onClick: this.handleClick,\n disabled: this.props.disabled\n });\n };\n\n return LoadGap;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n maxId: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n onClick: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired\n}, _temp2);\nvar StatusList = (_temp4 = _class2 = function (_ImmutablePureCompone2) {\n __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(StatusList, _ImmutablePureCompone2);\n\n function StatusList() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, StatusList);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone2.call.apply(_ImmutablePureCompone2, [this].concat(args))), _this2), _this2.handleMoveUp = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) - 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleMoveDown = function (id) {\n var elementIndex = _this2.props.statusIds.indexOf(id) + 1;\n _this2._selectChild(elementIndex);\n }, _this2.handleLoadOlder = __WEBPACK_IMPORTED_MODULE_6_lodash_debounce___default()(function () {\n _this2.props.onLoadMore(_this2.props.statusIds.last());\n }, 300, { leading: true }), _this2.setRef = function (c) {\n _this2.node = c;\n }, _temp3), __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n StatusList.prototype._selectChild = function _selectChild(index) {\n var element = this.node.node.querySelector('article:nth-of-type(' + (index + 1) + ') .focusable');\n\n if (element) {\n element.focus();\n }\n };\n\n StatusList.prototype.render = function render() {\n var _this3 = this;\n\n var _props = this.props,\n statusIds = _props.statusIds,\n onLoadMore = _props.onLoadMore,\n other = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['statusIds', 'onLoadMore']);\n\n var isLoading = other.isLoading,\n isPartial = other.isPartial;\n\n\n if (isPartial) {\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Loading\\u2026'\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'regeneration_indicator.sublabel',\n defaultMessage: 'Your home feed is being prepared!'\n }))));\n }\n\n var scrollableContent = isLoading || statusIds.size > 0 ? statusIds.map(function (statusId, index) {\n return statusId === null ? __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(LoadGap, {\n disabled: isLoading,\n maxId: index > 0 ? statusIds.get(index - 1) : null,\n onClick: onLoadMore\n }, 'gap:' + statusIds.get(index + 1)) : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__containers_status_container__[\"a\" /* default */], {\n id: statusId,\n onMoveUp: _this3.handleMoveUp,\n onMoveDown: _this3.handleMoveDown\n }, statusId);\n }) : null;\n\n return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_13__scrollable_list__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, other, { onLoadMore: onLoadMore && this.handleLoadOlder, ref: this.setRef }),\n scrollableContent\n );\n };\n\n return StatusList;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.propTypes = {\n scrollKey: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string.isRequired,\n statusIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list.isRequired,\n onLoadMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n onScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n trackScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n shouldUpdateScroll: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n isLoading: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n isPartial: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n hasMore: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n prepend: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.node\n}, _class2.defaultProps = {\n trackScroll: true\n}, _temp4);\n\n\n/***/ }),\n\n/***/ 806:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return PublicTimeline; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__ = __webpack_require__(92);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_column__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_columns__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__ = __webpack_require__(960);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__actions_streaming__ = __webpack_require__(70);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n title: {\n 'id': 'column.public',\n 'defaultMessage': 'Federated timeline'\n }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n hasUnread: state.getIn(['timelines', 'public', 'unread']) > 0\n };\n};\n\nvar PublicTimeline = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PublicTimeline, _React$PureComponent);\n\n function PublicTimeline() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PublicTimeline);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handlePin = function () {\n var _this$props = _this.props,\n columnId = _this$props.columnId,\n dispatch = _this$props.dispatch;\n\n\n if (columnId) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"f\" /* removeColumn */])(columnId));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"d\" /* addColumn */])('PUBLIC', {}));\n }\n }, _this.handleMove = function (dir) {\n var _this$props2 = _this.props,\n columnId = _this$props2.columnId,\n dispatch = _this$props2.dispatch;\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_columns__[\"e\" /* moveColumn */])(columnId, dir));\n }, _this.handleHeaderClick = function () {\n _this.column.scrollTop();\n }, _this.setRef = function (c) {\n _this.column = c;\n }, _this.handleLoadMore = function (maxId) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"q\" /* expandPublicTimeline */])({ maxId: maxId }));\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n PublicTimeline.prototype.componentDidMount = function componentDidMount() {\n var dispatch = this.props.dispatch;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_timelines__[\"q\" /* expandPublicTimeline */])());\n this.disconnect = dispatch(Object(__WEBPACK_IMPORTED_MODULE_13__actions_streaming__[\"d\" /* connectPublicStream */])());\n };\n\n PublicTimeline.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n };\n\n PublicTimeline.prototype.render = function render() {\n var _props = this.props,\n intl = _props.intl,\n columnId = _props.columnId,\n hasUnread = _props.hasUnread,\n multiColumn = _props.multiColumn;\n\n var pinned = !!columnId;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n __WEBPACK_IMPORTED_MODULE_7__components_column__[\"a\" /* default */],\n { ref: this.setRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_column_header__[\"a\" /* default */], {\n icon: 'globe',\n active: hasUnread,\n title: intl.formatMessage(messages.title),\n onPin: this.handlePin,\n onMove: this.handleMove,\n onClick: this.handleHeaderClick,\n pinned: pinned,\n multiColumn: multiColumn\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__containers_column_settings_container__[\"a\" /* default */], {})),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__ui_containers_status_list_container__[\"a\" /* default */], {\n timelineId: 'public',\n onLoadMore: this.handleLoadMore,\n trackScroll: !pinned,\n scrollKey: 'public_timeline-' + columnId,\n emptyMessage: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'empty_column.public',\n defaultMessage: 'There is nothing here! Write something publicly, or manually follow users from other instances to fill it up'\n })\n })\n );\n };\n\n return PublicTimeline;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 855:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SettingText; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar SettingText = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SettingText, _React$PureComponent);\n\n function SettingText() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SettingText);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleChange = function (e) {\n _this.props.onChange(_this.props.settingKey, e.target.value);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n SettingText.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n settingKey = _props.settingKey,\n label = _props.label;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n style: { display: 'none' }\n }, void 0, label), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n className: 'setting-text',\n value: settings.getIn(settingKey),\n onChange: this.handleChange,\n placeholder: label\n }));\n };\n\n return SettingText;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 870:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnSettings; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_setting_text__ = __webpack_require__(855);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n filter_regex: {\n 'id': 'home.column_settings.filter_regex',\n 'defaultMessage': 'Filter out by regular expressions'\n },\n settings: {\n 'id': 'home.settings',\n 'defaultMessage': 'Column settings'\n }\n});\n\nvar ColumnSettings = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnSettings, _React$PureComponent);\n\n function ColumnSettings() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnSettings);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n }\n\n ColumnSettings.prototype.render = function render() {\n var _props = this.props,\n settings = _props.settings,\n onChange = _props.onChange,\n intl = _props.intl;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'column-settings__section'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'home.column_settings.advanced',\n defaultMessage: 'Advanced'\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'column-settings__row'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_setting_text__[\"a\" /* default */], {\n settings: settings,\n settingKey: ['regex', 'body'],\n onChange: onChange,\n label: intl.formatMessage(messages.filter_regex)\n })));\n };\n\n return ColumnSettings;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_status_list__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_timelines__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\nvar makeGetStatusIds = function makeGetStatusIds() {\n return Object(__WEBPACK_IMPORTED_MODULE_5_reselect__[\"createSelector\"])([function (state, _ref) {\n var type = _ref.type;\n return state.getIn(['settings', type], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n }, function (state, _ref2) {\n var type = _ref2.type;\n return state.getIn(['timelines', type, 'items'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"List\"])());\n }, function (state) {\n return state.get('statuses');\n }], function (columnSettings, statusIds, statuses) {\n var rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n var regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(function (id) {\n var statusForId = statuses.get(id);\n var showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]);\n }\n\n if (showStatus && regex && statusForId.get('account') !== __WEBPACK_IMPORTED_MODULE_6__initial_state__[\"g\" /* me */]) {\n var searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n });\n};\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatusIds = makeGetStatusIds();\n\n var mapStateToProps = function mapStateToProps(state, _ref3) {\n var timelineId = _ref3.timelineId;\n return {\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore'])\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref4) {\n var timelineId = _ref4.timelineId;\n return {\n\n onScrollToTop: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, true));\n }, 100),\n\n onScroll: __WEBPACK_IMPORTED_MODULE_0_lodash_debounce___default()(function () {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_timelines__[\"r\" /* scrollTopTimeline */])(timelineId, false));\n }, 100)\n\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_status_list__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 960:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__community_timeline_components_column_settings__ = __webpack_require__(870);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(57);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n return {\n settings: state.getIn(['settings', 'public'])\n };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n return {\n onChange: function onChange(key, checked) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['public'].concat(key), checked));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__community_timeline_components_column_settings__[\"a\" /* default */]));\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/public_timeline.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class LoadMore extends React.PureComponent {\n\n static propTypes = {\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n visible: PropTypes.bool,\n }\n\n static defaultProps = {\n visible: true,\n }\n\n render() {\n const { disabled, visible } = this.props;\n\n return (\n <button className='load-more' disabled={disabled || !visible} style={{ visibility: visible ? 'visible' : 'hidden' }} onClick={this.props.onClick}>\n <FormattedMessage id='status.load_more' defaultMessage='Load more' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/load_more.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React, { PureComponent } from 'react';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport PropTypes from 'prop-types';\nimport IntersectionObserverArticleContainer from '../containers/intersection_observer_article_container';\nimport LoadMore from './load_more';\nimport IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';\nimport { throttle } from 'lodash';\nimport { List as ImmutableList } from 'immutable';\nimport classNames from 'classnames';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';\n\nexport default class ScrollableList extends PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n children: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n state = {\n lastMouseMove: null,\n };\n\n intersectionObserverWrapper = new IntersectionObserverWrapper();\n\n handleScroll = throttle(() => {\n if (this.node) {\n const { scrollTop, scrollHeight, clientHeight } = this.node;\n const offset = scrollHeight - scrollTop - clientHeight;\n this._oldScrollPosition = scrollHeight - scrollTop;\n\n if (400 > offset && this.props.onLoadMore && !this.props.isLoading) {\n this.props.onLoadMore();\n }\n\n if (scrollTop < 100 && this.props.onScrollToTop) {\n this.props.onScrollToTop();\n } else if (this.props.onScroll) {\n this.props.onScroll();\n }\n }\n }, 150, {\n trailing: true,\n });\n\n handleMouseMove = throttle(() => {\n this._lastMouseMove = new Date();\n }, 300);\n\n handleMouseLeave = () => {\n this._lastMouseMove = null;\n }\n\n componentDidMount () {\n this.attachScrollListener();\n this.attachIntersectionObserver();\n attachFullscreenListener(this.onFullScreenChange);\n\n // Handle initial scroll posiiton\n this.handleScroll();\n }\n\n componentDidUpdate (prevProps) {\n const someItemInserted = React.Children.count(prevProps.children) > 0 &&\n React.Children.count(prevProps.children) < React.Children.count(this.props.children) &&\n this.getFirstChildKey(prevProps) !== this.getFirstChildKey(this.props);\n\n // Reset the scroll position when a new child comes in in order not to\n // jerk the scrollbar around if you're already scrolled down the page.\n if (someItemInserted && this._oldScrollPosition && this.node.scrollTop > 0) {\n const newScrollTop = this.node.scrollHeight - this._oldScrollPosition;\n\n if (this.node.scrollTop !== newScrollTop) {\n this.node.scrollTop = newScrollTop;\n }\n } else {\n this._oldScrollPosition = this.node.scrollHeight - this.node.scrollTop;\n }\n }\n\n componentWillUnmount () {\n this.detachScrollListener();\n this.detachIntersectionObserver();\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n attachIntersectionObserver () {\n this.intersectionObserverWrapper.connect({\n root: this.node,\n rootMargin: '300% 0px',\n });\n }\n\n detachIntersectionObserver () {\n this.intersectionObserverWrapper.disconnect();\n }\n\n attachScrollListener () {\n this.node.addEventListener('scroll', this.handleScroll);\n }\n\n detachScrollListener () {\n this.node.removeEventListener('scroll', this.handleScroll);\n }\n\n getFirstChildKey (props) {\n const { children } = props;\n let firstChild = children;\n if (children instanceof ImmutableList) {\n firstChild = children.get(0);\n } else if (Array.isArray(children)) {\n firstChild = children[0];\n }\n return firstChild && firstChild.key;\n }\n\n setRef = (c) => {\n this.node = c;\n }\n\n handleLoadMore = (e) => {\n e.preventDefault();\n this.props.onLoadMore();\n }\n\n _recentlyMoved () {\n return this._lastMouseMove !== null && ((new Date()) - this._lastMouseMove < 600);\n }\n\n render () {\n const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props;\n const { fullscreen } = this.state;\n const childrenCount = React.Children.count(children);\n\n const loadMore = (hasMore && childrenCount > 0 && onLoadMore) ? <LoadMore visible={!isLoading} onClick={this.handleLoadMore} /> : null;\n let scrollableArea = null;\n\n if (isLoading || childrenCount > 0 || !emptyMessage) {\n scrollableArea = (\n <div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n <div role='feed' className='item-list'>\n {prepend}\n\n {React.Children.map(this.props.children, (child, index) => (\n <IntersectionObserverArticleContainer\n key={child.key}\n id={child.key}\n index={index}\n listLength={childrenCount}\n intersectionObserverWrapper={this.intersectionObserverWrapper}\n saveHeightKey={trackScroll ? `${this.context.router.route.location.key}:${scrollKey}` : null}\n >\n {child}\n </IntersectionObserverArticleContainer>\n ))}\n\n {loadMore}\n </div>\n </div>\n );\n } else {\n scrollableArea = (\n <div className='empty-column-indicator' ref={this.setRef}>\n {emptyMessage}\n </div>\n );\n }\n\n if (trackScroll) {\n return (\n <ScrollContainer scrollKey={scrollKey} shouldUpdateScroll={shouldUpdateScroll}>\n {scrollableArea}\n </ScrollContainer>\n );\n } else {\n return scrollableArea;\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/scrollable_list.js","import { connect } from 'react-redux';\nimport IntersectionObserverArticle from '../components/intersection_observer_article';\nimport { setHeight } from '../actions/height_cache';\n\nconst makeMapStateToProps = (state, props) => ({\n cachedHeight: state.getIn(['height_cache', props.saveHeightKey, props.id]),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n onHeightChange (key, id, height) {\n dispatch(setHeight(key, id, height));\n },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(IntersectionObserverArticle);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/intersection_observer_article_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport scheduleIdleTask from '../features/ui/util/schedule_idle_task';\nimport getRectFromEntry from '../features/ui/util/get_rect_from_entry';\nimport { is } from 'immutable';\n\n// Diff these props in the \"rendered\" state\nconst updateOnPropsForRendered = ['id', 'index', 'listLength'];\n// Diff these props in the \"unrendered\" state\nconst updateOnPropsForUnrendered = ['id', 'index', 'listLength', 'cachedHeight'];\n\nexport default class IntersectionObserverArticle extends React.Component {\n\n static propTypes = {\n intersectionObserverWrapper: PropTypes.object.isRequired,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n listLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n saveHeightKey: PropTypes.string,\n cachedHeight: PropTypes.number,\n onHeightChange: PropTypes.func,\n children: PropTypes.node,\n };\n\n state = {\n isHidden: false, // set to true in requestIdleCallback to trigger un-render\n }\n\n shouldComponentUpdate (nextProps, nextState) {\n const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight);\n const willBeUnrendered = !nextState.isIntersecting && (nextState.isHidden || nextProps.cachedHeight);\n if (!!isUnrendered !== !!willBeUnrendered) {\n // If we're going from rendered to unrendered (or vice versa) then update\n return true;\n }\n // Otherwise, diff based on props\n const propsToDiff = isUnrendered ? updateOnPropsForUnrendered : updateOnPropsForRendered;\n return !propsToDiff.every(prop => is(nextProps[prop], this.props[prop]));\n }\n\n componentDidMount () {\n const { intersectionObserverWrapper, id } = this.props;\n\n intersectionObserverWrapper.observe(\n id,\n this.node,\n this.handleIntersection\n );\n\n this.componentMounted = true;\n }\n\n componentWillUnmount () {\n const { intersectionObserverWrapper, id } = this.props;\n intersectionObserverWrapper.unobserve(id, this.node);\n\n this.componentMounted = false;\n }\n\n handleIntersection = (entry) => {\n this.entry = entry;\n\n scheduleIdleTask(this.calculateHeight);\n this.setState(this.updateStateAfterIntersection);\n }\n\n updateStateAfterIntersection = (prevState) => {\n if (prevState.isIntersecting && !this.entry.isIntersecting) {\n scheduleIdleTask(this.hideIfNotIntersecting);\n }\n return {\n isIntersecting: this.entry.isIntersecting,\n isHidden: false,\n };\n }\n\n calculateHeight = () => {\n const { onHeightChange, saveHeightKey, id } = this.props;\n // save the height of the fully-rendered element (this is expensive\n // on Chrome, where we need to fall back to getBoundingClientRect)\n this.height = getRectFromEntry(this.entry).height;\n\n if (onHeightChange && saveHeightKey) {\n onHeightChange(saveHeightKey, id, this.height);\n }\n }\n\n hideIfNotIntersecting = () => {\n if (!this.componentMounted) {\n return;\n }\n\n // When the browser gets a chance, test if we're still not intersecting,\n // and if so, set our isHidden to true to trigger an unrender. The point of\n // this is to save DOM nodes and avoid using up too much memory.\n // See: https://github.com/tootsuite/mastodon/issues/2900\n this.setState((prevState) => ({ isHidden: !prevState.isIntersecting }));\n }\n\n handleRef = (node) => {\n this.node = node;\n }\n\n render () {\n const { children, id, index, listLength, cachedHeight } = this.props;\n const { isIntersecting, isHidden } = this.state;\n\n if (!isIntersecting && (isHidden || cachedHeight)) {\n return (\n <article\n ref={this.handleRef}\n aria-posinset={index}\n aria-setsize={listLength}\n style={{ height: `${this.height || cachedHeight}px`, opacity: 0, overflow: 'hidden' }}\n data-id={id}\n tabIndex='0'\n >\n {children && React.cloneElement(children, { hidden: true })}\n </article>\n );\n }\n\n return (\n <article ref={this.handleRef} aria-posinset={index} aria-setsize={listLength} data-id={id} tabIndex='0'>\n {children && React.cloneElement(children, { hidden: false })}\n </article>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/intersection_observer_article.js","// Wrapper to call requestIdleCallback() to schedule low-priority work.\n// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API\n// for a good breakdown of the concepts behind this.\n\nimport Queue from 'tiny-queue';\n\nconst taskQueue = new Queue();\nlet runningRequestIdleCallback = false;\n\nfunction runTasks(deadline) {\n while (taskQueue.length && deadline.timeRemaining() > 0) {\n taskQueue.shift()();\n }\n if (taskQueue.length) {\n requestIdleCallback(runTasks);\n } else {\n runningRequestIdleCallback = false;\n }\n}\n\nfunction scheduleIdleTask(task) {\n taskQueue.push(task);\n if (!runningRequestIdleCallback) {\n runningRequestIdleCallback = true;\n requestIdleCallback(runTasks);\n }\n}\n\nexport default scheduleIdleTask;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/schedule_idle_task.js","'use strict';\n\n// Simple FIFO queue implementation to avoid having to do shift()\n// on an array, which is slow.\n\nfunction Queue() {\n this.length = 0;\n}\n\nQueue.prototype.push = function (item) {\n var node = {item: item};\n if (this.last) {\n this.last = this.last.next = node;\n } else {\n this.last = this.first = node;\n }\n this.length++;\n};\n\nQueue.prototype.shift = function () {\n var node = this.first;\n if (node) {\n this.first = node.next;\n if (!(--this.length)) {\n this.last = undefined;\n }\n return node.item;\n }\n};\n\nQueue.prototype.slice = function (start, end) {\n start = typeof start === 'undefined' ? 0 : start;\n end = typeof end === 'undefined' ? Infinity : end;\n\n var output = [];\n\n var i = 0;\n for (var node = this.first; node; node = node.next) {\n if (--end < 0) {\n break;\n } else if (++i > start) {\n output.push(node.item);\n }\n }\n return output;\n}\n\nmodule.exports = Queue;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/tiny-queue/index.js","\n// Get the bounding client rect from an IntersectionObserver entry.\n// This is to work around a bug in Chrome: https://crbug.com/737228\n\nlet hasBoundingRectBug;\n\nfunction getRectFromEntry(entry) {\n if (typeof hasBoundingRectBug !== 'boolean') {\n const boundingRect = entry.target.getBoundingClientRect();\n const observerRect = entry.boundingClientRect;\n hasBoundingRectBug = boundingRect.height !== observerRect.height ||\n boundingRect.top !== observerRect.top ||\n boundingRect.width !== observerRect.width ||\n boundingRect.bottom !== observerRect.bottom ||\n boundingRect.left !== observerRect.left ||\n boundingRect.right !== observerRect.right;\n }\n return hasBoundingRectBug ? entry.target.getBoundingClientRect() : entry.boundingClientRect;\n}\n\nexport default getRectFromEntry;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/get_rect_from_entry.js","// Wrapper for IntersectionObserver in order to make working with it\n// a bit easier. We also follow this performance advice:\n// \"If you need to observe multiple elements, it is both possible and\n// advised to observe multiple elements using the same IntersectionObserver\n// instance by calling observe() multiple times.\"\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n\nclass IntersectionObserverWrapper {\n\n callbacks = {};\n observerBacklog = [];\n observer = null;\n\n connect (options) {\n const onIntersection = (entries) => {\n entries.forEach(entry => {\n const id = entry.target.getAttribute('data-id');\n if (this.callbacks[id]) {\n this.callbacks[id](entry);\n }\n });\n };\n\n this.observer = new IntersectionObserver(onIntersection, options);\n this.observerBacklog.forEach(([ id, node, callback ]) => {\n this.observe(id, node, callback);\n });\n this.observerBacklog = null;\n }\n\n observe (id, node, callback) {\n if (!this.observer) {\n this.observerBacklog.push([ id, node, callback ]);\n } else {\n this.callbacks[id] = callback;\n this.observer.observe(node);\n }\n }\n\n unobserve (id, node) {\n if (this.observer) {\n delete this.callbacks[id];\n this.observer.unobserve(node);\n }\n }\n\n disconnect () {\n if (this.observer) {\n this.callbacks = {};\n this.observer.disconnect();\n this.observer = null;\n }\n }\n\n}\n\nexport default IntersectionObserverWrapper;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/util/intersection_observer_wrapper.js","import { debounce } from 'lodash';\nimport React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport StatusContainer from '../containers/status_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport LoadMore from './load_more';\nimport ScrollableList from './scrollable_list';\nimport { FormattedMessage } from 'react-intl';\n\nclass LoadGap extends ImmutablePureComponent {\n\n static propTypes = {\n disabled: PropTypes.bool,\n maxId: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n };\n\n handleClick = () => {\n this.props.onClick(this.props.maxId);\n }\n\n render () {\n return <LoadMore onClick={this.handleClick} disabled={this.props.disabled} />;\n }\n\n}\n\nexport default class StatusList extends ImmutablePureComponent {\n\n static propTypes = {\n scrollKey: PropTypes.string.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n onLoadMore: PropTypes.func,\n onScrollToTop: PropTypes.func,\n onScroll: PropTypes.func,\n trackScroll: PropTypes.bool,\n shouldUpdateScroll: PropTypes.func,\n isLoading: PropTypes.bool,\n isPartial: PropTypes.bool,\n hasMore: PropTypes.bool,\n prepend: PropTypes.node,\n emptyMessage: PropTypes.node,\n };\n\n static defaultProps = {\n trackScroll: true,\n };\n\n handleMoveUp = id => {\n const elementIndex = this.props.statusIds.indexOf(id) - 1;\n this._selectChild(elementIndex);\n }\n\n handleMoveDown = id => {\n const elementIndex = this.props.statusIds.indexOf(id) + 1;\n this._selectChild(elementIndex);\n }\n\n handleLoadOlder = debounce(() => {\n this.props.onLoadMore(this.props.statusIds.last());\n }, 300, { leading: true })\n\n _selectChild (index) {\n const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);\n\n if (element) {\n element.focus();\n }\n }\n\n setRef = c => {\n this.node = c;\n }\n\n render () {\n const { statusIds, onLoadMore, ...other } = this.props;\n const { isLoading, isPartial } = other;\n\n if (isPartial) {\n return (\n <div className='regeneration-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='regeneration_indicator.label' tagName='strong' defaultMessage='Loading…' />\n <FormattedMessage id='regeneration_indicator.sublabel' defaultMessage='Your home feed is being prepared!' />\n </div>\n </div>\n </div>\n );\n }\n\n let scrollableContent = (isLoading || statusIds.size > 0) ? (\n statusIds.map((statusId, index) => statusId === null ? (\n <LoadGap\n key={'gap:' + statusIds.get(index + 1)}\n disabled={isLoading}\n maxId={index > 0 ? statusIds.get(index - 1) : null}\n onClick={onLoadMore}\n />\n ) : (\n <StatusContainer\n key={statusId}\n id={statusId}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ))\n ) : null;\n\n return (\n <ScrollableList {...other} onLoadMore={onLoadMore && this.handleLoadOlder} ref={this.setRef}>\n {scrollableContent}\n </ScrollableList>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/status_list.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport StatusListContainer from '../ui/containers/status_list_container';\nimport Column from '../../components/column';\nimport ColumnHeader from '../../components/column_header';\nimport { expandPublicTimeline } from '../../actions/timelines';\nimport { addColumn, removeColumn, moveColumn } from '../../actions/columns';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ColumnSettingsContainer from './containers/column_settings_container';\nimport { connectPublicStream } from '../../actions/streaming';\n\nconst messages = defineMessages({\n title: { id: 'column.public', defaultMessage: 'Federated timeline' },\n});\n\nconst mapStateToProps = state => ({\n hasUnread: state.getIn(['timelines', 'public', 'unread']) > 0,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class PublicTimeline extends React.PureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n columnId: PropTypes.string,\n multiColumn: PropTypes.bool,\n hasUnread: PropTypes.bool,\n };\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('PUBLIC', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n componentDidMount () {\n const { dispatch } = this.props;\n\n dispatch(expandPublicTimeline());\n this.disconnect = dispatch(connectPublicStream());\n }\n\n componentWillUnmount () {\n if (this.disconnect) {\n this.disconnect();\n this.disconnect = null;\n }\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandPublicTimeline({ maxId }));\n }\n\n render () {\n const { intl, columnId, hasUnread, multiColumn } = this.props;\n const pinned = !!columnId;\n\n return (\n <Column ref={this.setRef}>\n <ColumnHeader\n icon='globe'\n active={hasUnread}\n title={intl.formatMessage(messages.title)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n >\n <ColumnSettingsContainer />\n </ColumnHeader>\n\n <StatusListContainer\n timelineId='public'\n onLoadMore={this.handleLoadMore}\n trackScroll={!pinned}\n scrollKey={`public_timeline-${columnId}`}\n emptyMessage={<FormattedMessage id='empty_column.public' defaultMessage='There is nothing here! Write something publicly, or manually follow users from other instances to fill it up' />}\n />\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/public_timeline/index.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nexport default class SettingText extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n settingKey: PropTypes.array.isRequired,\n label: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n handleChange = (e) => {\n this.props.onChange(this.props.settingKey, e.target.value);\n }\n\n render () {\n const { settings, settingKey, label } = this.props;\n\n return (\n <label>\n <span style={{ display: 'none' }}>{label}</span>\n <input\n className='setting-text'\n value={settings.getIn(settingKey)}\n onChange={this.handleChange}\n placeholder={label}\n />\n </label>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/setting_text.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport SettingText from '../../../components/setting_text';\n\nconst messages = defineMessages({\n filter_regex: { id: 'home.column_settings.filter_regex', defaultMessage: 'Filter out by regular expressions' },\n settings: { id: 'home.settings', defaultMessage: 'Column settings' },\n});\n\n@injectIntl\nexport default class ColumnSettings extends React.PureComponent {\n\n static propTypes = {\n settings: ImmutablePropTypes.map.isRequired,\n onChange: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n render () {\n const { settings, onChange, intl } = this.props;\n\n return (\n <div>\n <span className='column-settings__section'><FormattedMessage id='home.column_settings.advanced' defaultMessage='Advanced' /></span>\n\n <div className='column-settings__row'>\n <SettingText settings={settings} settingKey={['regex', 'body']} onChange={onChange} label={intl.formatMessage(messages.filter_regex)} />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/community_timeline/components/column_settings.js","import { connect } from 'react-redux';\nimport StatusList from '../../../components/status_list';\nimport { scrollTopTimeline } from '../../../actions/timelines';\nimport { Map as ImmutableMap, List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { debounce } from 'lodash';\nimport { me } from '../../../initial_state';\n\nconst makeGetStatusIds = () => createSelector([\n (state, { type }) => state.getIn(['settings', type], ImmutableMap()),\n (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),\n (state) => state.get('statuses'),\n], (columnSettings, statusIds, statuses) => {\n const rawRegex = columnSettings.getIn(['regex', 'body'], '').trim();\n let regex = null;\n\n try {\n regex = rawRegex && new RegExp(rawRegex, 'i');\n } catch (e) {\n // Bad regex, don't affect filters\n }\n\n return statusIds.filter(id => {\n const statusForId = statuses.get(id);\n let showStatus = true;\n\n if (columnSettings.getIn(['shows', 'reblog']) === false) {\n showStatus = showStatus && statusForId.get('reblog') === null;\n }\n\n if (columnSettings.getIn(['shows', 'reply']) === false) {\n showStatus = showStatus && (statusForId.get('in_reply_to_id') === null || statusForId.get('in_reply_to_account_id') === me);\n }\n\n if (showStatus && regex && statusForId.get('account') !== me) {\n const searchIndex = statusForId.get('reblog') ? statuses.getIn([statusForId.get('reblog'), 'search_index']) : statusForId.get('search_index');\n showStatus = !regex.test(searchIndex);\n }\n\n return showStatus;\n });\n});\n\nconst makeMapStateToProps = () => {\n const getStatusIds = makeGetStatusIds();\n\n const mapStateToProps = (state, { timelineId }) => ({\n statusIds: getStatusIds(state, { type: timelineId }),\n isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),\n isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),\n hasMore: state.getIn(['timelines', timelineId, 'hasMore']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { timelineId }) => ({\n\n onScrollToTop: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, true));\n }, 100),\n\n onScroll: debounce(() => {\n dispatch(scrollTopTimeline(timelineId, false));\n }, 100),\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(StatusList);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/containers/status_list_container.js","import { connect } from 'react-redux';\nimport ColumnSettings from '../../community_timeline/components/column_settings';\nimport { changeSetting } from '../../../actions/settings';\n\nconst mapStateToProps = state => ({\n settings: state.getIn(['settings', 'public']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n onChange (key, checked) {\n dispatch(changeSetting(['public', ...key], checked));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ColumnSettings);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/public_timeline/containers/column_settings_container.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/reblogs.js b/priv/static/packs/features/reblogs.js index 20ca4b7ec..2574c97b8 100644 --- a/priv/static/packs/features/reblogs.js +++ b/priv/static/packs/features/reblogs.js @@ -1,2 +1,2 @@ -webpackJsonp([20],{150:function(n,t,e){"use strict";e.d(t,"a",function(){return h});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),u=e.n(r),s=e(4),l=e.n(s),d=e(0),f=e.n(d),p=e(10),m=e.n(p),h=function(n){function t(){var e,o,i;c()(this,t);for(var a=arguments.length,r=Array(a),s=0;s<a;s++)r[s]=arguments[s];return e=o=u()(this,n.call.apply(n,[this].concat(r))),o.handleClick=function(){o.props.onClick()},i=e,u()(o,i)}return l()(t,n),t.prototype.render=function(){var n=this.props,t=n.icon,e=n.type,o=n.active,a=n.columnHeaderId,c="";return t&&(c=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:m()("column-header",{active:o}),id:a||null},void 0,i()("button",{onClick:this.handleClick},void 0,c,e))},t}(f.a.PureComponent)},283:function(n,t,e){"use strict";function o(n){return function(t){t({type:a,account:n}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(e(14),e(22),e(15),e(26)),a="MUTES_INIT_MODAL"},284:function(n,t,e){"use strict";e.d(t,"a",function(){return b});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),u=e.n(r),s=e(4),l=e.n(s),d=e(34),f=e.n(d),p=e(0),m=e.n(p),h=e(150),g=e(90),v=e(35),b=function(n){function t(){var e,o,i;c()(this,t);for(var a=arguments.length,r=Array(a),s=0;s<a;s++)r[s]=arguments[s];return e=o=u()(this,n.call.apply(n,[this].concat(r))),o.handleHeaderClick=function(){var n=o.node.querySelector(".scrollable");n&&(o._interruptScrollAnimation=Object(g.b)(n))},o.handleScroll=f()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(n){o.node=n},i=e,u()(o,i)}return l()(t,n),t.prototype.scrollTop=function(){var n=this.node.querySelector(".scrollable");n&&(this._interruptScrollAnimation=Object(g.b)(n))},t.prototype.render=function(){var n=this.props,t=n.heading,e=n.icon,o=n.children,a=n.active,c=n.hideHeadingOnMobile,r=t&&(!c||c&&!Object(v.b)(window.innerWidth)),u=r&&t.replace(/ /g,"-"),s=r&&i()(h.a,{icon:e,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:u});return m.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":u,className:"column",onScroll:this.handleScroll},s,o)},t}(m.a.PureComponent)},286:function(n,t,e){"use strict";e.d(t,"a",function(){return b});var o,i,a=e(2),c=e.n(a),r=e(1),u=e.n(r),s=e(3),l=e.n(s),d=e(4),f=e.n(d),p=e(0),m=e.n(p),h=e(6),g=e(5),v=e.n(g),b=(i=o=function(n){function t(){var e,o,i;u()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=l()(this,n.call.apply(n,[this].concat(c))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},i=e,l()(o,i)}return f()(t,n),t.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(m.a.PureComponent),o.contextTypes={router:v.a.object},i)},818:function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),e.d(t,"default",function(){return A});var o,i,a,c,r=e(2),u=e.n(r),s=e(1),l=e.n(s),d=e(3),f=e.n(d),p=e(4),m=e.n(p),h=e(0),g=(e.n(h),e(9)),v=e(5),b=e.n(v),y=e(13),M=e.n(y),k=e(296),w=e(67),_=e(152),j=e(843),O=e(284),I=e(286),C=e(12),N=e.n(C),q=function(n,t){return{accountIds:n.getIn(["user_lists","reblogged_by",t.params.statusId])}},A=(o=Object(g.connect)(q))((c=a=function(n){function t(){return l()(this,t),f()(this,n.apply(this,arguments))}return m()(t,n),t.prototype.componentWillMount=function(){this.props.dispatch(Object(w.k)(this.props.params.statusId))},t.prototype.componentWillReceiveProps=function(n){n.params.statusId!==this.props.params.statusId&&n.params.statusId&&this.props.dispatch(Object(w.k)(n.params.statusId))},t.prototype.render=function(){var n=this.props.accountIds;return n?u()(O.a,{},void 0,u()(I.a,{}),u()(_.a,{scrollKey:"reblogs"},void 0,u()("div",{className:"scrollable reblogs"},void 0,n.map(function(n){return u()(j.a,{id:n,withNote:!1},n)})))):u()(O.a,{},void 0,u()(k.a,{}))},t}(N.a),a.propTypes={params:b.a.object.isRequired,dispatch:b.a.func.isRequired,accountIds:M.a.list},i=c))||i},843:function(n,t,e){"use strict";var o=e(2),i=e.n(o),a=e(0),c=(e.n(a),e(9)),r=e(6),u=e(66),s=e(844),l=e(22),d=e(26),f=e(283),p=e(11),m=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var n=Object(u.c)();return function(t,e){return{account:n(t,e.id)}}},g=function(n,t){var e=t.intl;return{onFollow:function(t){n(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:i()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:e.formatMessage(m.unfollowConfirm),onConfirm:function(){return n(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){n(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(l.q)(t.get("id")))},onMute:function(t){n(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(f.a)(t))},onMuteNotifications:function(t,e){n(Object(l.A)(t.get("id"),e))}}};t.a=Object(r.g)(Object(c.connect)(h,g)(s.a))},844:function(n,t,e){"use strict";e.d(t,"a",function(){return N});var o,i,a,c=e(2),r=e.n(c),u=e(1),s=e.n(u),l=e(3),d=e.n(l),f=e(4),p=e.n(f),m=e(0),h=(e.n(m),e(13)),g=e.n(h),v=e(5),b=e.n(v),y=e(56),M=e(55),k=e(295),w=e(23),_=e(6),j=e(12),O=e.n(j),I=e(11),C=Object(_.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),N=Object(_.g)((a=i=function(n){function t(){var e,o,i;s()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=d()(this,n.call.apply(n,[this].concat(c))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},i=e,d()(o,i)}return p()(t,n),t.prototype.render=function(){var n=this.props,t=n.account,e=n.intl,o=n.hidden;if(!t)return r()("div",{});if(o)return r()("div",{},void 0,t.get("display_name"),t.get("username"));var i=void 0;if(t.get("id")!==I.g&&null!==t.get("relationship",null)){var a=t.getIn(["relationship","following"]),c=t.getIn(["relationship","requested"]),u=t.getIn(["relationship","blocking"]),s=t.getIn(["relationship","muting"]);if(c)i=r()(w.a,{disabled:!0,icon:"hourglass",title:e.formatMessage(C.requested)});else if(u)i=r()(w.a,{active:!0,icon:"unlock-alt",title:e.formatMessage(C.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(s){var l=void 0;l=t.getIn(["relationship","muting_notifications"])?r()(w.a,{active:!0,icon:"bell",title:e.formatMessage(C.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):r()(w.a,{active:!0,icon:"bell-slash",title:e.formatMessage(C.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),i=r()(m.Fragment,{},void 0,r()(w.a,{active:!0,icon:"volume-up",title:e.formatMessage(C.unmute,{name:t.get("username")}),onClick:this.handleMute}),l)}else t.get("moved")&&!a||(i=r()(w.a,{icon:a?"user-times":"user-plus",title:e.formatMessage(a?C.unfollow:C.follow),onClick:this.handleFollow,active:a}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(k.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(y.a,{account:t,size:36})),r()(M.a,{account:t})),r()("div",{className:"account__relationship"},void 0,i)))},t}(O.a),i.propTypes={account:g.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},o=a))||o}}); +webpackJsonp([19],{150:function(n,t,e){"use strict";e.d(t,"a",function(){return h});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),u=e.n(r),s=e(4),l=e.n(s),d=e(0),f=e.n(d),p=e(10),m=e.n(p),h=function(n){function t(){var e,o,i;c()(this,t);for(var a=arguments.length,r=Array(a),s=0;s<a;s++)r[s]=arguments[s];return e=o=u()(this,n.call.apply(n,[this].concat(r))),o.handleClick=function(){o.props.onClick()},i=e,u()(o,i)}return l()(t,n),t.prototype.render=function(){var n=this.props,t=n.icon,e=n.type,o=n.active,a=n.columnHeaderId,c="";return t&&(c=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:m()("column-header",{active:o}),id:a||null},void 0,i()("button",{onClick:this.handleClick},void 0,c,e))},t}(f.a.PureComponent)},282:function(n,t,e){"use strict";function o(n){return function(t){t({type:a,account:n}),t(Object(i.d)("MUTE"))}}t.a=o;var i=(e(14),e(22),e(15),e(26)),a="MUTES_INIT_MODAL"},283:function(n,t,e){"use strict";e.d(t,"a",function(){return b});var o=e(2),i=e.n(o),a=e(1),c=e.n(a),r=e(3),u=e.n(r),s=e(4),l=e.n(s),d=e(34),f=e.n(d),p=e(0),m=e.n(p),h=e(150),g=e(90),v=e(35),b=function(n){function t(){var e,o,i;c()(this,t);for(var a=arguments.length,r=Array(a),s=0;s<a;s++)r[s]=arguments[s];return e=o=u()(this,n.call.apply(n,[this].concat(r))),o.handleHeaderClick=function(){var n=o.node.querySelector(".scrollable");n&&(o._interruptScrollAnimation=Object(g.b)(n))},o.handleScroll=f()(function(){void 0!==o._interruptScrollAnimation&&o._interruptScrollAnimation()},200),o.setRef=function(n){o.node=n},i=e,u()(o,i)}return l()(t,n),t.prototype.scrollTop=function(){var n=this.node.querySelector(".scrollable");n&&(this._interruptScrollAnimation=Object(g.b)(n))},t.prototype.render=function(){var n=this.props,t=n.heading,e=n.icon,o=n.children,a=n.active,c=n.hideHeadingOnMobile,r=t&&(!c||c&&!Object(v.b)(window.innerWidth)),u=r&&t.replace(/ /g,"-"),s=r&&i()(h.a,{icon:e,active:a,type:t,onClick:this.handleHeaderClick,columnHeaderId:u});return m.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":u,className:"column",onScroll:this.handleScroll},s,o)},t}(m.a.PureComponent)},286:function(n,t,e){"use strict";e.d(t,"a",function(){return b});var o,i,a=e(2),c=e.n(a),r=e(1),u=e.n(r),s=e(3),l=e.n(s),d=e(4),f=e.n(d),p=e(0),m=e.n(p),h=e(6),g=e(5),v=e.n(g),b=(i=o=function(n){function t(){var e,o,i;u()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=l()(this,n.call.apply(n,[this].concat(c))),o.handleClick=function(){window.history&&1===window.history.length?o.context.router.history.push("/"):o.context.router.history.goBack()},i=e,l()(o,i)}return f()(t,n),t.prototype.render=function(){return c()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,c()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),c()(h.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(m.a.PureComponent),o.contextTypes={router:v.a.object},i)},817:function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),e.d(t,"default",function(){return A});var o,i,a,c,r=e(2),u=e.n(r),s=e(1),l=e.n(s),d=e(3),f=e.n(d),p=e(4),m=e.n(p),h=e(0),g=(e.n(h),e(9)),v=e(5),b=e.n(v),y=e(13),M=e.n(y),k=e(296),w=e(67),_=e(151),j=e(841),O=e(283),I=e(286),C=e(12),N=e.n(C),q=function(n,t){return{accountIds:n.getIn(["user_lists","reblogged_by",t.params.statusId])}},A=(o=Object(g.connect)(q))((c=a=function(n){function t(){return l()(this,t),f()(this,n.apply(this,arguments))}return m()(t,n),t.prototype.componentWillMount=function(){this.props.dispatch(Object(w.k)(this.props.params.statusId))},t.prototype.componentWillReceiveProps=function(n){n.params.statusId!==this.props.params.statusId&&n.params.statusId&&this.props.dispatch(Object(w.k)(n.params.statusId))},t.prototype.render=function(){var n=this.props.accountIds;return n?u()(O.a,{},void 0,u()(I.a,{}),u()(_.a,{scrollKey:"reblogs"},void 0,u()("div",{className:"scrollable reblogs"},void 0,n.map(function(n){return u()(j.a,{id:n,withNote:!1},n)})))):u()(O.a,{},void 0,u()(k.a,{}))},t}(N.a),a.propTypes={params:b.a.object.isRequired,dispatch:b.a.func.isRequired,accountIds:M.a.list},i=c))||i},841:function(n,t,e){"use strict";var o=e(2),i=e.n(o),a=e(0),c=(e.n(a),e(9)),r=e(6),u=e(66),s=e(842),l=e(22),d=e(26),f=e(282),p=e(11),m=Object(r.f)({unfollowConfirm:{id:"confirmations.unfollow.confirm",defaultMessage:"Unfollow"}}),h=function(){var n=Object(u.c)();return function(t,e){return{account:n(t,e.id)}}},g=function(n,t){var e=t.intl;return{onFollow:function(t){n(t.getIn(["relationship","following"])||t.getIn(["relationship","requested"])?p.j?Object(d.d)("CONFIRM",{message:i()(r.b,{id:"confirmations.unfollow.message",defaultMessage:"Are you sure you want to unfollow {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:e.formatMessage(m.unfollowConfirm),onConfirm:function(){return n(Object(l.D)(t.get("id")))}}):Object(l.D)(t.get("id")):Object(l.z)(t.get("id")))},onBlock:function(t){n(t.getIn(["relationship","blocking"])?Object(l.C)(t.get("id")):Object(l.q)(t.get("id")))},onMute:function(t){n(t.getIn(["relationship","muting"])?Object(l.E)(t.get("id")):Object(f.a)(t))},onMuteNotifications:function(t,e){n(Object(l.A)(t.get("id"),e))}}};t.a=Object(r.g)(Object(c.connect)(h,g)(s.a))},842:function(n,t,e){"use strict";e.d(t,"a",function(){return N});var o,i,a,c=e(2),r=e.n(c),u=e(1),s=e.n(u),l=e(3),d=e.n(l),f=e(4),p=e.n(f),m=e(0),h=(e.n(m),e(13)),g=e.n(h),v=e(5),b=e.n(v),y=e(56),M=e(55),k=e(295),w=e(23),_=e(6),j=e(12),O=e.n(j),I=e(11),C=Object(_.f)({follow:{id:"account.follow",defaultMessage:"Follow"},unfollow:{id:"account.unfollow",defaultMessage:"Unfollow"},requested:{id:"account.requested",defaultMessage:"Awaiting approval"},unblock:{id:"account.unblock",defaultMessage:"Unblock @{name}"},unmute:{id:"account.unmute",defaultMessage:"Unmute @{name}"},mute_notifications:{id:"account.mute_notifications",defaultMessage:"Mute notifications from @{name}"},unmute_notifications:{id:"account.unmute_notifications",defaultMessage:"Unmute notifications from @{name}"}}),N=Object(_.g)((a=i=function(n){function t(){var e,o,i;s()(this,t);for(var a=arguments.length,c=Array(a),r=0;r<a;r++)c[r]=arguments[r];return e=o=d()(this,n.call.apply(n,[this].concat(c))),o.handleFollow=function(){o.props.onFollow(o.props.account)},o.handleBlock=function(){o.props.onBlock(o.props.account)},o.handleMute=function(){o.props.onMute(o.props.account)},o.handleMuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!0)},o.handleUnmuteNotifications=function(){o.props.onMuteNotifications(o.props.account,!1)},i=e,d()(o,i)}return p()(t,n),t.prototype.render=function(){var n=this.props,t=n.account,e=n.intl,o=n.hidden;if(!t)return r()("div",{});if(o)return r()("div",{},void 0,t.get("display_name"),t.get("username"));var i=void 0;if(t.get("id")!==I.g&&null!==t.get("relationship",null)){var a=t.getIn(["relationship","following"]),c=t.getIn(["relationship","requested"]),u=t.getIn(["relationship","blocking"]),s=t.getIn(["relationship","muting"]);if(c)i=r()(w.a,{disabled:!0,icon:"hourglass",title:e.formatMessage(C.requested)});else if(u)i=r()(w.a,{active:!0,icon:"unlock-alt",title:e.formatMessage(C.unblock,{name:t.get("username")}),onClick:this.handleBlock});else if(s){var l=void 0;l=t.getIn(["relationship","muting_notifications"])?r()(w.a,{active:!0,icon:"bell",title:e.formatMessage(C.unmute_notifications,{name:t.get("username")}),onClick:this.handleUnmuteNotifications}):r()(w.a,{active:!0,icon:"bell-slash",title:e.formatMessage(C.mute_notifications,{name:t.get("username")}),onClick:this.handleMuteNotifications}),i=r()(m.Fragment,{},void 0,r()(w.a,{active:!0,icon:"volume-up",title:e.formatMessage(C.unmute,{name:t.get("username")}),onClick:this.handleMute}),l)}else t.get("moved")&&!a||(i=r()(w.a,{icon:a?"user-times":"user-plus",title:e.formatMessage(a?C.unfollow:C.follow),onClick:this.handleFollow,active:a}))}return r()("div",{className:"account"},void 0,r()("div",{className:"account__wrapper"},void 0,r()(k.a,{className:"account__display-name",href:t.get("url"),to:"/accounts/"+t.get("id")},t.get("id"),r()("div",{className:"account__avatar-wrapper"},void 0,r()(y.a,{account:t,size:36})),r()(M.a,{account:t})),r()("div",{className:"account__relationship"},void 0,i)))},t}(O.a),i.propTypes={account:g.a.map.isRequired,onFollow:b.a.func.isRequired,onBlock:b.a.func.isRequired,onMute:b.a.func.isRequired,onMuteNotifications:b.a.func.isRequired,intl:b.a.object.isRequired,hidden:b.a.bool},o=a))||o}}); //# sourceMappingURL=reblogs.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/reblogs.js.map b/priv/static/packs/features/reblogs.js.map index 5add171ff..abd190324 100644 --- a/priv/static/packs/features/reblogs.js.map +++ b/priv/static/packs/features/reblogs.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/reblogs.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/reblogs/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","818","defineProperty","value","Reblogs","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9__actions_interactions__","__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_11__containers_account_container__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default","mapStateToProps","state","accountIds","getIn","params","statusId","_ImmutablePureCompone","componentWillMount","componentWillReceiveProps","nextProps","scrollKey","map","withNote","propTypes","isRequired","func","list","843","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","messages","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","intl","onFollow","message","values","name","get","confirm","formatMessage","onConfirm","onBlock","onMute","onMuteNotifications","notifications","844","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","disabled","title","hidingNotificationsButton","href","to","size","bool"],"mappings":"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","file":"features/reblogs.js","sourcesContent":["webpackJsonp([20],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 818:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Reblogs; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_account_container__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n accountIds: state.getIn(['user_lists', 'reblogged_by', props.params.statusId])\n };\n};\n\nvar Reblogs = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Reblogs, _ImmutablePureCompone);\n\n function Reblogs() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Reblogs);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n Reblogs.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_interactions__[\"k\" /* fetchReblogs */])(this.props.params.statusId));\n };\n\n Reblogs.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_interactions__[\"k\" /* fetchReblogs */])(nextProps.params.statusId));\n }\n };\n\n Reblogs.prototype.render = function render() {\n var accountIds = this.props.accountIds;\n\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'reblogs'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable reblogs'\n }, void 0, accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_account_container__[\"a\" /* default */], {\n id: id,\n withNote: false\n }, id);\n }))));\n };\n\n return Reblogs;\n}(__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list\n}, _temp)) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(844);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 844:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/reblogs.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport { fetchReblogs } from '../../actions/interactions';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport AccountContainer from '../../containers/account_container';\nimport Column from '../ui/components/column';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, props) => ({\n accountIds: state.getIn(['user_lists', 'reblogged_by', props.params.statusId]),\n});\n\n@connect(mapStateToProps)\nexport default class Reblogs extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchReblogs(this.props.params.statusId));\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this.props.dispatch(fetchReblogs(nextProps.params.statusId));\n }\n }\n\n render () {\n const { accountIds } = this.props;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='reblogs'>\n <div className='scrollable reblogs'>\n {accountIds.map(id => <AccountContainer key={id} id={id} withNote={false} />)}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/reblogs/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/reblogs.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/reblogs/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","Object","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","handleHeaderClick","scrollable","node","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","children","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","createElement","ref","role","aria-labelledby","onScroll","286","ColumnBackButton","_class","_temp2","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","router","push","goBack","defaultMessage","contextTypes","object","817","defineProperty","value","Reblogs","_dec","_class2","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__","__WEBPACK_IMPORTED_MODULE_9__actions_interactions__","__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_11__containers_account_container__","__WEBPACK_IMPORTED_MODULE_12__ui_components_column__","__WEBPACK_IMPORTED_MODULE_13__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default","mapStateToProps","state","accountIds","getIn","params","statusId","_ImmutablePureCompone","componentWillMount","componentWillReceiveProps","nextProps","scrollKey","map","withNote","propTypes","isRequired","func","list","841","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","messages","unfollowConfirm","makeMapStateToProps","getAccount","mapDispatchToProps","_ref","intl","onFollow","message","values","name","get","confirm","formatMessage","onConfirm","onBlock","onMute","onMuteNotifications","notifications","842","Account","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_11_react_intl__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_13__initial_state__","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","disabled","title","hidingNotificationsButton","href","to","size","bool"],"mappings":"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","file":"features/reblogs.js","sourcesContent":["webpackJsonp([19],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Reblogs; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_account_container__ = __webpack_require__(841);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp;\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, props) {\n return {\n accountIds: state.getIn(['user_lists', 'reblogged_by', props.params.statusId])\n };\n};\n\nvar Reblogs = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = (_temp = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Reblogs, _ImmutablePureCompone);\n\n function Reblogs() {\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Reblogs);\n\n return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n }\n\n Reblogs.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_interactions__[\"k\" /* fetchReblogs */])(this.props.params.statusId));\n };\n\n Reblogs.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_interactions__[\"k\" /* fetchReblogs */])(nextProps.params.statusId));\n }\n };\n\n Reblogs.prototype.render = function render() {\n var accountIds = this.props.accountIds;\n\n\n if (!accountIds) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_loading_indicator__[\"a\" /* default */], {}));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'reblogs'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'scrollable reblogs'\n }, void 0, accountIds.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_account_container__[\"a\" /* default */], {\n id: id,\n withNote: false\n }, id);\n }))));\n };\n\n return Reblogs;\n}(__WEBPACK_IMPORTED_MODULE_14_react_immutable_pure_component___default.a), _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n accountIds: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list\n}, _temp)) || _class);\n\n\n/***/ }),\n\n/***/ 841:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(842);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n unfollowConfirm: {\n 'id': 'confirmations.unfollow.confirm',\n 'defaultMessage': 'Unfollow'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n account: getAccount(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onFollow: function onFollow(account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.unfollow.message',\n defaultMessage: 'Are you sure you want to unfollow {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n }));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n }\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n }\n },\n onBlock: function onBlock(account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n },\n onMute: function onMute(account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }\n },\n onMuteNotifications: function onMuteNotifications(account, notifications) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 842:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n follow: {\n 'id': 'account.follow',\n 'defaultMessage': 'Follow'\n },\n unfollow: {\n 'id': 'account.unfollow',\n 'defaultMessage': 'Unfollow'\n },\n requested: {\n 'id': 'account.requested',\n 'defaultMessage': 'Awaiting approval'\n },\n unblock: {\n 'id': 'account.unblock',\n 'defaultMessage': 'Unblock @{name}'\n },\n unmute: {\n 'id': 'account.unmute',\n 'defaultMessage': 'Unmute @{name}'\n },\n mute_notifications: {\n 'id': 'account.mute_notifications',\n 'defaultMessage': 'Mute notifications from @{name}'\n },\n unmute_notifications: {\n 'id': 'account.unmute_notifications',\n 'defaultMessage': 'Unmute notifications from @{name}'\n }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n function Account() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n _this.props.onFollow(_this.props.account);\n }, _this.handleBlock = function () {\n _this.props.onBlock(_this.props.account);\n }, _this.handleMute = function () {\n _this.props.onMute(_this.props.account);\n }, _this.handleMuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, true);\n }, _this.handleUnmuteNotifications = function () {\n _this.props.onMuteNotifications(_this.props.account, false);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Account.prototype.render = function render() {\n var _props = this.props,\n account = _props.account,\n intl = _props.intl,\n hidden = _props.hidden;\n\n\n if (!account) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n }\n\n if (hidden) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n }\n\n var buttons = void 0;\n\n if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n var following = account.getIn(['relationship', 'following']);\n var requested = account.getIn(['relationship', 'requested']);\n var blocking = account.getIn(['relationship', 'blocking']);\n var muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n disabled: true,\n icon: 'hourglass',\n title: intl.formatMessage(messages.requested)\n });\n } else if (blocking) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'unlock-alt',\n title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n onClick: this.handleBlock\n });\n } else if (muting) {\n var hidingNotificationsButton = void 0;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell',\n title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n onClick: this.handleUnmuteNotifications\n });\n } else {\n hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'bell-slash',\n title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n onClick: this.handleMuteNotifications\n });\n }\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n active: true,\n icon: 'volume-up',\n title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n onClick: this.handleMute\n }), hidingNotificationsButton);\n } else if (!account.get('moved') || following) {\n buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n icon: following ? 'user-times' : 'user-plus',\n title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n onClick: this.handleFollow,\n active: following\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n className: 'account__display-name',\n href: account.get('url'),\n to: '/accounts/' + account.get('id')\n }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__avatar-wrapper'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n account: account,\n size: 36\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n account: account\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'account__relationship'\n }, void 0, buttons)));\n };\n\n return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/reblogs.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport { fetchReblogs } from '../../actions/interactions';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport AccountContainer from '../../containers/account_container';\nimport Column from '../ui/components/column';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst mapStateToProps = (state, props) => ({\n accountIds: state.getIn(['user_lists', 'reblogged_by', props.params.statusId]),\n});\n\n@connect(mapStateToProps)\nexport default class Reblogs extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n accountIds: ImmutablePropTypes.list,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchReblogs(this.props.params.statusId));\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this.props.dispatch(fetchReblogs(nextProps.params.statusId));\n }\n }\n\n render () {\n const { accountIds } = this.props;\n\n if (!accountIds) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n return (\n <Column>\n <ColumnBackButton />\n\n <ScrollContainer scrollKey='reblogs'>\n <div className='scrollable reblogs'>\n {accountIds.map(id => <AccountContainer key={id} id={id} withNote={false} />)}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/reblogs/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n followAccount,\n unfollowAccount,\n blockAccount,\n unblockAccount,\n muteAccount,\n unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = (state, props) => ({\n account: getAccount(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onFollow (account) {\n if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n if (unfollowModal) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.unfollowConfirm),\n onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n }));\n } else {\n dispatch(unfollowAccount(account.get('id')));\n }\n } else {\n dispatch(followAccount(account.get('id')));\n }\n },\n\n onBlock (account) {\n if (account.getIn(['relationship', 'blocking'])) {\n dispatch(unblockAccount(account.get('id')));\n } else {\n dispatch(blockAccount(account.get('id')));\n }\n },\n\n onMute (account) {\n if (account.getIn(['relationship', 'muting'])) {\n dispatch(unmuteAccount(account.get('id')));\n } else {\n dispatch(initMuteModal(account));\n }\n },\n\n\n onMuteNotifications (account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n follow: { id: 'account.follow', defaultMessage: 'Follow' },\n unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n static propTypes = {\n account: ImmutablePropTypes.map.isRequired,\n onFollow: PropTypes.func.isRequired,\n onBlock: PropTypes.func.isRequired,\n onMute: PropTypes.func.isRequired,\n onMuteNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n hidden: PropTypes.bool,\n };\n\n handleFollow = () => {\n this.props.onFollow(this.props.account);\n }\n\n handleBlock = () => {\n this.props.onBlock(this.props.account);\n }\n\n handleMute = () => {\n this.props.onMute(this.props.account);\n }\n\n handleMuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, true);\n }\n\n handleUnmuteNotifications = () => {\n this.props.onMuteNotifications(this.props.account, false);\n }\n\n render () {\n const { account, intl, hidden } = this.props;\n\n if (!account) {\n return <div />;\n }\n\n if (hidden) {\n return (\n <div>\n {account.get('display_name')}\n {account.get('username')}\n </div>\n );\n }\n\n let buttons;\n\n if (account.get('id') !== me && account.get('relationship', null) !== null) {\n const following = account.getIn(['relationship', 'following']);\n const requested = account.getIn(['relationship', 'requested']);\n const blocking = account.getIn(['relationship', 'blocking']);\n const muting = account.getIn(['relationship', 'muting']);\n\n if (requested) {\n buttons = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n } else if (blocking) {\n buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n } else if (muting) {\n let hidingNotificationsButton;\n if (account.getIn(['relationship', 'muting_notifications'])) {\n hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n } else {\n hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username') })} onClick={this.handleMuteNotifications} />;\n }\n buttons = (\n <Fragment>\n <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n {hidingNotificationsButton}\n </Fragment>\n );\n } else if (!account.get('moved') || following) {\n buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n }\n }\n\n return (\n <div className='account'>\n <div className='account__wrapper'>\n <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n <DisplayName account={account} />\n </Permalink>\n\n <div className='account__relationship'>\n {buttons}\n </div>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js"],"sourceRoot":""}
\ No newline at end of file diff --git a/priv/static/packs/features/status.js b/priv/static/packs/features/status.js index 3e26334e0..64af68179 100644 --- a/priv/static/packs/features/status.js +++ b/priv/static/packs/features/status.js @@ -1,2 +1,2 @@ -webpackJsonp([16,26],{150:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var a=n(2),i=n.n(a),o=n(1),s=n.n(o),r=n(3),l=n.n(r),c=n(4),d=n.n(c),u=n(0),p=n.n(u),h=n(10),f=n.n(h),g=function(e){function t(){var n,a,i;s()(this,t);for(var o=arguments.length,r=Array(o),c=0;c<o;c++)r[c]=arguments[c];return n=a=l()(this,e.call.apply(e,[this].concat(r))),a.handleClick=function(){a.props.onClick()},i=n,l()(a,i)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,n=e.type,a=e.active,o=e.columnHeaderId,s="";return t&&(s=i()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),i()("h1",{className:f()("column-header",{active:a}),id:o||null},void 0,i()("button",{onClick:this.handleClick},void 0,s,n))},t}(p.a.PureComponent)},155:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return I});var a,i,o,s,r,l=n(2),c=n.n(l),d=n(1),u=n.n(d),p=n(3),h=n.n(p),f=n(4),g=n.n(f),v=n(0),m=n.n(v),b=n(8),y=(n.n(b),n(23)),_=n(6),k=n(35),M=n(10),C=n.n(M),O=n(11),j=Object(_.f)({toggle_visible:{id:"media_gallery.toggle_visible",defaultMessage:"Toggle visibility"}}),w=(i=a=function(e){function t(){var n,a,i;u()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=a=h()(this,e.call.apply(e,[this].concat(s))),a.handleMouseEnter=function(e){a.hoverToPlay()&&e.target.play()},a.handleMouseLeave=function(e){a.hoverToPlay()&&(e.target.pause(),e.target.currentTime=0)},a.handleClick=function(e){var t=a.props,n=t.index,i=t.onClick;0===e.button&&(e.preventDefault(),i(n)),e.stopPropagation()},i=n,h()(a,i)}return g()(t,e),t.prototype.hoverToPlay=function(){var e=this.props.attachment;return!O.a&&"gifv"===e.get("type")},t.prototype.render=function(){var e=this.props,t=e.attachment,n=e.index,a=e.size,i=e.standalone,o=50,s=100,r="auto",l="auto",d="auto",u="auto";1===a&&(o=100),(4===a||3===a&&n>0)&&(s=50),2===a?0===n?u="2px":l="2px":3===a?(0===n?u="2px":n>0&&(l="2px"),1===n?d="2px":n>1&&(r="2px")):4===a&&(0!==n&&2!==n||(u="2px"),1!==n&&3!==n||(l="2px"),n<2?d="2px":r="2px");var p="";if("image"===t.get("type")){var h=t.get("preview_url"),f=t.getIn(["meta","small","width"]),g=t.get("url"),v=t.getIn(["meta","original","width"]),m="number"==typeof v&&"number"==typeof f,b=m?g+" "+v+"w, "+h+" "+f+"w":null,y=m?"(min-width: 1025px) "+o/100*320+"px, "+o+"vw":null,_=t.getIn(["meta","focus","x"])||0,M=t.getIn(["meta","focus","y"])||0,j=100*(_/2+.5),w=100*(M/-2+.5);p=c()("a",{className:"media-gallery__item-thumbnail",href:t.get("remote_url")||g,onClick:this.handleClick,target:"_blank"},void 0,c()("img",{src:h,srcSet:b,sizes:y,alt:t.get("description"),title:t.get("description"),style:{objectPosition:j+"% "+w+"%"}}))}else if("gifv"===t.get("type")){var I=!Object(k.a)()&&O.a;p=c()("div",{className:C()("media-gallery__gifv",{autoplay:I})},void 0,c()("video",{className:"media-gallery__item-gifv-thumbnail","aria-label":t.get("description"),role:"application",src:t.get("url"),onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,autoPlay:I,loop:!0,muted:!0}),c()("span",{className:"media-gallery__gifv__label"},void 0,"GIF"))}return c()("div",{className:C()("media-gallery__item",{standalone:i}),style:{left:l,top:r,right:u,bottom:d,width:o+"%",height:s+"%"}},t.get("id"),p)},t}(m.a.PureComponent),a.defaultProps={standalone:!1,index:0,size:1},i),I=Object(_.g)((r=s=function(e){function t(){var n,a,i;u()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=a=h()(this,e.call.apply(e,[this].concat(s))),a.state={visible:!a.props.sensitive||O.f},a.handleOpen=function(){a.setState({visible:!a.state.visible})},a.handleClick=function(e){a.props.onOpenMedia(a.props.media,e)},a.handleRef=function(e){e&&a.setState({width:e.offsetWidth})},i=n,h()(a,i)}return g()(t,e),t.prototype.componentWillReceiveProps=function(e){Object(b.is)(e.media,this.props.media)||this.setState({visible:!e.sensitive})},t.prototype.isStandaloneEligible=function(){var e=this.props,t=e.media;return e.standalone&&1===t.size&&t.getIn([0,"meta","small","aspect"])},t.prototype.render=function(){var e=this,t=this.props,n=t.media,a=t.intl,i=t.sensitive,o=t.height,s=this.state,r=s.width,l=s.visible,d=void 0,u={};if(this.isStandaloneEligible()?r&&(u.height=r/this.props.media.getIn([0,"meta","small","aspect"])):u.height=r?r/(16/9):o,l){var p=n.take(4).size;d=this.isStandaloneEligible()?c()(w,{standalone:!0,onClick:this.handleClick,attachment:n.get(0)}):n.take(4).map(function(t,n){return c()(w,{onClick:e.handleClick,attachment:t,index:n,size:p},t.get("id"))})}else{var h=void 0;h=i?c()(_.b,{id:"status.sensitive_warning",defaultMessage:"Sensitive content"}):c()(_.b,{id:"status.media_hidden",defaultMessage:"Media hidden"}),d=m.a.createElement("button",{type:"button",className:"media-spoiler",onClick:this.handleOpen,style:u,ref:this.handleRef},c()("span",{className:"media-spoiler__warning"},void 0,h),c()("span",{className:"media-spoiler__trigger"},void 0,c()(_.b,{id:"status.sensitive_toggle",defaultMessage:"Click to view"})))}return m.a.createElement("div",{className:"media-gallery",style:u,ref:this.handleRef},c()("div",{className:C()("spoiler-button",{"spoiler-button--visible":l})},void 0,c()(y.a,{title:a.formatMessage(j.toggle_visible),icon:l?"eye":"eye-slash",overlay:!0,onClick:this.handleOpen})),d)},t}(m.a.PureComponent),s.defaultProps={standalone:!1},o=r))||o},283:function(e,t,n){"use strict";function a(e){return function(t){t({type:o,account:e}),t(Object(i.d)("MUTE"))}}t.a=a;var i=(n(14),n(22),n(15),n(26)),o="MUTES_INIT_MODAL"},284:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var a=n(2),i=n.n(a),o=n(1),s=n.n(o),r=n(3),l=n.n(r),c=n(4),d=n.n(c),u=n(34),p=n.n(u),h=n(0),f=n.n(h),g=n(150),v=n(90),m=n(35),b=function(e){function t(){var n,a,i;s()(this,t);for(var o=arguments.length,r=Array(o),c=0;c<o;c++)r[c]=arguments[c];return n=a=l()(this,e.call.apply(e,[this].concat(r))),a.handleHeaderClick=function(){var e=a.node.querySelector(".scrollable");e&&(a._interruptScrollAnimation=Object(v.b)(e))},a.handleScroll=p()(function(){void 0!==a._interruptScrollAnimation&&a._interruptScrollAnimation()},200),a.setRef=function(e){a.node=e},i=n,l()(a,i)}return d()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(v.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,n=e.icon,a=e.children,o=e.active,s=e.hideHeadingOnMobile,r=t&&(!s||s&&!Object(m.b)(window.innerWidth)),l=r&&t.replace(/ /g,"-"),c=r&&i()(g.a,{icon:n,active:o,type:t,onClick:this.handleHeaderClick,columnHeaderId:l});return f.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":l,className:"column",onScroll:this.handleScroll},c,a)},t}(f.a.PureComponent)},285:function(e,t,n){"use strict";var a=n(2),i=n.n(a),o=n(0),s=(n.n(o),n(9)),r=n(153),l=n(66),c=n(18),d=n(67),u=n(22),p=n(91),h=n(283),f=n(151),g=n(26),v=n(6),m=n(11),b=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(l.e)();return function(t,n){return{status:e(t,n.id)}}},_=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(c.T)(t,n))},onModalReblog:function(t){e(Object(d.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(d.n)(t)):n.shiftKey||!m.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(d.m)(t):Object(d.i)(t))},onDelete:function(t){e(m.e?Object(g.d)("CONFIRM",{message:n.formatMessage(b.deleteMessage),confirm:n.formatMessage(b.deleteConfirm),onConfirm:function(){return e(Object(p.f)(t.get("id")))}}):Object(p.f)(t.get("id")))},onMention:function(t,n){e(Object(c.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:i()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:i()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(b.blockConfirm),onConfirm:function(){return e(Object(u.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.k)(t.get("account"),t))},onMute:function(t){e(Object(h.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(p.k)(t.get("id")):Object(p.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(p.j)(t.get("id")):Object(p.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,_)(r.a))},286:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var a,i,o=n(2),s=n.n(o),r=n(1),l=n.n(r),c=n(3),d=n.n(c),u=n(4),p=n.n(u),h=n(0),f=n.n(h),g=n(6),v=n(5),m=n.n(v),b=(i=a=function(e){function t(){var n,a,i;l()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=a=d()(this,e.call.apply(e,[this].concat(s))),a.handleClick=function(){window.history&&1===window.history.length?a.context.router.history.push("/"):a.context.router.history.goBack()},i=n,d()(a,i)}return p()(t,e),t.prototype.render=function(){return s()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,s()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),s()(g.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(f.a.PureComponent),a.contextTypes={router:m.a.object},i)},332:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var a,i,o=n(2),s=n.n(o),r=n(1),l=n.n(r),c=n(3),d=n.n(c),u=n(4),p=n.n(u),h=n(0),f=n.n(h),g=n(8),v=n.n(g),m=n(333),b=n.n(m),y=n(10),_=n.n(y),k=function(e){return e.split(".").map(function(e){return 0===e.indexOf("xn--")?b.a.decode(e.slice("xn--".length)):e}).join(".")},M=function(e){var t=document.createElement("a");return t.href=e,t.hostname},C=function(e,t){var n=e.indexOf(" ",t);return-1===n?e:e.substring(0,n)+(e.length>t?"…":"")},O=new DOMParser,j=function(e){var t=O.parseFromString(e,"text/html").documentElement,n=t.querySelector("iframe");return n?(-1!==n.src.indexOf("?")?n.src+="&":n.src+="?",n.src+="autoplay=1&auto_play=1",t.querySelector("body").innerHTML):e},w=(i=a=function(e){function t(){var n,a,i;l()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=a=d()(this,e.call.apply(e,[this].concat(s))),a.state={width:280,embedded:!1},a.handlePhotoClick=function(){var e=a.props,t=e.card;(0,e.onOpenMedia)(v.a.fromJS([{type:"image",url:t.get("embed_url"),description:t.get("title"),meta:{original:{width:t.get("width"),height:t.get("height")}}}]),0)},a.handleEmbedClick=function(){"photo"===a.props.card.get("type")?a.handlePhotoClick():a.setState({embedded:!0})},a.setRef=function(e){e&&a.setState({width:e.offsetWidth})},i=n,d()(a,i)}return p()(t,e),t.prototype.componentWillReceiveProps=function(e){this.props.card!==e.card&&this.setState({embedded:!1})},t.prototype.renderVideo=function(){var e=this.props.card,t={__html:j(e.get("html"))},n=this.state.width,a=e.get("width")/e.get("height"),i=e.get("width")>e.get("height")?n/a:n*a;return f.a.createElement("div",{ref:this.setRef,className:"status-card__image status-card-video",dangerouslySetInnerHTML:t,style:{height:i}})},t.prototype.render=function(){var e=this.props,t=e.card,n=e.maxDescription,a=this.state,i=a.width,o=a.embedded;if(null===t)return null;var r=0===t.get("provider_name").length?k(M(t.get("url"))):t.get("provider_name"),l=t.get("width")>t.get("height")&&t.get("width")+100>=i||"link"!==t.get("type"),c=_()("status-card",{horizontal:l}),d="link"!==t.get("type"),u=d?s()("a",{className:"status-card__title",href:t.get("url"),title:t.get("title"),rel:"noopener",target:"_blank"},void 0,s()("strong",{},void 0,t.get("title"))):s()("strong",{className:"status-card__title",title:t.get("title")},void 0,t.get("title")),p=t.get("width")/t.get("height"),h=t.get("width")>t.get("height")?i/p:i*p,g=s()("div",{className:"status-card__content"},void 0,u,!l&&s()("p",{className:"status-card__description"},void 0,C(t.get("description")||"",n)),s()("span",{className:"status-card__host"},void 0,r)),v="",m=s()("div",{style:{backgroundImage:"url("+t.get("image")+")",width:l?i:null,height:l?h:null},className:"status-card__image-image"});if(d){if(o)v=this.renderVideo();else{var b="play";"photo"===t.get("type")&&(b="search-plus"),v=s()("div",{className:"status-card__image"},void 0,m,s()("div",{className:"status-card__actions"},void 0,s()("div",{},void 0,s()("button",{onClick:this.handleEmbedClick},void 0,s()("i",{className:"fa fa-"+b})),s()("a",{href:t.get("url"),target:"_blank",rel:"noopener"},void 0,s()("i",{className:"fa fa-external-link"})))))}return f.a.createElement("div",{className:c,ref:this.setRef},v,g)}return t.get("image")&&(v=s()("div",{className:"status-card__image"},void 0,m)),f.a.createElement("a",{href:t.get("url"),className:c,target:"_blank",rel:"noopener",ref:this.setRef},v,g)},t}(f.a.PureComponent),a.defaultProps={maxDescription:50},i)},333:function(e,t,n){(function(e,a){var i;!function(o){function s(e){throw new RangeError(A[e])}function r(e,t){for(var n=e.length,a=[];n--;)a[n]=t(e[n]);return a}function l(e,t){var n=e.split("@"),a="";return n.length>1&&(a=n[0]+"@",e=n[1]),e=e.replace(S,"."),a+r(e.split("."),t).join(".")}function c(e){for(var t,n,a=[],i=0,o=e.length;i<o;)t=e.charCodeAt(i++),t>=55296&&t<=56319&&i<o?(n=e.charCodeAt(i++),56320==(64512&n)?a.push(((1023&t)<<10)+(1023&n)+65536):(a.push(t),i--)):a.push(t);return a}function d(e){return r(e,function(e){var t="";return e>65535&&(e-=65536,t+=E(e>>>10&1023|55296),e=56320|1023&e),t+=E(e)}).join("")}function u(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:k}function p(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function h(e,t,n){var a=0;for(e=n?D(e/j):e>>1,e+=D(e/t);e>T*C>>1;a+=k)e=D(e/T);return D(a+(T+1)*e/(e+O))}function f(e){var t,n,a,i,o,r,l,c,p,f,g=[],v=e.length,m=0,b=I,y=w;for(n=e.lastIndexOf(x),n<0&&(n=0),a=0;a<n;++a)e.charCodeAt(a)>=128&&s("not-basic"),g.push(e.charCodeAt(a));for(i=n>0?n+1:0;i<v;){for(o=m,r=1,l=k;i>=v&&s("invalid-input"),c=u(e.charCodeAt(i++)),(c>=k||c>D((_-m)/r))&&s("overflow"),m+=c*r,p=l<=y?M:l>=y+C?C:l-y,!(c<p);l+=k)f=k-p,r>D(_/f)&&s("overflow"),r*=f;t=g.length+1,y=h(m-o,t,0==o),D(m/t)>_-b&&s("overflow"),b+=D(m/t),m%=t,g.splice(m++,0,b)}return d(g)}function g(e){var t,n,a,i,o,r,l,d,u,f,g,v,m,b,y,O=[];for(e=c(e),v=e.length,t=I,n=0,o=w,r=0;r<v;++r)(g=e[r])<128&&O.push(E(g));for(a=i=O.length,i&&O.push(x);a<v;){for(l=_,r=0;r<v;++r)(g=e[r])>=t&&g<l&&(l=g);for(m=a+1,l-t>D((_-n)/m)&&s("overflow"),n+=(l-t)*m,t=l,r=0;r<v;++r)if(g=e[r],g<t&&++n>_&&s("overflow"),g==t){for(d=n,u=k;f=u<=o?M:u>=o+C?C:u-o,!(d<f);u+=k)y=d-f,b=k-f,O.push(E(p(f+y%b,0))),d=D(y/b);O.push(E(p(d,0))),o=h(n,m,a==i),n=0,++a}++n,++t}return O.join("")}function v(e){return l(e,function(e){return R.test(e)?f(e.slice(4).toLowerCase()):e})}function m(e){return l(e,function(e){return N.test(e)?"xn--"+g(e):e})}var b=("object"==typeof t&&t&&t.nodeType,"object"==typeof e&&e&&e.nodeType,"object"==typeof a&&a);var y,_=2147483647,k=36,M=1,C=26,O=38,j=700,w=72,I=128,x="-",R=/^xn--/,N=/[^\x20-\x7E]/,S=/[\x2E\u3002\uFF0E\uFF61]/g,A={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},T=k-M,D=Math.floor,E=String.fromCharCode;y={version:"1.4.1",ucs2:{decode:c,encode:d},decode:f,encode:g,toASCII:m,toUnicode:v},void 0!==(i=function(){return y}.call(t,n,t,e))&&(e.exports=i)}()}).call(t,n(73)(e),n(45))},811:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return G});var a,i,o,s,r=n(2),l=n.n(r),c=n(1),d=n.n(c),u=n(3),p=n.n(u),h=n(4),f=n.n(h),g=n(0),v=n.n(g),m=n(9),b=n(5),y=n.n(b),_=n(10),k=n.n(_),M=n(13),C=n.n(M),O=n(91),j=n(845),w=n(964),I=n(966),x=n(284),R=n(67),N=n(18),S=n(22),A=n(283),T=n(151),D=n(66),E=n(152),P=n(286),H=n(68),F=n(285),B=n(26),z=n(6),V=n(12),q=n.n(V),U=n(157),W=(n.n(U),n(11)),L=n(154),J=Object(z.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},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"}}),K=function(){var e=Object(D.e)();return function(t,n){return{status:e(t,n.params.statusId),ancestorsIds:t.getIn(["contexts","ancestors",n.params.statusId]),descendantsIds:t.getIn(["contexts","descendants",n.params.statusId])}}},G=(a=Object(m.connect)(K),Object(z.g)(i=a((s=o=function(e){function t(){var n,a,i;d()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=a=p()(this,e.call.apply(e,[this].concat(s))),a.state={fullscreen:!1},a.handleFavouriteClick=function(e){e.get("favourited")?a.props.dispatch(Object(R.m)(e)):a.props.dispatch(Object(R.i)(e))},a.handleReplyClick=function(e){a.props.dispatch(Object(N.T)(e,a.context.router.history))},a.handleModalReblog=function(e){a.props.dispatch(Object(R.l)(e))},a.handleReblogClick=function(e,t){e.get("reblogged")?a.props.dispatch(Object(R.n)(e)):t.shiftKey||!W.b?a.handleModalReblog(e):a.props.dispatch(Object(B.d)("BOOST",{status:e,onReblog:a.handleModalReblog}))},a.handleDeleteClick=function(e){var t=a.props,n=t.dispatch,i=t.intl;n(W.e?Object(B.d)("CONFIRM",{message:i.formatMessage(J.deleteMessage),confirm:i.formatMessage(J.deleteConfirm),onConfirm:function(){return n(Object(O.f)(e.get("id")))}}):Object(O.f)(e.get("id")))},a.handleMentionClick=function(e,t){a.props.dispatch(Object(N.R)(e,t))},a.handleOpenMedia=function(e,t){a.props.dispatch(Object(B.d)("MEDIA",{media:e,index:t}))},a.handleOpenVideo=function(e,t){a.props.dispatch(Object(B.d)("VIDEO",{media:e,time:t}))},a.handleMuteClick=function(e){a.props.dispatch(Object(A.a)(e))},a.handleConversationMuteClick=function(e){e.get("muted")?a.props.dispatch(Object(O.k)(e.get("id"))):a.props.dispatch(Object(O.i)(e.get("id")))},a.handleToggleHidden=function(e){e.get("hidden")?a.props.dispatch(Object(O.j)(e.get("id"))):a.props.dispatch(Object(O.h)(e.get("id")))},a.handleToggleAll=function(){var e=a.props,t=e.status,n=e.ancestorsIds,i=e.descendantsIds,o=[t.get("id")].concat(n.toJS(),i.toJS());t.get("hidden")?a.props.dispatch(Object(O.j)(o)):a.props.dispatch(Object(O.h)(o))},a.handleBlockClick=function(e){var t=a.props,n=t.dispatch,i=t.intl;n(Object(B.d)("CONFIRM",{message:l()(z.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:l()("strong",{},void 0,"@",e.get("acct"))}}),confirm:i.formatMessage(J.blockConfirm),onConfirm:function(){return n(Object(S.q)(e.get("id")))}}))},a.handleReport=function(e){a.props.dispatch(Object(T.k)(e.get("account"),e))},a.handleHotkeyMoveUp=function(){a.handleMoveUp(a.props.status.get("id"))},a.handleHotkeyMoveDown=function(){a.handleMoveDown(a.props.status.get("id"))},a.handleHotkeyReply=function(e){e.preventDefault(),a.handleReplyClick(a.props.status)},a.handleHotkeyFavourite=function(){a.handleFavouriteClick(a.props.status)},a.handleHotkeyBoost=function(){a.handleReblogClick(a.props.status)},a.handleHotkeyMention=function(e){e.preventDefault(),a.handleMentionClick(a.props.status)},a.handleHotkeyOpenProfile=function(){a.context.router.history.push("/accounts/"+a.props.status.getIn(["account","id"]))},a.handleMoveUp=function(e){var t=a.props,n=t.status,i=t.ancestorsIds,o=t.descendantsIds;if(e===n.get("id"))a._selectChild(i.size-1);else{var s=i.indexOf(e);-1===s?(s=o.indexOf(e),a._selectChild(i.size+s)):a._selectChild(s-1)}},a.handleMoveDown=function(e){var t=a.props,n=t.status,i=t.ancestorsIds,o=t.descendantsIds;if(e===n.get("id"))a._selectChild(i.size+1);else{var s=i.indexOf(e);-1===s?(s=o.indexOf(e),a._selectChild(i.size+s+2)):a._selectChild(s+1)}},a.setRef=function(e){a.node=e},a.onFullScreenChange=function(){a.setState({fullscreen:Object(L.d)()})},i=n,p()(a,i)}return f()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(O.g)(this.props.params.statusId))},t.prototype.componentDidMount=function(){Object(L.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(O.g)(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 l()(F.a,{id:e,onMoveUp:t.handleMoveUp,onMoveDown:t.handleMoveDown},e)})},t.prototype.componentDidUpdate=function(){if(!this._scrolledIntoView){var e=this.props,t=e.status,n=e.ancestorsIds;if(t&&n&&n.size>0){this.node.querySelectorAll(".focusable")[n.size-1].scrollIntoView(!0),this._scrolledIntoView=!0}}},t.prototype.componentWillUnmount=function(){Object(L.b)(this.onFullScreenChange)},t.prototype.render=function(){var e=void 0,t=void 0,n=this.props,a=n.status,i=n.ancestorsIds,o=n.descendantsIds,s=n.intl,r=this.state.fullscreen;if(null===a)return l()(x.a,{},void 0,l()(P.a,{}),l()(j.a,{}));i&&i.size>0&&(e=l()("div",{},void 0,this.renderChildren(i))),o&&o.size>0&&(t=l()("div",{},void 0,this.renderChildren(o)));var c={moveUp:this.handleHotkeyMoveUp,moveDown:this.handleHotkeyMoveDown,reply:this.handleHotkeyReply,favourite:this.handleHotkeyFavourite,boost:this.handleHotkeyBoost,mention:this.handleHotkeyMention,openProfile:this.handleHotkeyOpenProfile};return l()(x.a,{},void 0,l()(H.a,{showBackButton:!0,extraButton:l()("button",{className:"column-header__button",title:s.formatMessage(a.get("hidden")?J.revealAll:J.hideAll),"aria-label":s.formatMessage(a.get("hidden")?J.revealAll:J.hideAll),onClick:this.handleToggleAll,"aria-pressed":a.get("hidden")?"false":"true"},void 0,l()("i",{className:"fa fa-"+(a.get("hidden")?"eye-slash":"eye")}))}),l()(E.a,{scrollKey:"thread"},void 0,v.a.createElement("div",{className:k()("scrollable","detailed-status__wrapper",{fullscreen:r}),ref:this.setRef},e,l()(U.HotKeys,{handlers:c},void 0,l()("div",{className:"focusable",tabIndex:"0"},void 0,l()(w.a,{status:a,onOpenVideo:this.handleOpenVideo,onOpenMedia:this.handleOpenMedia,onToggleHidden:this.handleToggleHidden}),l()(I.a,{status:a,onReply:this.handleReplyClick,onFavourite:this.handleFavouriteClick,onReblog:this.handleReblogClick,onDelete:this.handleDeleteClick,onMention:this.handleMentionClick,onMute:this.handleMuteClick,onMuteConversation:this.handleConversationMuteClick,onBlock:this.handleBlockClick,onReport:this.handleReport}))),t)))},t}(q.a),o.contextTypes={router:y.a.object},o.propTypes={params:y.a.object.isRequired,dispatch:y.a.func.isRequired,status:C.a.map,ancestorsIds:C.a.list,descendantsIds:C.a.list,intl:y.a.object.isRequired},i=s))||i)||i)},845:function(e,t,n){"use strict";var a=n(2),i=n.n(a),o=n(0),s=(n.n(o),n(6)),r=function(){return i()("div",{className:"regeneration-indicator missing-indicator"},void 0,i()("div",{},void 0,i()("div",{className:"regeneration-indicator__label"},void 0,i()(s.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),i()(s.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=r},964:function(e,t,n){"use strict";n.d(t,"a",function(){return R});var a,i,o=n(2),s=n.n(o),r=n(1),l=n.n(r),c=n(3),d=n.n(c),u=n(4),p=n.n(u),h=n(0),f=(n.n(h),n(5)),g=n.n(f),v=n(13),m=n.n(v),b=n(56),y=n(55),_=n(102),k=n(155),M=n(337),C=n(44),O=n(6),j=n(965),w=n(12),I=n.n(w),x=n(74),R=(i=a=function(e){function t(){var n,a,i;l()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=a=d()(this,e.call.apply(e,[this].concat(s))),a.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),a.context.router.history.push("/accounts/"+a.props.status.getIn(["account","id"]))),e.stopPropagation()},a.handleOpenVideo=function(e){a.props.onOpenVideo(a.props.status.getIn(["media_attachments",0]),e)},a.handleExpandedToggle=function(){a.props.onToggleHidden(a.props.status)},i=n,d()(a,i)}return p()(t,e),t.prototype.render=function(){var e=this.props.status.get("reblog")?this.props.status.get("reblog"):this.props.status,t="",n="",a="",i="retweet";if(e.get("media_attachments").size>0)if(e.get("media_attachments").some(function(e){return"unknown"===e.get("type")}))t=s()(M.a,{media:e.get("media_attachments")});else if("video"===e.getIn(["media_attachments",0,"type"])){var o=e.getIn(["media_attachments",0]);t=s()(x.default,{preview:o.get("preview_url"),src:o.get("url"),width:300,height:150,inline:!0,onOpenVideo:this.handleOpenVideo,sensitive:e.get("sensitive")})}else t=s()(k.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=s()(j.a,{onOpenMedia:this.props.onOpenMedia,statusId:e.get("id")}));return e.get("application")&&(n=s()("span",{},void 0," · ",s()("a",{className:"detailed-status__application",href:e.getIn(["application","website"]),target:"_blank",rel:"noopener"},void 0,e.getIn(["application","name"])))),"direct"===e.get("visibility")?i="envelope":"private"===e.get("visibility")&&(i="lock"),a="private"===e.get("visibility")?s()("i",{className:"fa fa-"+i}):s()(C.b,{to:"/statuses/"+e.get("id")+"/reblogs",className:"detailed-status__link"},void 0,s()("i",{className:"fa fa-"+i}),s()("span",{className:"detailed-status__reblogs"},void 0,s()(O.c,{value:e.get("reblogs_count")}))),s()("div",{className:"detailed-status"},void 0,s()("a",{href:e.getIn(["account","url"]),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,s()("div",{className:"detailed-status__display-avatar"},void 0,s()(b.a,{account:e.get("account"),size:48})),s()(y.a,{account:e.get("account")})),s()(_.a,{status:e,expanded:!e.get("hidden"),onExpandedToggle:this.handleExpandedToggle}),t,s()("div",{className:"detailed-status__meta"},void 0,s()("a",{className:"detailed-status__datetime",href:e.get("url"),target:"_blank",rel:"noopener"},void 0,s()(O.a,{value:new Date(e.get("created_at")),hour12:!1,year:"numeric",month:"short",day:"2-digit",hour:"2-digit",minute:"2-digit"})),n," · ",a," · ",s()(C.b,{to:"/statuses/"+e.get("id")+"/favourites",className:"detailed-status__link"},void 0,s()("i",{className:"fa fa-star"}),s()("span",{className:"detailed-status__favorites"},void 0,s()(O.c,{value:e.get("favourites_count")})))))},t}(I.a),a.contextTypes={router:g.a.object},a.propTypes={status:m.a.map.isRequired,onOpenMedia:g.a.func.isRequired,onOpenVideo:g.a.func.isRequired,onToggleHidden:g.a.func.isRequired},i)},965:function(e,t,n){"use strict";var a=n(9),i=n(332),o=function(e,t){var n=t.statusId;return{card:e.getIn(["cards",n],null)}};t.a=Object(a.connect)(o)(i.a)},966:function(e,t,n){"use strict";n.d(t,"a",function(){return C});var a,i,o,s=n(2),r=n.n(s),l=n(1),c=n.n(l),d=n(3),u=n.n(d),p=n(4),h=n.n(p),f=n(0),g=n.n(f),v=n(5),m=n.n(v),b=n(23),y=n(299),_=n(6),k=n(11),M=Object(_.f)({delete:{id:"status.delete",defaultMessage:"Delete"},mention:{id:"status.mention",defaultMessage:"Mention @{name}"},reply:{id:"status.reply",defaultMessage:"Reply"},reblog:{id:"status.reblog",defaultMessage:"Boost"},cannot_reblog:{id:"status.cannot_reblog",defaultMessage:"This post cannot be boosted"},favourite:{id:"status.favourite",defaultMessage:"Favourite"},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"}}),C=Object(_.g)((o=i=function(e){function t(){var n,a,i;c()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=a=u()(this,e.call.apply(e,[this].concat(s))),a.handleReplyClick=function(){a.props.onReply(a.props.status)},a.handleReblogClick=function(e){a.props.onReblog(a.props.status,e)},a.handleFavouriteClick=function(){a.props.onFavourite(a.props.status)},a.handleDeleteClick=function(){a.props.onDelete(a.props.status)},a.handleMentionClick=function(){a.props.onMention(a.props.status.get("account"),a.context.router.history)},a.handleConversationMuteClick=function(){a.props.onMuteConversation(a.props.status)},a.handleBlockClick=function(){a.props.onBlock(a.props.status.get("account"))},a.handleReport=function(){a.props.onReport(a.props.status)},a.handlePinClick=function(){a.props.onPin(a.props.status)},a.handleShare=function(){navigator.share({text:a.props.status.get("search_index"),url:a.props.status.get("url")})},i=n,u()(a,i)}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.status,n=e.intl,a=(["public","unlisted"].includes(t.get("visibility")),t.get("muted")),i=[];k.g===t.getIn(["account","id"])?(i.push({text:n.formatMessage(a?M.unmuteConversation:M.muteConversation),action:this.handleConversationMuteClick}),i.push(null),i.push({text:n.formatMessage(M.delete),action:this.handleDeleteClick})):(i.push({text:n.formatMessage(M.mention,{name:t.getIn(["account","username"])}),action:this.handleMentionClick}),i.push(null),i.push({text:n.formatMessage(M.block,{name:t.getIn(["account","username"])}),action:this.handleBlockClick}),i.push({text:n.formatMessage(M.report,{name:t.getIn(["account","username"])}),action:this.handleReport}));var o="share"in navigator&&"public"===t.get("visibility")&&r()("div",{className:"detailed-status__button"},void 0,r()(b.a,{title:n.formatMessage(M.share),icon:"share-alt",onClick:this.handleShare})),s="retweet";"direct"===t.get("visibility")?s="envelope":"private"===t.get("visibility")&&(s="lock");var l="direct"===t.get("visibility")||"private"===t.get("visibility");return r()("div",{className:"detailed-status__action-bar"},void 0,r()("div",{className:"detailed-status__button"},void 0,r()(b.a,{title:n.formatMessage(M.reply),icon:null===t.get("in_reply_to_id",null)?"reply":"reply-all",onClick:this.handleReplyClick})),r()("div",{className:"detailed-status__button"},void 0,r()(b.a,{disabled:l,active:t.get("reblogged"),title:l?n.formatMessage(M.cannot_reblog):n.formatMessage(M.reblog),icon:s,onClick:this.handleReblogClick})),r()("div",{className:"detailed-status__button"},void 0,r()(b.a,{animate:!0,active:t.get("favourited"),title:n.formatMessage(M.favourite),icon:"star",onClick:this.handleFavouriteClick,activeStyle:{color:"#ca8f04"}})),o,r()("div",{className:"detailed-status__action-bar-dropdown"},void 0,r()(y.a,{size:18,icon:"ellipsis-h",items:i,direction:"left",title:"More"})))},t}(g.a.PureComponent),i.contextTypes={router:m.a.object},a=o))||a}}); +webpackJsonp([15,25],{150:function(e,t,n){"use strict";n.d(t,"a",function(){return g});var i=n(2),a=n.n(i),o=n(1),s=n.n(o),r=n(3),l=n.n(r),c=n(4),d=n.n(c),u=n(0),p=n.n(u),h=n(10),f=n.n(h),g=function(e){function t(){var n,i,a;s()(this,t);for(var o=arguments.length,r=Array(o),c=0;c<o;c++)r[c]=arguments[c];return n=i=l()(this,e.call.apply(e,[this].concat(r))),i.handleClick=function(){i.props.onClick()},a=n,l()(i,a)}return d()(t,e),t.prototype.render=function(){var e=this.props,t=e.icon,n=e.type,i=e.active,o=e.columnHeaderId,s="";return t&&(s=a()("i",{className:"fa fa-fw fa-"+t+" column-header__icon"})),a()("h1",{className:f()("column-header",{active:i}),id:o||null},void 0,a()("button",{onClick:this.handleClick},void 0,s,n))},t}(p.a.PureComponent)},154:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return I});var i,a,o,s,r,l=n(2),c=n.n(l),d=n(1),u=n.n(d),p=n(3),h=n.n(p),f=n(4),g=n.n(f),v=n(0),m=n.n(v),b=n(8),y=(n.n(b),n(23)),_=n(6),k=n(35),C=n(10),M=n.n(C),O=n(11),j=Object(_.f)({toggle_visible:{id:"media_gallery.toggle_visible",defaultMessage:"Toggle visibility"}}),w=(a=i=function(e){function t(){var n,i,a;u()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=i=h()(this,e.call.apply(e,[this].concat(s))),i.handleMouseEnter=function(e){i.hoverToPlay()&&e.target.play()},i.handleMouseLeave=function(e){i.hoverToPlay()&&(e.target.pause(),e.target.currentTime=0)},i.handleClick=function(e){var t=i.props,n=t.index,a=t.onClick;0===e.button&&(e.preventDefault(),a(n)),e.stopPropagation()},a=n,h()(i,a)}return g()(t,e),t.prototype.hoverToPlay=function(){var e=this.props.attachment;return!O.a&&"gifv"===e.get("type")},t.prototype.render=function(){var e=this.props,t=e.attachment,n=e.index,i=e.size,a=e.standalone,o=50,s=100,r="auto",l="auto",d="auto",u="auto";1===i&&(o=100),(4===i||3===i&&n>0)&&(s=50),2===i?0===n?u="2px":l="2px":3===i?(0===n?u="2px":n>0&&(l="2px"),1===n?d="2px":n>1&&(r="2px")):4===i&&(0!==n&&2!==n||(u="2px"),1!==n&&3!==n||(l="2px"),n<2?d="2px":r="2px");var p="";if("image"===t.get("type")){var h=t.get("preview_url"),f=t.getIn(["meta","small","width"]),g=t.get("url"),v=t.getIn(["meta","original","width"]),m="number"==typeof v&&"number"==typeof f,b=m?g+" "+v+"w, "+h+" "+f+"w":null,y=m?"(min-width: 1025px) "+o/100*320+"px, "+o+"vw":null,_=t.getIn(["meta","focus","x"])||0,C=t.getIn(["meta","focus","y"])||0,j=100*(_/2+.5),w=100*(C/-2+.5);p=c()("a",{className:"media-gallery__item-thumbnail",href:t.get("remote_url")||g,onClick:this.handleClick,target:"_blank"},void 0,c()("img",{src:h,srcSet:b,sizes:y,alt:t.get("description"),title:t.get("description"),style:{objectPosition:j+"% "+w+"%"}}))}else if("gifv"===t.get("type")){var I=!Object(k.a)()&&O.a;p=c()("div",{className:M()("media-gallery__gifv",{autoplay:I})},void 0,c()("video",{className:"media-gallery__item-gifv-thumbnail","aria-label":t.get("description"),role:"application",src:t.get("url"),onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,autoPlay:I,loop:!0,muted:!0}),c()("span",{className:"media-gallery__gifv__label"},void 0,"GIF"))}return c()("div",{className:M()("media-gallery__item",{standalone:a}),style:{left:l,top:r,right:u,bottom:d,width:o+"%",height:s+"%"}},t.get("id"),p)},t}(m.a.PureComponent),i.defaultProps={standalone:!1,index:0,size:1},a),I=Object(_.g)((r=s=function(e){function t(){var n,i,a;u()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=i=h()(this,e.call.apply(e,[this].concat(s))),i.state={visible:!i.props.sensitive||O.f},i.handleOpen=function(){i.setState({visible:!i.state.visible})},i.handleClick=function(e){i.props.onOpenMedia(i.props.media,e)},i.handleRef=function(e){e&&i.setState({width:e.offsetWidth})},a=n,h()(i,a)}return g()(t,e),t.prototype.componentWillReceiveProps=function(e){Object(b.is)(e.media,this.props.media)||this.setState({visible:!e.sensitive})},t.prototype.isStandaloneEligible=function(){var e=this.props,t=e.media;return e.standalone&&1===t.size&&t.getIn([0,"meta","small","aspect"])},t.prototype.render=function(){var e=this,t=this.props,n=t.media,i=t.intl,a=t.sensitive,o=t.height,s=this.state,r=s.width,l=s.visible,d=void 0,u={};if(this.isStandaloneEligible()?r&&(u.height=r/this.props.media.getIn([0,"meta","small","aspect"])):u.height=r?r/(16/9):o,l){var p=n.take(4).size;d=this.isStandaloneEligible()?c()(w,{standalone:!0,onClick:this.handleClick,attachment:n.get(0)}):n.take(4).map(function(t,n){return c()(w,{onClick:e.handleClick,attachment:t,index:n,size:p},t.get("id"))})}else{var h=void 0;h=a?c()(_.b,{id:"status.sensitive_warning",defaultMessage:"Sensitive content"}):c()(_.b,{id:"status.media_hidden",defaultMessage:"Media hidden"}),d=m.a.createElement("button",{type:"button",className:"media-spoiler",onClick:this.handleOpen,style:u,ref:this.handleRef},c()("span",{className:"media-spoiler__warning"},void 0,h),c()("span",{className:"media-spoiler__trigger"},void 0,c()(_.b,{id:"status.sensitive_toggle",defaultMessage:"Click to view"})))}return m.a.createElement("div",{className:"media-gallery",style:u,ref:this.handleRef},c()("div",{className:M()("spoiler-button",{"spoiler-button--visible":l})},void 0,c()(y.a,{title:i.formatMessage(j.toggle_visible),icon:l?"eye":"eye-slash",overlay:!0,onClick:this.handleOpen})),d)},t}(m.a.PureComponent),s.defaultProps={standalone:!1},o=r))||o},282:function(e,t,n){"use strict";function i(e){return function(t){t({type:o,account:e}),t(Object(a.d)("MUTE"))}}t.a=i;var a=(n(14),n(22),n(15),n(26)),o="MUTES_INIT_MODAL"},283:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var i=n(2),a=n.n(i),o=n(1),s=n.n(o),r=n(3),l=n.n(r),c=n(4),d=n.n(c),u=n(34),p=n.n(u),h=n(0),f=n.n(h),g=n(150),v=n(90),m=n(35),b=function(e){function t(){var n,i,a;s()(this,t);for(var o=arguments.length,r=Array(o),c=0;c<o;c++)r[c]=arguments[c];return n=i=l()(this,e.call.apply(e,[this].concat(r))),i.handleHeaderClick=function(){var e=i.node.querySelector(".scrollable");e&&(i._interruptScrollAnimation=Object(v.b)(e))},i.handleScroll=p()(function(){void 0!==i._interruptScrollAnimation&&i._interruptScrollAnimation()},200),i.setRef=function(e){i.node=e},a=n,l()(i,a)}return d()(t,e),t.prototype.scrollTop=function(){var e=this.node.querySelector(".scrollable");e&&(this._interruptScrollAnimation=Object(v.b)(e))},t.prototype.render=function(){var e=this.props,t=e.heading,n=e.icon,i=e.children,o=e.active,s=e.hideHeadingOnMobile,r=t&&(!s||s&&!Object(m.b)(window.innerWidth)),l=r&&t.replace(/ /g,"-"),c=r&&a()(g.a,{icon:n,active:o,type:t,onClick:this.handleHeaderClick,columnHeaderId:l});return f.a.createElement("div",{ref:this.setRef,role:"region","aria-labelledby":l,className:"column",onScroll:this.handleScroll},c,i)},t}(f.a.PureComponent)},284:function(e,t,n){"use strict";function i(e,t){return function(n){n({type:o,account:e,status:t}),n(Object(a.d)("REPORT"))}}t.a=i;var a=(n(14),n(26)),o="REPORT_INIT"},285:function(e,t,n){"use strict";var i=n(2),a=n.n(i),o=n(0),s=(n.n(o),n(9)),r=n(152),l=n(66),c=n(18),d=n(67),u=n(22),p=n(91),h=n(282),f=n(284),g=n(26),v=n(6),m=n(11),b=Object(v.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"}}),y=function(){var e=Object(l.e)();return function(t,n){return{status:e(t,n.id)}}},_=function(e,t){var n=t.intl;return{onReply:function(t,n){e(Object(c.T)(t,n))},onModalReblog:function(t){e(Object(d.l)(t))},onReblog:function(t,n){t.get("reblogged")?e(Object(d.n)(t)):n.shiftKey||!m.b?this.onModalReblog(t):e(Object(g.d)("BOOST",{status:t,onReblog:this.onModalReblog}))},onFavourite:function(t){e(t.get("favourited")?Object(d.m)(t):Object(d.i)(t))},onDelete:function(t){e(m.e?Object(g.d)("CONFIRM",{message:n.formatMessage(b.deleteMessage),confirm:n.formatMessage(b.deleteConfirm),onConfirm:function(){return e(Object(p.f)(t.get("id")))}}):Object(p.f)(t.get("id")))},onMention:function(t,n){e(Object(c.R)(t,n))},onOpenMedia:function(t,n){e(Object(g.d)("MEDIA",{media:t,index:n}))},onOpenVideo:function(t,n){e(Object(g.d)("VIDEO",{media:t,time:n}))},onBlock:function(t){e(Object(g.d)("CONFIRM",{message:a()(v.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:a()("strong",{},void 0,"@",t.get("acct"))}}),confirm:n.formatMessage(b.blockConfirm),onConfirm:function(){return e(Object(u.q)(t.get("id")))}}))},onReport:function(t){e(Object(f.a)(t.get("account"),t))},onMute:function(t){e(Object(h.a)(t))},onMuteConversation:function(t){e(t.get("muted")?Object(p.k)(t.get("id")):Object(p.i)(t.get("id")))},onToggleHidden:function(t){e(t.get("hidden")?Object(p.j)(t.get("id")):Object(p.h)(t.get("id")))}}};t.a=Object(v.g)(Object(s.connect)(y,_)(r.a))},286:function(e,t,n){"use strict";n.d(t,"a",function(){return b});var i,a,o=n(2),s=n.n(o),r=n(1),l=n.n(r),c=n(3),d=n.n(c),u=n(4),p=n.n(u),h=n(0),f=n.n(h),g=n(6),v=n(5),m=n.n(v),b=(a=i=function(e){function t(){var n,i,a;l()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=i=d()(this,e.call.apply(e,[this].concat(s))),i.handleClick=function(){window.history&&1===window.history.length?i.context.router.history.push("/"):i.context.router.history.goBack()},a=n,d()(i,a)}return p()(t,e),t.prototype.render=function(){return s()("button",{onClick:this.handleClick,className:"column-back-button"},void 0,s()("i",{className:"fa fa-fw fa-chevron-left column-back-button__icon"}),s()(g.b,{id:"column_back_button.label",defaultMessage:"Back"}))},t}(f.a.PureComponent),i.contextTypes={router:m.a.object},a)},332:function(e,t,n){"use strict";n.d(t,"a",function(){return w});var i,a,o=n(2),s=n.n(o),r=n(1),l=n.n(r),c=n(3),d=n.n(c),u=n(4),p=n.n(u),h=n(0),f=n.n(h),g=n(8),v=n.n(g),m=n(333),b=n.n(m),y=n(10),_=n.n(y),k=function(e){return e.split(".").map(function(e){return 0===e.indexOf("xn--")?b.a.decode(e.slice("xn--".length)):e}).join(".")},C=function(e){var t=document.createElement("a");return t.href=e,t.hostname},M=function(e,t){var n=e.indexOf(" ",t);return-1===n?e:e.substring(0,n)+(e.length>t?"…":"")},O=new DOMParser,j=function(e){var t=O.parseFromString(e,"text/html").documentElement,n=t.querySelector("iframe");return n?(-1!==n.src.indexOf("?")?n.src+="&":n.src+="?",n.src+="autoplay=1&auto_play=1",t.querySelector("body").innerHTML):e},w=(a=i=function(e){function t(){var n,i,a;l()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=i=d()(this,e.call.apply(e,[this].concat(s))),i.state={width:280,embedded:!1},i.handlePhotoClick=function(){var e=i.props,t=e.card;(0,e.onOpenMedia)(v.a.fromJS([{type:"image",url:t.get("embed_url"),description:t.get("title"),meta:{original:{width:t.get("width"),height:t.get("height")}}}]),0)},i.handleEmbedClick=function(){"photo"===i.props.card.get("type")?i.handlePhotoClick():i.setState({embedded:!0})},i.setRef=function(e){e&&i.setState({width:e.offsetWidth})},a=n,d()(i,a)}return p()(t,e),t.prototype.componentWillReceiveProps=function(e){this.props.card!==e.card&&this.setState({embedded:!1})},t.prototype.renderVideo=function(){var e=this.props.card,t={__html:j(e.get("html"))},n=this.state.width,i=e.get("width")/e.get("height"),a=e.get("width")>e.get("height")?n/i:n*i;return f.a.createElement("div",{ref:this.setRef,className:"status-card__image status-card-video",dangerouslySetInnerHTML:t,style:{height:a}})},t.prototype.render=function(){var e=this.props,t=e.card,n=e.maxDescription,i=this.state,a=i.width,o=i.embedded;if(null===t)return null;var r=0===t.get("provider_name").length?k(C(t.get("url"))):t.get("provider_name"),l=t.get("width")>t.get("height")&&t.get("width")+100>=a||"link"!==t.get("type"),c=_()("status-card",{horizontal:l}),d="link"!==t.get("type"),u=d?s()("a",{className:"status-card__title",href:t.get("url"),title:t.get("title"),rel:"noopener",target:"_blank"},void 0,s()("strong",{},void 0,t.get("title"))):s()("strong",{className:"status-card__title",title:t.get("title")},void 0,t.get("title")),p=t.get("width")/t.get("height"),h=t.get("width")>t.get("height")?a/p:a*p,g=s()("div",{className:"status-card__content"},void 0,u,!l&&s()("p",{className:"status-card__description"},void 0,M(t.get("description")||"",n)),s()("span",{className:"status-card__host"},void 0,r)),v="",m=s()("div",{style:{backgroundImage:"url("+t.get("image")+")",width:l?a:null,height:l?h:null},className:"status-card__image-image"});if(d){if(o)v=this.renderVideo();else{var b="play";"photo"===t.get("type")&&(b="search-plus"),v=s()("div",{className:"status-card__image"},void 0,m,s()("div",{className:"status-card__actions"},void 0,s()("div",{},void 0,s()("button",{onClick:this.handleEmbedClick},void 0,s()("i",{className:"fa fa-"+b})),s()("a",{href:t.get("url"),target:"_blank",rel:"noopener"},void 0,s()("i",{className:"fa fa-external-link"})))))}return f.a.createElement("div",{className:c,ref:this.setRef},v,g)}return t.get("image")&&(v=s()("div",{className:"status-card__image"},void 0,m)),f.a.createElement("a",{href:t.get("url"),className:c,target:"_blank",rel:"noopener",ref:this.setRef},v,g)},t}(f.a.PureComponent),i.defaultProps={maxDescription:50},a)},333:function(e,t,n){(function(e,i){var a;!function(o){function s(e){throw new RangeError(T[e])}function r(e,t){for(var n=e.length,i=[];n--;)i[n]=t(e[n]);return i}function l(e,t){var n=e.split("@"),i="";return n.length>1&&(i=n[0]+"@",e=n[1]),e=e.replace(S,"."),i+r(e.split("."),t).join(".")}function c(e){for(var t,n,i=[],a=0,o=e.length;a<o;)t=e.charCodeAt(a++),t>=55296&&t<=56319&&a<o?(n=e.charCodeAt(a++),56320==(64512&n)?i.push(((1023&t)<<10)+(1023&n)+65536):(i.push(t),a--)):i.push(t);return i}function d(e){return r(e,function(e){var t="";return e>65535&&(e-=65536,t+=E(e>>>10&1023|55296),e=56320|1023&e),t+=E(e)}).join("")}function u(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:k}function p(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function h(e,t,n){var i=0;for(e=n?D(e/j):e>>1,e+=D(e/t);e>A*M>>1;i+=k)e=D(e/A);return D(i+(A+1)*e/(e+O))}function f(e){var t,n,i,a,o,r,l,c,p,f,g=[],v=e.length,m=0,b=I,y=w;for(n=e.lastIndexOf(x),n<0&&(n=0),i=0;i<n;++i)e.charCodeAt(i)>=128&&s("not-basic"),g.push(e.charCodeAt(i));for(a=n>0?n+1:0;a<v;){for(o=m,r=1,l=k;a>=v&&s("invalid-input"),c=u(e.charCodeAt(a++)),(c>=k||c>D((_-m)/r))&&s("overflow"),m+=c*r,p=l<=y?C:l>=y+M?M:l-y,!(c<p);l+=k)f=k-p,r>D(_/f)&&s("overflow"),r*=f;t=g.length+1,y=h(m-o,t,0==o),D(m/t)>_-b&&s("overflow"),b+=D(m/t),m%=t,g.splice(m++,0,b)}return d(g)}function g(e){var t,n,i,a,o,r,l,d,u,f,g,v,m,b,y,O=[];for(e=c(e),v=e.length,t=I,n=0,o=w,r=0;r<v;++r)(g=e[r])<128&&O.push(E(g));for(i=a=O.length,a&&O.push(x);i<v;){for(l=_,r=0;r<v;++r)(g=e[r])>=t&&g<l&&(l=g);for(m=i+1,l-t>D((_-n)/m)&&s("overflow"),n+=(l-t)*m,t=l,r=0;r<v;++r)if(g=e[r],g<t&&++n>_&&s("overflow"),g==t){for(d=n,u=k;f=u<=o?C:u>=o+M?M:u-o,!(d<f);u+=k)y=d-f,b=k-f,O.push(E(p(f+y%b,0))),d=D(y/b);O.push(E(p(d,0))),o=h(n,m,i==a),n=0,++i}++n,++t}return O.join("")}function v(e){return l(e,function(e){return R.test(e)?f(e.slice(4).toLowerCase()):e})}function m(e){return l(e,function(e){return N.test(e)?"xn--"+g(e):e})}var b=("object"==typeof t&&t&&t.nodeType,"object"==typeof e&&e&&e.nodeType,"object"==typeof i&&i);var y,_=2147483647,k=36,C=1,M=26,O=38,j=700,w=72,I=128,x="-",R=/^xn--/,N=/[^\x20-\x7E]/,S=/[\x2E\u3002\uFF0E\uFF61]/g,T={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},A=k-C,D=Math.floor,E=String.fromCharCode;y={version:"1.4.1",ucs2:{decode:c,encode:d},decode:f,encode:g,toASCII:m,toUnicode:v},void 0!==(a=function(){return y}.call(t,n,t,e))&&(e.exports=a)}()}).call(t,n(73)(e),n(45))},810:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",function(){return G});var i,a,o,s,r=n(2),l=n.n(r),c=n(1),d=n.n(c),u=n(3),p=n.n(u),h=n(4),f=n.n(h),g=n(0),v=n.n(g),m=n(9),b=n(5),y=n.n(b),_=n(10),k=n.n(_),C=n(13),M=n.n(C),O=n(91),j=n(843),w=n(962),I=n(964),x=n(283),R=n(67),N=n(18),S=n(22),T=n(282),A=n(284),D=n(66),E=n(151),P=n(286),H=n(68),F=n(285),B=n(26),z=n(6),V=n(12),q=n.n(V),U=n(156),W=(n.n(U),n(11)),L=n(153),J=Object(z.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},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"}}),K=function(){var e=Object(D.e)();return function(t,n){return{status:e(t,n.params.statusId),ancestorsIds:t.getIn(["contexts","ancestors",n.params.statusId]),descendantsIds:t.getIn(["contexts","descendants",n.params.statusId])}}},G=(i=Object(m.connect)(K),Object(z.g)(a=i((s=o=function(e){function t(){var n,i,a;d()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=i=p()(this,e.call.apply(e,[this].concat(s))),i.state={fullscreen:!1},i.handleFavouriteClick=function(e){e.get("favourited")?i.props.dispatch(Object(R.m)(e)):i.props.dispatch(Object(R.i)(e))},i.handleReplyClick=function(e){i.props.dispatch(Object(N.T)(e,i.context.router.history))},i.handleModalReblog=function(e){i.props.dispatch(Object(R.l)(e))},i.handleReblogClick=function(e,t){e.get("reblogged")?i.props.dispatch(Object(R.n)(e)):t.shiftKey||!W.b?i.handleModalReblog(e):i.props.dispatch(Object(B.d)("BOOST",{status:e,onReblog:i.handleModalReblog}))},i.handleDeleteClick=function(e){var t=i.props,n=t.dispatch,a=t.intl;n(W.e?Object(B.d)("CONFIRM",{message:a.formatMessage(J.deleteMessage),confirm:a.formatMessage(J.deleteConfirm),onConfirm:function(){return n(Object(O.f)(e.get("id")))}}):Object(O.f)(e.get("id")))},i.handleMentionClick=function(e,t){i.props.dispatch(Object(N.R)(e,t))},i.handleOpenMedia=function(e,t){i.props.dispatch(Object(B.d)("MEDIA",{media:e,index:t}))},i.handleOpenVideo=function(e,t){i.props.dispatch(Object(B.d)("VIDEO",{media:e,time:t}))},i.handleMuteClick=function(e){i.props.dispatch(Object(T.a)(e))},i.handleConversationMuteClick=function(e){e.get("muted")?i.props.dispatch(Object(O.k)(e.get("id"))):i.props.dispatch(Object(O.i)(e.get("id")))},i.handleToggleHidden=function(e){e.get("hidden")?i.props.dispatch(Object(O.j)(e.get("id"))):i.props.dispatch(Object(O.h)(e.get("id")))},i.handleToggleAll=function(){var e=i.props,t=e.status,n=e.ancestorsIds,a=e.descendantsIds,o=[t.get("id")].concat(n.toJS(),a.toJS());t.get("hidden")?i.props.dispatch(Object(O.j)(o)):i.props.dispatch(Object(O.h)(o))},i.handleBlockClick=function(e){var t=i.props,n=t.dispatch,a=t.intl;n(Object(B.d)("CONFIRM",{message:l()(z.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:l()("strong",{},void 0,"@",e.get("acct"))}}),confirm:a.formatMessage(J.blockConfirm),onConfirm:function(){return n(Object(S.q)(e.get("id")))}}))},i.handleReport=function(e){i.props.dispatch(Object(A.a)(e.get("account"),e))},i.handleHotkeyMoveUp=function(){i.handleMoveUp(i.props.status.get("id"))},i.handleHotkeyMoveDown=function(){i.handleMoveDown(i.props.status.get("id"))},i.handleHotkeyReply=function(e){e.preventDefault(),i.handleReplyClick(i.props.status)},i.handleHotkeyFavourite=function(){i.handleFavouriteClick(i.props.status)},i.handleHotkeyBoost=function(){i.handleReblogClick(i.props.status)},i.handleHotkeyMention=function(e){e.preventDefault(),i.handleMentionClick(i.props.status)},i.handleHotkeyOpenProfile=function(){i.context.router.history.push("/accounts/"+i.props.status.getIn(["account","id"]))},i.handleMoveUp=function(e){var t=i.props,n=t.status,a=t.ancestorsIds,o=t.descendantsIds;if(e===n.get("id"))i._selectChild(a.size-1);else{var s=a.indexOf(e);-1===s?(s=o.indexOf(e),i._selectChild(a.size+s)):i._selectChild(s-1)}},i.handleMoveDown=function(e){var t=i.props,n=t.status,a=t.ancestorsIds,o=t.descendantsIds;if(e===n.get("id"))i._selectChild(a.size+1);else{var s=a.indexOf(e);-1===s?(s=o.indexOf(e),i._selectChild(a.size+s+2)):i._selectChild(s+1)}},i.setRef=function(e){i.node=e},i.onFullScreenChange=function(){i.setState({fullscreen:Object(L.d)()})},a=n,p()(i,a)}return f()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(O.g)(this.props.params.statusId))},t.prototype.componentDidMount=function(){Object(L.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(O.g)(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 l()(F.a,{id:e,onMoveUp:t.handleMoveUp,onMoveDown:t.handleMoveDown},e)})},t.prototype.componentDidUpdate=function(){if(!this._scrolledIntoView){var e=this.props,t=e.status,n=e.ancestorsIds;if(t&&n&&n.size>0){this.node.querySelectorAll(".focusable")[n.size-1].scrollIntoView(!0),this._scrolledIntoView=!0}}},t.prototype.componentWillUnmount=function(){Object(L.b)(this.onFullScreenChange)},t.prototype.render=function(){var e=void 0,t=void 0,n=this.props,i=n.status,a=n.ancestorsIds,o=n.descendantsIds,s=n.intl,r=this.state.fullscreen;if(null===i)return l()(x.a,{},void 0,l()(P.a,{}),l()(j.a,{}));a&&a.size>0&&(e=l()("div",{},void 0,this.renderChildren(a))),o&&o.size>0&&(t=l()("div",{},void 0,this.renderChildren(o)));var c={moveUp:this.handleHotkeyMoveUp,moveDown:this.handleHotkeyMoveDown,reply:this.handleHotkeyReply,favourite:this.handleHotkeyFavourite,boost:this.handleHotkeyBoost,mention:this.handleHotkeyMention,openProfile:this.handleHotkeyOpenProfile};return l()(x.a,{},void 0,l()(H.a,{showBackButton:!0,extraButton:l()("button",{className:"column-header__button",title:s.formatMessage(i.get("hidden")?J.revealAll:J.hideAll),"aria-label":s.formatMessage(i.get("hidden")?J.revealAll:J.hideAll),onClick:this.handleToggleAll,"aria-pressed":i.get("hidden")?"false":"true"},void 0,l()("i",{className:"fa fa-"+(i.get("hidden")?"eye-slash":"eye")}))}),l()(E.a,{scrollKey:"thread"},void 0,v.a.createElement("div",{className:k()("scrollable","detailed-status__wrapper",{fullscreen:r}),ref:this.setRef},e,l()(U.HotKeys,{handlers:c},void 0,l()("div",{className:"focusable",tabIndex:"0"},void 0,l()(w.a,{status:i,onOpenVideo:this.handleOpenVideo,onOpenMedia:this.handleOpenMedia,onToggleHidden:this.handleToggleHidden}),l()(I.a,{status:i,onReply:this.handleReplyClick,onFavourite:this.handleFavouriteClick,onReblog:this.handleReblogClick,onDelete:this.handleDeleteClick,onMention:this.handleMentionClick,onMute:this.handleMuteClick,onMuteConversation:this.handleConversationMuteClick,onBlock:this.handleBlockClick,onReport:this.handleReport}))),t)))},t}(q.a),o.contextTypes={router:y.a.object},o.propTypes={params:y.a.object.isRequired,dispatch:y.a.func.isRequired,status:M.a.map,ancestorsIds:M.a.list,descendantsIds:M.a.list,intl:y.a.object.isRequired},a=s))||a)||a)},843:function(e,t,n){"use strict";var i=n(2),a=n.n(i),o=n(0),s=(n.n(o),n(6)),r=function(){return a()("div",{className:"regeneration-indicator missing-indicator"},void 0,a()("div",{},void 0,a()("div",{className:"regeneration-indicator__label"},void 0,a()(s.b,{id:"missing_indicator.label",tagName:"strong",defaultMessage:"Not found"}),a()(s.b,{id:"missing_indicator.sublabel",defaultMessage:"This resource could not be found"}))))};t.a=r},962:function(e,t,n){"use strict";n.d(t,"a",function(){return R});var i,a,o=n(2),s=n.n(o),r=n(1),l=n.n(r),c=n(3),d=n.n(c),u=n(4),p=n.n(u),h=n(0),f=(n.n(h),n(5)),g=n.n(f),v=n(13),m=n.n(v),b=n(56),y=n(55),_=n(104),k=n(154),C=n(337),M=n(44),O=n(6),j=n(963),w=n(12),I=n.n(w),x=n(74),R=(a=i=function(e){function t(){var n,i,a;l()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=i=d()(this,e.call.apply(e,[this].concat(s))),i.handleAccountClick=function(e){0===e.button&&(e.preventDefault(),i.context.router.history.push("/accounts/"+i.props.status.getIn(["account","id"]))),e.stopPropagation()},i.handleOpenVideo=function(e){i.props.onOpenVideo(i.props.status.getIn(["media_attachments",0]),e)},i.handleExpandedToggle=function(){i.props.onToggleHidden(i.props.status)},a=n,d()(i,a)}return p()(t,e),t.prototype.render=function(){var e=this.props.status.get("reblog")?this.props.status.get("reblog"):this.props.status,t="",n="",i="",a="retweet";if(e.get("media_attachments").size>0)if(e.get("media_attachments").some(function(e){return"unknown"===e.get("type")}))t=s()(C.a,{media:e.get("media_attachments")});else if("video"===e.getIn(["media_attachments",0,"type"])){var o=e.getIn(["media_attachments",0]);t=s()(x.default,{preview:o.get("preview_url"),src:o.get("url"),width:300,height:150,inline:!0,onOpenVideo:this.handleOpenVideo,sensitive:e.get("sensitive")})}else t=s()(k.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=s()(j.a,{onOpenMedia:this.props.onOpenMedia,statusId:e.get("id")}));return e.get("application")&&(n=s()("span",{},void 0," · ",s()("a",{className:"detailed-status__application",href:e.getIn(["application","website"]),target:"_blank",rel:"noopener"},void 0,e.getIn(["application","name"])))),"direct"===e.get("visibility")?a="envelope":"private"===e.get("visibility")&&(a="lock"),i="private"===e.get("visibility")?s()("i",{className:"fa fa-"+a}):s()(M.b,{to:"/statuses/"+e.get("id")+"/reblogs",className:"detailed-status__link"},void 0,s()("i",{className:"fa fa-"+a}),s()("span",{className:"detailed-status__reblogs"},void 0,s()(O.c,{value:e.get("reblogs_count")}))),s()("div",{className:"detailed-status"},void 0,s()("a",{href:e.getIn(["account","url"]),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,s()("div",{className:"detailed-status__display-avatar"},void 0,s()(b.a,{account:e.get("account"),size:48})),s()(y.a,{account:e.get("account")})),s()(_.a,{status:e,expanded:!e.get("hidden"),onExpandedToggle:this.handleExpandedToggle}),t,s()("div",{className:"detailed-status__meta"},void 0,s()("a",{className:"detailed-status__datetime",href:e.get("url"),target:"_blank",rel:"noopener"},void 0,s()(O.a,{value:new Date(e.get("created_at")),hour12:!1,year:"numeric",month:"short",day:"2-digit",hour:"2-digit",minute:"2-digit"})),n," · ",i," · ",s()(M.b,{to:"/statuses/"+e.get("id")+"/favourites",className:"detailed-status__link"},void 0,s()("i",{className:"fa fa-star"}),s()("span",{className:"detailed-status__favorites"},void 0,s()(O.c,{value:e.get("favourites_count")})))))},t}(I.a),i.contextTypes={router:g.a.object},i.propTypes={status:m.a.map.isRequired,onOpenMedia:g.a.func.isRequired,onOpenVideo:g.a.func.isRequired,onToggleHidden:g.a.func.isRequired},a)},963:function(e,t,n){"use strict";var i=n(9),a=n(332),o=function(e,t){var n=t.statusId;return{card:e.getIn(["cards",n],null)}};t.a=Object(i.connect)(o)(a.a)},964:function(e,t,n){"use strict";n.d(t,"a",function(){return M});var i,a,o,s=n(2),r=n.n(s),l=n(1),c=n.n(l),d=n(3),u=n.n(d),p=n(4),h=n.n(p),f=n(0),g=n.n(f),v=n(5),m=n.n(v),b=n(23),y=n(299),_=n(6),k=n(11),C=Object(_.f)({delete:{id:"status.delete",defaultMessage:"Delete"},mention:{id:"status.mention",defaultMessage:"Mention @{name}"},reply:{id:"status.reply",defaultMessage:"Reply"},reblog:{id:"status.reblog",defaultMessage:"Boost"},cannot_reblog:{id:"status.cannot_reblog",defaultMessage:"This post cannot be boosted"},favourite:{id:"status.favourite",defaultMessage:"Favourite"},muteConversation:{id:"status.mute_conversation",defaultMessage:"Mute conversation"},unmuteConversation:{id:"status.unmute_conversation",defaultMessage:"Unmute conversation"},block:{id:"status.block",defaultMessage:"Block @{name}"},share:{id:"status.share",defaultMessage:"Share"}}),M=Object(_.g)((o=a=function(e){function t(){var n,i,a;c()(this,t);for(var o=arguments.length,s=Array(o),r=0;r<o;r++)s[r]=arguments[r];return n=i=u()(this,e.call.apply(e,[this].concat(s))),i.handleReplyClick=function(){i.props.onReply(i.props.status)},i.handleReblogClick=function(e){i.props.onReblog(i.props.status,e)},i.handleFavouriteClick=function(){i.props.onFavourite(i.props.status)},i.handleDeleteClick=function(){i.props.onDelete(i.props.status)},i.handleMentionClick=function(){i.props.onMention(i.props.status.get("account"),i.context.router.history)},i.handleConversationMuteClick=function(){i.props.onMuteConversation(i.props.status)},i.handleBlockClick=function(){i.props.onBlock(i.props.status.get("account"))},i.handlePinClick=function(){i.props.onPin(i.props.status)},i.handleShare=function(){navigator.share({text:i.props.status.get("search_index"),url:i.props.status.get("url")})},a=n,u()(i,a)}return h()(t,e),t.prototype.render=function(){var e=this.props,t=e.status,n=e.intl,i=(["public","unlisted"].includes(t.get("visibility")),t.get("muted")),a=[];k.g===t.getIn(["account","id"])?(a.push({text:n.formatMessage(i?C.unmuteConversation:C.muteConversation),action:this.handleConversationMuteClick}),a.push(null),a.push({text:n.formatMessage(C.delete),action:this.handleDeleteClick})):(a.push({text:n.formatMessage(C.mention,{name:t.getIn(["account","username"])}),action:this.handleMentionClick}),a.push({text:n.formatMessage(C.block,{name:t.getIn(["account","username"])}),action:this.handleBlockClick}));var o="share"in navigator&&"public"===t.get("visibility")&&r()("div",{className:"detailed-status__button"},void 0,r()(b.a,{title:n.formatMessage(C.share),icon:"share-alt",onClick:this.handleShare})),s="retweet";"direct"===t.get("visibility")?s="envelope":"private"===t.get("visibility")&&(s="lock");var l="direct"===t.get("visibility")||"private"===t.get("visibility");return r()("div",{className:"detailed-status__action-bar"},void 0,r()("div",{className:"detailed-status__button"},void 0,r()(b.a,{title:n.formatMessage(C.reply),icon:null===t.get("in_reply_to_id",null)?"reply":"reply-all",onClick:this.handleReplyClick})),r()("div",{className:"detailed-status__button"},void 0,r()(b.a,{disabled:l,active:t.get("reblogged"),title:l?n.formatMessage(C.cannot_reblog):n.formatMessage(C.reblog),icon:s,onClick:this.handleReblogClick})),r()("div",{className:"detailed-status__button"},void 0,r()(b.a,{animate:!0,active:t.get("favourited"),title:n.formatMessage(C.favourite),icon:"star",onClick:this.handleFavouriteClick,activeStyle:{color:"#d8a070"}})),o,r()("div",{className:"detailed-status__action-bar-dropdown"},void 0,r()(y.a,{size:18,icon:"ellipsis-h",items:a,direction:"left",title:"More"})))},t}(g.a.PureComponent),a.contextTypes={router:m.a.object},i=o))||i}}); //# sourceMappingURL=status.js.map
\ No newline at end of file diff --git a/priv/static/packs/features/status.js.map b/priv/static/packs/features/status.js.map index 61b2de336..da6661f35 100644 --- a/priv/static/packs/features/status.js.map +++ b/priv/static/packs/features/status.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///features/status.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/components/media_gallery.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/status/components/card.js","webpack:///./node_modules/node-libs-browser/node_modules/punycode/punycode.js","webpack:///./app/javascript/mastodon/features/status/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/status/components/detailed_status.js","webpack:///./app/javascript/mastodon/features/status/containers/card_container.js","webpack:///./app/javascript/mastodon/features/status/components/action_bar.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","155","Object","defineProperty","value","MediaGallery","_class","_temp2","_class2","_class3","_temp4","__WEBPACK_IMPORTED_MODULE_5_immutable__","__WEBPACK_IMPORTED_MODULE_6__icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","__WEBPACK_IMPORTED_MODULE_9_classnames__","__WEBPACK_IMPORTED_MODULE_9_classnames___default","__WEBPACK_IMPORTED_MODULE_10__initial_state__","messages","toggle_visible","defaultMessage","Item","handleMouseEnter","e","hoverToPlay","target","play","handleMouseLeave","pause","currentTime","_this$props","index","button","preventDefault","stopPropagation","attachment","get","size","standalone","width","height","top","left","bottom","right","thumbnail","previewUrl","previewWidth","getIn","originalUrl","originalWidth","hasSize","srcSet","sizes","focusX","focusY","x","y","href","src","alt","title","style","objectPosition","autoPlay","autoplay","aria-label","role","onMouseEnter","onMouseLeave","loop","muted","defaultProps","_React$PureComponent2","_temp3","_this2","_ret2","_len2","_key2","state","visible","sensitive","handleOpen","setState","onOpenMedia","media","handleRef","node","offsetWidth","componentWillReceiveProps","nextProps","isStandaloneEligible","_props2","_this3","_props3","intl","_state","children","take","map","i","warning","createElement","ref","spoiler-button--visible","formatMessage","overlay","283","initMuteModal","account","dispatch","MUTES_INIT_MODAL","__WEBPACK_IMPORTED_MODULE_3__modal__","284","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","handleHeaderClick","scrollable","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","aria-labelledby","onScroll","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","status","mapDispatchToProps","_ref","onReply","router","onModalReblog","onReblog","shiftKey","onFavourite","onDelete","message","confirm","onConfirm","onMention","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","286","ColumnBackButton","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","push","goBack","contextTypes","object","332","Card","__WEBPACK_IMPORTED_MODULE_5_immutable___default","__WEBPACK_IMPORTED_MODULE_6_punycode__","__WEBPACK_IMPORTED_MODULE_6_punycode___default","__WEBPACK_IMPORTED_MODULE_7_classnames__","__WEBPACK_IMPORTED_MODULE_7_classnames___default","decodeIDNA","domain","split","part","indexOf","decode","slice","join","getHostname","url","parser","document","hostname","trim","text","len","cut","substring","domParser","DOMParser","addAutoPlay","html","parseFromString","documentElement","iframe","innerHTML","embedded","handlePhotoClick","card","fromJS","description","meta","original","handleEmbedClick","renderVideo","content","__html","ratio","dangerouslySetInnerHTML","maxDescription","provider","horizontal","interactive","rel","embed","backgroundImage","iconVariant","333","exports","global","__WEBPACK_AMD_DEFINE_RESULT__","root","error","RangeError","errors","array","fn","result","mapDomain","string","parts","regexSeparators","ucs2decode","extra","output","counter","charCodeAt","ucs2encode","stringFromCharCode","basicToDigit","codePoint","base","digitToBasic","digit","flag","adapt","delta","numPoints","firstTime","k","floor","damp","baseMinusTMin","tMax","skew","input","out","basic","j","oldi","w","t","baseMinusT","inputLength","initialN","bias","initialBias","lastIndexOf","delimiter","maxInt","tMin","splice","encode","handledCPCount","basicLength","m","q","currentValue","handledCPCountPlusOne","qMinusT","toUnicode","regexPunycode","test","toLowerCase","toASCII","regexNonASCII","freeGlobal","nodeType","punycode","overflow","not-basic","invalid-input","Math","String","fromCharCode","version","ucs2","undefined","811","Status","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9__actions_statuses__","__WEBPACK_IMPORTED_MODULE_10__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_11__components_detailed_status__","__WEBPACK_IMPORTED_MODULE_12__components_action_bar__","__WEBPACK_IMPORTED_MODULE_13__ui_components_column__","__WEBPACK_IMPORTED_MODULE_14__actions_interactions__","__WEBPACK_IMPORTED_MODULE_15__actions_compose__","__WEBPACK_IMPORTED_MODULE_16__actions_accounts__","__WEBPACK_IMPORTED_MODULE_17__actions_mutes__","__WEBPACK_IMPORTED_MODULE_18__actions_reports__","__WEBPACK_IMPORTED_MODULE_19__selectors__","__WEBPACK_IMPORTED_MODULE_20_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_21__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_22__components_column_header__","__WEBPACK_IMPORTED_MODULE_23__containers_status_container__","__WEBPACK_IMPORTED_MODULE_24__actions_modal__","__WEBPACK_IMPORTED_MODULE_25_react_intl__","__WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_27_react_hotkeys__","__WEBPACK_IMPORTED_MODULE_28__initial_state__","__WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__","revealAll","hideAll","params","statusId","ancestorsIds","descendantsIds","_ImmutablePureCompone","fullscreen","handleFavouriteClick","handleReplyClick","handleModalReblog","handleReblogClick","handleDeleteClick","handleMentionClick","handleOpenMedia","handleOpenVideo","handleMuteClick","handleConversationMuteClick","handleToggleHidden","handleToggleAll","_this$props2","statusIds","toJS","handleBlockClick","_this$props3","handleReport","handleHotkeyMoveUp","handleMoveUp","handleHotkeyMoveDown","handleMoveDown","handleHotkeyReply","handleHotkeyFavourite","handleHotkeyBoost","handleHotkeyMention","handleHotkeyOpenProfile","_this$props4","_selectChild","_this$props5","onFullScreenChange","componentWillMount","componentDidMount","_scrolledIntoView","element","querySelectorAll","focus","renderChildren","list","onMoveUp","onMoveDown","componentDidUpdate","scrollIntoView","componentWillUnmount","ancestors","descendants","handlers","moveUp","moveDown","reply","favourite","boost","mention","openProfile","showBackButton","extraButton","aria-pressed","scrollKey","tabIndex","propTypes","isRequired","func","845","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","964","DetailedStatus","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__components_avatar__","__WEBPACK_IMPORTED_MODULE_8__components_display_name__","__WEBPACK_IMPORTED_MODULE_9__components_status_content__","__WEBPACK_IMPORTED_MODULE_10__components_media_gallery__","__WEBPACK_IMPORTED_MODULE_11__components_attachment_list__","__WEBPACK_IMPORTED_MODULE_12_react_router_dom__","__WEBPACK_IMPORTED_MODULE_13_react_intl__","__WEBPACK_IMPORTED_MODULE_14__containers_card_container__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_16__video__","handleAccountClick","startTime","handleExpandedToggle","applicationLink","reblogLink","reblogIcon","some","item","video","preview","inline","to","expanded","onExpandedToggle","Date","hour12","year","month","day","hour","minute","965","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_card__","mapStateToProps","966","ActionBar","__WEBPACK_IMPORTED_MODULE_6__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_8_react_intl__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","delete","reblog","cannot_reblog","muteConversation","unmuteConversation","block","report","share","handlePinClick","onPin","handleShare","navigator","mutingConversation","includes","menu","action","shareButton","reblog_disabled","disabled","animate","activeStyle","color","items","direction"],"mappings":"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","file":"features/status.js","sourcesContent":["webpackJsonp([16,26],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 155:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return MediaGallery; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n toggle_visible: {\n 'id': 'media_gallery.toggle_visible',\n 'defaultMessage': 'Toggle visibility'\n }\n});\n\nvar Item = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Item, _React$PureComponent);\n\n function Item() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Item);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleMouseEnter = function (e) {\n if (_this.hoverToPlay()) {\n e.target.play();\n }\n }, _this.handleMouseLeave = function (e) {\n if (_this.hoverToPlay()) {\n e.target.pause();\n e.target.currentTime = 0;\n }\n }, _this.handleClick = function (e) {\n var _this$props = _this.props,\n index = _this$props.index,\n onClick = _this$props.onClick;\n\n\n if (e.button === 0) {\n e.preventDefault();\n onClick(index);\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Item.prototype.hoverToPlay = function hoverToPlay() {\n var attachment = this.props.attachment;\n\n return !__WEBPACK_IMPORTED_MODULE_10__initial_state__[\"a\" /* autoPlayGif */] && attachment.get('type') === 'gifv';\n };\n\n Item.prototype.render = function render() {\n var _props = this.props,\n attachment = _props.attachment,\n index = _props.index,\n size = _props.size,\n standalone = _props.standalone;\n\n\n var width = 50;\n var height = 100;\n var top = 'auto';\n var left = 'auto';\n var bottom = 'auto';\n var right = 'auto';\n\n if (size === 1) {\n width = 100;\n }\n\n if (size === 4 || size === 3 && index > 0) {\n height = 50;\n }\n\n if (size === 2) {\n if (index === 0) {\n right = '2px';\n } else {\n left = '2px';\n }\n } else if (size === 3) {\n if (index === 0) {\n right = '2px';\n } else if (index > 0) {\n left = '2px';\n }\n\n if (index === 1) {\n bottom = '2px';\n } else if (index > 1) {\n top = '2px';\n }\n } else if (size === 4) {\n if (index === 0 || index === 2) {\n right = '2px';\n }\n\n if (index === 1 || index === 3) {\n left = '2px';\n }\n\n if (index < 2) {\n bottom = '2px';\n } else {\n top = '2px';\n }\n }\n\n var thumbnail = '';\n\n if (attachment.get('type') === 'image') {\n var previewUrl = attachment.get('preview_url');\n var previewWidth = attachment.getIn(['meta', 'small', 'width']);\n\n var originalUrl = attachment.get('url');\n var originalWidth = attachment.getIn(['meta', 'original', 'width']);\n\n var hasSize = typeof originalWidth === 'number' && typeof previewWidth === 'number';\n\n var srcSet = hasSize ? originalUrl + ' ' + originalWidth + 'w, ' + previewUrl + ' ' + previewWidth + 'w' : null;\n var sizes = hasSize ? '(min-width: 1025px) ' + 320 * (width / 100) + 'px, ' + width + 'vw' : null;\n\n var focusX = attachment.getIn(['meta', 'focus', 'x']) || 0;\n var focusY = attachment.getIn(['meta', 'focus', 'y']) || 0;\n var x = (focusX / 2 + .5) * 100;\n var y = (focusY / -2 + .5) * 100;\n\n thumbnail = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n className: 'media-gallery__item-thumbnail',\n href: attachment.get('remote_url') || originalUrl,\n onClick: this.handleClick,\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n src: previewUrl,\n srcSet: srcSet,\n sizes: sizes,\n alt: attachment.get('description'),\n title: attachment.get('description'),\n style: { objectPosition: x + '% ' + y + '%' }\n }));\n } else if (attachment.get('type') === 'gifv') {\n var autoPlay = !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"a\" /* isIOS */])() && __WEBPACK_IMPORTED_MODULE_10__initial_state__[\"a\" /* autoPlayGif */];\n\n thumbnail = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_9_classnames___default()('media-gallery__gifv', { autoplay: autoPlay })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('video', {\n className: 'media-gallery__item-gifv-thumbnail',\n 'aria-label': attachment.get('description'),\n role: 'application',\n src: attachment.get('url'),\n onClick: this.handleClick,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n autoPlay: autoPlay,\n loop: true,\n muted: true\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'media-gallery__gifv__label'\n }, void 0, 'GIF'));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_9_classnames___default()('media-gallery__item', { standalone: standalone }),\n style: { left: left, top: top, right: right, bottom: bottom, width: width + '%', height: height + '%' }\n }, attachment.get('id'), thumbnail);\n };\n\n return Item;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n standalone: false,\n index: 0,\n size: 1\n}, _temp2);\n\nvar MediaGallery = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp4 = _class3 = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MediaGallery, _React$PureComponent2);\n\n function MediaGallery() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MediaGallery);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.state = {\n visible: !_this2.props.sensitive || __WEBPACK_IMPORTED_MODULE_10__initial_state__[\"f\" /* displaySensitiveMedia */]\n }, _this2.handleOpen = function () {\n _this2.setState({ visible: !_this2.state.visible });\n }, _this2.handleClick = function (index) {\n _this2.props.onOpenMedia(_this2.props.media, index);\n }, _this2.handleRef = function (node) {\n if (node /*&& this.isStandaloneEligible()*/) {\n // offsetWidth triggers a layout, so only calculate when we need to\n _this2.setState({\n width: node.offsetWidth\n });\n }\n }, _temp3), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n MediaGallery.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (!Object(__WEBPACK_IMPORTED_MODULE_5_immutable__[\"is\"])(nextProps.media, this.props.media)) {\n this.setState({ visible: !nextProps.sensitive });\n }\n };\n\n MediaGallery.prototype.isStandaloneEligible = function isStandaloneEligible() {\n var _props2 = this.props,\n media = _props2.media,\n standalone = _props2.standalone;\n\n return standalone && media.size === 1 && media.getIn([0, 'meta', 'small', 'aspect']);\n };\n\n MediaGallery.prototype.render = function render() {\n var _this3 = this;\n\n var _props3 = this.props,\n media = _props3.media,\n intl = _props3.intl,\n sensitive = _props3.sensitive,\n height = _props3.height;\n var _state = this.state,\n width = _state.width,\n visible = _state.visible;\n\n\n var children = void 0;\n\n var style = {};\n\n if (this.isStandaloneEligible()) {\n if (width) {\n style.height = width / this.props.media.getIn([0, 'meta', 'small', 'aspect']);\n }\n } else if (width) {\n style.height = width / (16 / 9);\n } else {\n style.height = height;\n }\n\n if (!visible) {\n var warning = void 0;\n\n if (sensitive) {\n warning = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.sensitive_warning',\n defaultMessage: 'Sensitive content'\n });\n } else {\n warning = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.media_hidden',\n defaultMessage: 'Media hidden'\n });\n }\n\n children = __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'button',\n { type: 'button', className: 'media-spoiler', onClick: this.handleOpen, style: style, ref: this.handleRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'media-spoiler__warning'\n }, void 0, warning),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'media-spoiler__trigger'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.sensitive_toggle',\n defaultMessage: 'Click to view'\n }))\n );\n } else {\n var size = media.take(4).size;\n\n if (this.isStandaloneEligible()) {\n children = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Item, {\n standalone: true,\n onClick: this.handleClick,\n attachment: media.get(0)\n });\n } else {\n children = media.take(4).map(function (attachment, i) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Item, {\n onClick: _this3.handleClick,\n attachment: attachment,\n index: i,\n size: size\n }, attachment.get('id'));\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: 'media-gallery', style: style, ref: this.handleRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_9_classnames___default()('spoiler-button', { 'spoiler-button--visible': visible })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.toggle_visible),\n icon: visible ? 'eye' : 'eye-slash',\n overlay: true,\n onClick: this.handleOpen\n })),\n children\n );\n };\n\n return MediaGallery;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class3.defaultProps = {\n standalone: false\n}, _temp4)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 332:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Card; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_punycode__ = __webpack_require__(333);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_punycode___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_punycode__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_classnames__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\nvar IDNA_PREFIX = 'xn--';\n\nvar decodeIDNA = function decodeIDNA(domain) {\n return domain.split('.').map(function (part) {\n return part.indexOf(IDNA_PREFIX) === 0 ? __WEBPACK_IMPORTED_MODULE_6_punycode___default.a.decode(part.slice(IDNA_PREFIX.length)) : part;\n }).join('.');\n};\n\nvar getHostname = function getHostname(url) {\n var parser = document.createElement('a');\n parser.href = url;\n return parser.hostname;\n};\n\nvar trim = function trim(text, len) {\n var cut = text.indexOf(' ', len);\n\n if (cut === -1) {\n return text;\n }\n\n return text.substring(0, cut) + (text.length > len ? '…' : '');\n};\n\nvar domParser = new DOMParser();\n\nvar addAutoPlay = function addAutoPlay(html) {\n var document = domParser.parseFromString(html, 'text/html').documentElement;\n var iframe = document.querySelector('iframe');\n\n if (iframe) {\n if (iframe.src.indexOf('?') !== -1) {\n iframe.src += '&';\n } else {\n iframe.src += '?';\n }\n\n iframe.src += 'autoplay=1&auto_play=1';\n\n // DOM parser creates html/body elements around original HTML fragment,\n // so we need to get innerHTML out of the body and not the entire document\n return document.querySelector('body').innerHTML;\n }\n\n return html;\n};\n\nvar Card = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Card, _React$PureComponent);\n\n function Card() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Card);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.state = {\n width: 280,\n embedded: false\n }, _this.handlePhotoClick = function () {\n var _this$props = _this.props,\n card = _this$props.card,\n onOpenMedia = _this$props.onOpenMedia;\n\n\n onOpenMedia(__WEBPACK_IMPORTED_MODULE_5_immutable___default.a.fromJS([{\n type: 'image',\n url: card.get('embed_url'),\n description: card.get('title'),\n meta: {\n original: {\n width: card.get('width'),\n height: card.get('height')\n }\n }\n }]), 0);\n }, _this.handleEmbedClick = function () {\n var card = _this.props.card;\n\n\n if (card.get('type') === 'photo') {\n _this.handlePhotoClick();\n } else {\n _this.setState({ embedded: true });\n }\n }, _this.setRef = function (c) {\n if (c) {\n _this.setState({ width: c.offsetWidth });\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Card.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (this.props.card !== nextProps.card) {\n this.setState({ embedded: false });\n }\n };\n\n Card.prototype.renderVideo = function renderVideo() {\n var card = this.props.card;\n\n var content = { __html: addAutoPlay(card.get('html')) };\n var width = this.state.width;\n\n var ratio = card.get('width') / card.get('height');\n var height = card.get('width') > card.get('height') ? width / ratio : width * ratio;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement('div', {\n ref: this.setRef,\n className: 'status-card__image status-card-video',\n dangerouslySetInnerHTML: content,\n style: { height: height }\n });\n };\n\n Card.prototype.render = function render() {\n var _props = this.props,\n card = _props.card,\n maxDescription = _props.maxDescription;\n var _state = this.state,\n width = _state.width,\n embedded = _state.embedded;\n\n\n if (card === null) {\n return null;\n }\n\n var provider = card.get('provider_name').length === 0 ? decodeIDNA(getHostname(card.get('url'))) : card.get('provider_name');\n var horizontal = card.get('width') > card.get('height') && card.get('width') + 100 >= width || card.get('type') !== 'link';\n var className = __WEBPACK_IMPORTED_MODULE_7_classnames___default()('status-card', { horizontal: horizontal });\n var interactive = card.get('type') !== 'link';\n var title = interactive ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n className: 'status-card__title',\n href: card.get('url'),\n title: card.get('title'),\n rel: 'noopener',\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, card.get('title'))) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n className: 'status-card__title',\n title: card.get('title')\n }, void 0, card.get('title'));\n var ratio = card.get('width') / card.get('height');\n var height = card.get('width') > card.get('height') ? width / ratio : width * ratio;\n\n var description = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'status-card__content'\n }, void 0, title, !horizontal && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('p', {\n className: 'status-card__description'\n }, void 0, trim(card.get('description') || '', maxDescription)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'status-card__host'\n }, void 0, provider));\n\n var embed = '';\n var thumbnail = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n style: { backgroundImage: 'url(' + card.get('image') + ')', width: horizontal ? width : null, height: horizontal ? height : null },\n className: 'status-card__image-image'\n });\n\n if (interactive) {\n if (embedded) {\n embed = this.renderVideo();\n } else {\n var iconVariant = 'play';\n\n if (card.get('type') === 'photo') {\n iconVariant = 'search-plus';\n }\n\n embed = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'status-card__image'\n }, void 0, thumbnail, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'status-card__actions'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleEmbedClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-' + iconVariant\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: card.get('url'),\n target: '_blank',\n rel: 'noopener'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-external-link'\n })))));\n }\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: className, ref: this.setRef },\n embed,\n description\n );\n } else if (card.get('image')) {\n embed = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'status-card__image'\n }, void 0, thumbnail);\n }\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'a',\n { href: card.get('url'), className: className, target: '_blank', rel: 'noopener', ref: this.setRef },\n embed,\n description\n );\n };\n\n return Card;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n maxDescription: 50\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 333:\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(module, global) {var __WEBPACK_AMD_DEFINE_RESULT__;/*! https://mths.be/punycode v1.4.1 by @mathias */\n;(function (root) {\n\n\t/** Detect free variables */\n\tvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\tvar freeModule = typeof module == 'object' && module && !module.nodeType && module;\n\tvar freeGlobal = typeof global == 'object' && global;\n\tif (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal || freeGlobal.self === freeGlobal) {\n\t\troot = freeGlobal;\n\t}\n\n\t/**\n * The `punycode` object.\n * @name punycode\n * @type Object\n */\n\tvar punycode,\n\n\n\t/** Highest positive signed 32-bit float value */\n\tmaxInt = 2147483647,\n\t // aka. 0x7FFFFFFF or 2^31-1\n\n\t/** Bootstring parameters */\n\tbase = 36,\n\t tMin = 1,\n\t tMax = 26,\n\t skew = 38,\n\t damp = 700,\n\t initialBias = 72,\n\t initialN = 128,\n\t // 0x80\n\tdelimiter = '-',\n\t // '\\x2D'\n\n\t/** Regular expressions */\n\tregexPunycode = /^xn--/,\n\t regexNonASCII = /[^\\x20-\\x7E]/,\n\t // unprintable ASCII chars + non-ASCII chars\n\tregexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g,\n\t // RFC 3490 separators\n\n\t/** Error messages */\n\terrors = {\n\t\t'overflow': 'Overflow: input needs wider integers to process',\n\t\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t\t'invalid-input': 'Invalid input'\n\t},\n\n\n\t/** Convenience shortcuts */\n\tbaseMinusTMin = base - tMin,\n\t floor = Math.floor,\n\t stringFromCharCode = String.fromCharCode,\n\n\n\t/** Temporary variable */\n\tkey;\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/**\n * A generic error utility function.\n * @private\n * @param {String} type The error type.\n * @returns {Error} Throws a `RangeError` with the applicable error message.\n */\n\tfunction error(type) {\n\t\tthrow new RangeError(errors[type]);\n\t}\n\n\t/**\n * A generic `Array#map` utility function.\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} callback The function that gets called for every array\n * item.\n * @returns {Array} A new array of values returned by the callback function.\n */\n\tfunction map(array, fn) {\n\t\tvar length = array.length;\n\t\tvar result = [];\n\t\twhile (length--) {\n\t\t\tresult[length] = fn(array[length]);\n\t\t}\n\t\treturn result;\n\t}\n\n\t/**\n * A simple `Array#map`-like wrapper to work with domain name strings or email\n * addresses.\n * @private\n * @param {String} domain The domain name or email address.\n * @param {Function} callback The function that gets called for every\n * character.\n * @returns {Array} A new string of characters returned by the callback\n * function.\n */\n\tfunction mapDomain(string, fn) {\n\t\tvar parts = string.split('@');\n\t\tvar result = '';\n\t\tif (parts.length > 1) {\n\t\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t\t// the local part (i.e. everything up to `@`) intact.\n\t\t\tresult = parts[0] + '@';\n\t\t\tstring = parts[1];\n\t\t}\n\t\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\t\tstring = string.replace(regexSeparators, '\\x2E');\n\t\tvar labels = string.split('.');\n\t\tvar encoded = map(labels, fn).join('.');\n\t\treturn result + encoded;\n\t}\n\n\t/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n * @see `punycode.ucs2.encode`\n * @see <https://mathiasbynens.be/notes/javascript-encoding>\n * @memberOf punycode.ucs2\n * @name decode\n * @param {String} string The Unicode input string (UCS-2).\n * @returns {Array} The new array of code points.\n */\n\tfunction ucs2decode(string) {\n\t\tvar output = [],\n\t\t counter = 0,\n\t\t length = string.length,\n\t\t value,\n\t\t extra;\n\t\twhile (counter < length) {\n\t\t\tvalue = string.charCodeAt(counter++);\n\t\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t\t// high surrogate, and there is a next character\n\t\t\t\textra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) {\n\t\t\t\t\t// low surrogate\n\t\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t\t} else {\n\t\t\t\t\t// unmatched surrogate; only append this code unit, in case the next\n\t\t\t\t\t// code unit is the high surrogate of a surrogate pair\n\t\t\t\t\toutput.push(value);\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toutput.push(value);\n\t\t\t}\n\t\t}\n\t\treturn output;\n\t}\n\n\t/**\n * Creates a string based on an array of numeric code points.\n * @see `punycode.ucs2.decode`\n * @memberOf punycode.ucs2\n * @name encode\n * @param {Array} codePoints The array of numeric code points.\n * @returns {String} The new Unicode string (UCS-2).\n */\n\tfunction ucs2encode(array) {\n\t\treturn map(array, function (value) {\n\t\t\tvar output = '';\n\t\t\tif (value > 0xFFFF) {\n\t\t\t\tvalue -= 0x10000;\n\t\t\t\toutput += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);\n\t\t\t\tvalue = 0xDC00 | value & 0x3FF;\n\t\t\t}\n\t\t\toutput += stringFromCharCode(value);\n\t\t\treturn output;\n\t\t}).join('');\n\t}\n\n\t/**\n * Converts a basic code point into a digit/integer.\n * @see `digitToBasic()`\n * @private\n * @param {Number} codePoint The basic numeric code point value.\n * @returns {Number} The numeric value of a basic code point (for use in\n * representing integers) in the range `0` to `base - 1`, or `base` if\n * the code point does not represent a value.\n */\n\tfunction basicToDigit(codePoint) {\n\t\tif (codePoint - 48 < 10) {\n\t\t\treturn codePoint - 22;\n\t\t}\n\t\tif (codePoint - 65 < 26) {\n\t\t\treturn codePoint - 65;\n\t\t}\n\t\tif (codePoint - 97 < 26) {\n\t\t\treturn codePoint - 97;\n\t\t}\n\t\treturn base;\n\t}\n\n\t/**\n * Converts a digit/integer into a basic code point.\n * @see `basicToDigit()`\n * @private\n * @param {Number} digit The numeric value of a basic code point.\n * @returns {Number} The basic code point whose value (when used for\n * representing integers) is `digit`, which needs to be in the range\n * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n * used; else, the lowercase form is used. The behavior is undefined\n * if `flag` is non-zero and `digit` has no uppercase form.\n */\n\tfunction digitToBasic(digit, flag) {\n\t\t// 0..25 map to ASCII a..z or A..Z\n\t\t// 26..35 map to ASCII 0..9\n\t\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n\t}\n\n\t/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n * @private\n */\n\tfunction adapt(delta, numPoints, firstTime) {\n\t\tvar k = 0;\n\t\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\t\tdelta += floor(delta / numPoints);\n\t\tfor (; /* no initialization */delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\t\tdelta = floor(delta / baseMinusTMin);\n\t\t}\n\t\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n\t}\n\n\t/**\n * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n * symbols.\n * @memberOf punycode\n * @param {String} input The Punycode string of ASCII-only symbols.\n * @returns {String} The resulting string of Unicode symbols.\n */\n\tfunction decode(input) {\n\t\t// Don't use UCS-2\n\t\tvar output = [],\n\t\t inputLength = input.length,\n\t\t out,\n\t\t i = 0,\n\t\t n = initialN,\n\t\t bias = initialBias,\n\t\t basic,\n\t\t j,\n\t\t index,\n\t\t oldi,\n\t\t w,\n\t\t k,\n\t\t digit,\n\t\t t,\n\n\t\t/** Cached calculation results */\n\t\tbaseMinusT;\n\n\t\t// Handle the basic code points: let `basic` be the number of input code\n\t\t// points before the last delimiter, or `0` if there is none, then copy\n\t\t// the first basic code points to the output.\n\n\t\tbasic = input.lastIndexOf(delimiter);\n\t\tif (basic < 0) {\n\t\t\tbasic = 0;\n\t\t}\n\n\t\tfor (j = 0; j < basic; ++j) {\n\t\t\t// if it's not a basic code point\n\t\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\t\terror('not-basic');\n\t\t\t}\n\t\t\toutput.push(input.charCodeAt(j));\n\t\t}\n\n\t\t// Main decoding loop: start just after the last delimiter if any basic code\n\t\t// points were copied; start at the beginning otherwise.\n\n\t\tfor (index = basic > 0 ? basic + 1 : 0; index < inputLength;) /* no final expression */{\n\n\t\t\t// `index` is the index of the next character to be consumed.\n\t\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t\t// which gets added to `i`. The overflow checking is easier\n\t\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t\t// value at the end to obtain `delta`.\n\t\t\tfor (oldi = i, w = 1, k = base;; /* no condition */k += base) {\n\n\t\t\t\tif (index >= inputLength) {\n\t\t\t\t\terror('invalid-input');\n\t\t\t\t}\n\n\t\t\t\tdigit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\ti += digit * w;\n\t\t\t\tt = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;\n\n\t\t\t\tif (digit < t) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tbaseMinusT = base - t;\n\t\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tw *= baseMinusT;\n\t\t\t}\n\n\t\t\tout = output.length + 1;\n\t\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t\t// incrementing `n` each time, so we'll fix that now:\n\t\t\tif (floor(i / out) > maxInt - n) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tn += floor(i / out);\n\t\t\ti %= out;\n\n\t\t\t// Insert `n` at position `i` of the output\n\t\t\toutput.splice(i++, 0, n);\n\t\t}\n\n\t\treturn ucs2encode(output);\n\t}\n\n\t/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n * @memberOf punycode\n * @param {String} input The string of Unicode symbols.\n * @returns {String} The resulting Punycode string of ASCII-only symbols.\n */\n\tfunction encode(input) {\n\t\tvar n,\n\t\t delta,\n\t\t handledCPCount,\n\t\t basicLength,\n\t\t bias,\n\t\t j,\n\t\t m,\n\t\t q,\n\t\t k,\n\t\t t,\n\t\t currentValue,\n\t\t output = [],\n\n\t\t/** `inputLength` will hold the number of code points in `input`. */\n\t\tinputLength,\n\n\t\t/** Cached calculation results */\n\t\thandledCPCountPlusOne,\n\t\t baseMinusT,\n\t\t qMinusT;\n\n\t\t// Convert the input in UCS-2 to Unicode\n\t\tinput = ucs2decode(input);\n\n\t\t// Cache the length\n\t\tinputLength = input.length;\n\n\t\t// Initialize the state\n\t\tn = initialN;\n\t\tdelta = 0;\n\t\tbias = initialBias;\n\n\t\t// Handle the basic code points\n\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\tcurrentValue = input[j];\n\t\t\tif (currentValue < 0x80) {\n\t\t\t\toutput.push(stringFromCharCode(currentValue));\n\t\t\t}\n\t\t}\n\n\t\thandledCPCount = basicLength = output.length;\n\n\t\t// `handledCPCount` is the number of code points that have been handled;\n\t\t// `basicLength` is the number of basic code points.\n\n\t\t// Finish the basic string - if it is not empty - with a delimiter\n\t\tif (basicLength) {\n\t\t\toutput.push(delimiter);\n\t\t}\n\n\t\t// Main encoding loop:\n\t\twhile (handledCPCount < inputLength) {\n\n\t\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t\t// larger one:\n\t\t\tfor (m = maxInt, j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\t\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\t\tm = currentValue;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Increase `delta` enough to advance the decoder's <n,i> state to <m,0>,\n\t\t\t// but guard against overflow\n\t\t\thandledCPCountPlusOne = handledCPCount + 1;\n\t\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\t\tn = m;\n\n\t\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\n\t\t\t\tif (currentValue < n && ++delta > maxInt) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tif (currentValue == n) {\n\t\t\t\t\t// Represent delta as a generalized variable-length integer\n\t\t\t\t\tfor (q = delta, k = base;; /* no condition */k += base) {\n\t\t\t\t\t\tt = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;\n\t\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tqMinusT = q - t;\n\t\t\t\t\t\tbaseMinusT = base - t;\n\t\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)));\n\t\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t\t}\n\n\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\t\tdelta = 0;\n\t\t\t\t\t++handledCPCount;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t++delta;\n\t\t\t++n;\n\t\t}\n\t\treturn output.join('');\n\t}\n\n\t/**\n * Converts a Punycode string representing a domain name or an email address\n * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n * it doesn't matter if you call it on a string that has already been\n * converted to Unicode.\n * @memberOf punycode\n * @param {String} input The Punycoded domain name or email address to\n * convert to Unicode.\n * @returns {String} The Unicode representation of the given Punycode\n * string.\n */\n\tfunction toUnicode(input) {\n\t\treturn mapDomain(input, function (string) {\n\t\t\treturn regexPunycode.test(string) ? decode(string.slice(4).toLowerCase()) : string;\n\t\t});\n\t}\n\n\t/**\n * Converts a Unicode string representing a domain name or an email address to\n * Punycode. Only the non-ASCII parts of the domain name will be converted,\n * i.e. it doesn't matter if you call it with a domain that's already in\n * ASCII.\n * @memberOf punycode\n * @param {String} input The domain name or email address to convert, as a\n * Unicode string.\n * @returns {String} The Punycode representation of the given domain name or\n * email address.\n */\n\tfunction toASCII(input) {\n\t\treturn mapDomain(input, function (string) {\n\t\t\treturn regexNonASCII.test(string) ? 'xn--' + encode(string) : string;\n\t\t});\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/** Define the public API */\n\tpunycode = {\n\t\t/**\n * A string representing the current Punycode.js version number.\n * @memberOf punycode\n * @type String\n */\n\t\t'version': '1.4.1',\n\t\t/**\n * An object of methods to convert from JavaScript's internal character\n * representation (UCS-2) to Unicode code points, and back.\n * @see <https://mathiasbynens.be/notes/javascript-encoding>\n * @memberOf punycode\n * @type Object\n */\n\t\t'ucs2': {\n\t\t\t'decode': ucs2decode,\n\t\t\t'encode': ucs2encode\n\t\t},\n\t\t'decode': decode,\n\t\t'encode': encode,\n\t\t'toASCII': toASCII,\n\t\t'toUnicode': toUnicode\n\t};\n\n\t/** Expose `punycode` */\n\t// Some AMD build optimizers, like r.js, check for specific condition patterns\n\t// like the following:\n\tif (true) {\n\t\t!(__WEBPACK_AMD_DEFINE_RESULT__ = (function () {\n\t\t\treturn punycode;\n\t\t}).call(exports, __webpack_require__, exports, module),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else if (freeExports && freeModule) {\n\t\tif (module.exports == freeExports) {\n\t\t\t// in Node.js, io.js, or RingoJS v0.8.0+\n\t\t\tfreeModule.exports = punycode;\n\t\t} else {\n\t\t\t// in Narwhal or RingoJS v0.7.0-\n\t\t\tfor (key in punycode) {\n\t\t\t\tpunycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// in Rhino or a web browser\n\t\troot.punycode = punycode;\n\t}\n})(this);\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(73)(module), __webpack_require__(45)))\n\n/***/ }),\n\n/***/ 811:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Status; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_missing_indicator__ = __webpack_require__(845);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_detailed_status__ = __webpack_require__(964);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_action_bar__ = __webpack_require__(966);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__ui_components_column__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__actions_mutes__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__actions_reports__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20_react_router_scroll_4__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_25_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27_react_hotkeys__ = __webpack_require__(157);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27_react_hotkeys___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_27_react_hotkeys__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_28__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__ = __webpack_require__(154);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_25_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n },\n revealAll: {\n 'id': 'status.show_more_all',\n 'defaultMessage': 'Show more for all'\n },\n hideAll: {\n 'id': 'status.show_less_all',\n 'defaultMessage': 'Show less for all'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_19__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.params.statusId),\n ancestorsIds: state.getIn(['contexts', 'ancestors', props.params.statusId]),\n descendantsIds: state.getIn(['contexts', 'descendants', props.params.statusId])\n };\n };\n\n return mapStateToProps;\n};\n\nvar Status = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(makeMapStateToProps), Object(__WEBPACK_IMPORTED_MODULE_25_react_intl__[\"g\" /* injectIntl */])(_class = _dec(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Status, _ImmutablePureCompone);\n\n function Status() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Status);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n fullscreen: false\n }, _this.handleFavouriteClick = function (status) {\n if (status.get('favourited')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_interactions__[\"i\" /* favourite */])(status));\n }\n }, _this.handleReplyClick = function (status) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_15__actions_compose__[\"T\" /* replyCompose */])(status, _this.context.router.history));\n }, _this.handleModalReblog = function (status) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_interactions__[\"l\" /* reblog */])(status));\n }, _this.handleReblogClick = function (status, e) {\n if (status.get('reblogged')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_28__initial_state__[\"b\" /* boostModal */]) {\n _this.handleModalReblog(status);\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: _this.handleModalReblog }));\n }\n }\n }, _this.handleDeleteClick = function (status) {\n var _this$props = _this.props,\n dispatch = _this$props.dispatch,\n intl = _this$props.intl;\n\n\n if (!__WEBPACK_IMPORTED_MODULE_28__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n }, _this.handleMentionClick = function (account, router) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_15__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n }, _this.handleOpenMedia = function (media, index) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n }, _this.handleOpenVideo = function (media, time) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n }, _this.handleMuteClick = function (account) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_17__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }, _this.handleConversationMuteClick = function (status) {\n if (status.get('muted')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n }, _this.handleToggleHidden = function (status) {\n if (status.get('hidden')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }, _this.handleToggleAll = function () {\n var _this$props2 = _this.props,\n status = _this$props2.status,\n ancestorsIds = _this$props2.ancestorsIds,\n descendantsIds = _this$props2.descendantsIds;\n\n var statusIds = [status.get('id')].concat(ancestorsIds.toJS(), descendantsIds.toJS());\n\n if (status.get('hidden')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"j\" /* revealStatus */])(statusIds));\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"h\" /* hideStatus */])(statusIds));\n }\n }, _this.handleBlockClick = function (account) {\n var _this$props3 = _this.props,\n dispatch = _this$props3.dispatch,\n intl = _this$props3.intl;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_25_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_16__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }, _this.handleReport = function (status) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_18__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n }, _this.handleHotkeyMoveUp = function () {\n _this.handleMoveUp(_this.props.status.get('id'));\n }, _this.handleHotkeyMoveDown = function () {\n _this.handleMoveDown(_this.props.status.get('id'));\n }, _this.handleHotkeyReply = function (e) {\n e.preventDefault();\n _this.handleReplyClick(_this.props.status);\n }, _this.handleHotkeyFavourite = function () {\n _this.handleFavouriteClick(_this.props.status);\n }, _this.handleHotkeyBoost = function () {\n _this.handleReblogClick(_this.props.status);\n }, _this.handleHotkeyMention = function (e) {\n e.preventDefault();\n _this.handleMentionClick(_this.props.status);\n }, _this.handleHotkeyOpenProfile = function () {\n _this.context.router.history.push('/accounts/' + _this.props.status.getIn(['account', 'id']));\n }, _this.handleMoveUp = function (id) {\n var _this$props4 = _this.props,\n status = _this$props4.status,\n ancestorsIds = _this$props4.ancestorsIds,\n descendantsIds = _this$props4.descendantsIds;\n\n\n if (id === status.get('id')) {\n _this._selectChild(ancestorsIds.size - 1);\n } else {\n var index = ancestorsIds.indexOf(id);\n\n if (index === -1) {\n index = descendantsIds.indexOf(id);\n _this._selectChild(ancestorsIds.size + index);\n } else {\n _this._selectChild(index - 1);\n }\n }\n }, _this.handleMoveDown = function (id) {\n var _this$props5 = _this.props,\n status = _this$props5.status,\n ancestorsIds = _this$props5.ancestorsIds,\n descendantsIds = _this$props5.descendantsIds;\n\n\n if (id === status.get('id')) {\n _this._selectChild(ancestorsIds.size + 1);\n } else {\n var index = ancestorsIds.indexOf(id);\n\n if (index === -1) {\n index = descendantsIds.indexOf(id);\n _this._selectChild(ancestorsIds.size + index + 2);\n } else {\n _this._selectChild(index + 1);\n }\n }\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Status.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"g\" /* fetchStatus */])(this.props.params.statusId));\n };\n\n Status.prototype.componentDidMount = function componentDidMount() {\n Object(__WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n };\n\n Status.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this._scrolledIntoView = false;\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"g\" /* fetchStatus */])(nextProps.params.statusId));\n }\n };\n\n Status.prototype._selectChild = function _selectChild(index) {\n var element = this.node.querySelectorAll('.focusable')[index];\n\n if (element) {\n element.focus();\n }\n };\n\n Status.prototype.renderChildren = function renderChildren(list) {\n var _this2 = this;\n\n return list.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_23__containers_status_container__[\"a\" /* default */], {\n id: id,\n onMoveUp: _this2.handleMoveUp,\n onMoveDown: _this2.handleMoveDown\n }, id);\n });\n };\n\n Status.prototype.componentDidUpdate = function componentDidUpdate() {\n if (this._scrolledIntoView) {\n return;\n }\n\n var _props = this.props,\n status = _props.status,\n ancestorsIds = _props.ancestorsIds;\n\n\n if (status && ancestorsIds && ancestorsIds.size > 0) {\n var element = this.node.querySelectorAll('.focusable')[ancestorsIds.size - 1];\n\n element.scrollIntoView(true);\n this._scrolledIntoView = true;\n }\n };\n\n Status.prototype.componentWillUnmount = function componentWillUnmount() {\n Object(__WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n Status.prototype.render = function render() {\n var ancestors = void 0,\n descendants = void 0;\n var _props2 = this.props,\n status = _props2.status,\n ancestorsIds = _props2.ancestorsIds,\n descendantsIds = _props2.descendantsIds,\n intl = _props2.intl;\n var fullscreen = this.state.fullscreen;\n\n\n if (status === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_21__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_missing_indicator__[\"a\" /* default */], {}));\n }\n\n if (ancestorsIds && ancestorsIds.size > 0) {\n ancestors = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, this.renderChildren(ancestorsIds));\n }\n\n if (descendantsIds && descendantsIds.size > 0) {\n descendants = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, this.renderChildren(descendantsIds));\n }\n\n var handlers = {\n moveUp: this.handleHotkeyMoveUp,\n moveDown: this.handleHotkeyMoveDown,\n reply: this.handleHotkeyReply,\n favourite: this.handleHotkeyFavourite,\n boost: this.handleHotkeyBoost,\n mention: this.handleHotkeyMention,\n openProfile: this.handleHotkeyOpenProfile\n };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_22__components_column_header__[\"a\" /* default */], {\n showBackButton: true,\n extraButton: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'column-header__button',\n title: intl.formatMessage(status.get('hidden') ? messages.revealAll : messages.hideAll),\n 'aria-label': intl.formatMessage(status.get('hidden') ? messages.revealAll : messages.hideAll),\n onClick: this.handleToggleAll,\n 'aria-pressed': status.get('hidden') ? 'false' : 'true'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-' + (status.get('hidden') ? 'eye-slash' : 'eye')\n }))\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_20_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'thread'\n }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_7_classnames___default()('scrollable', 'detailed-status__wrapper', { fullscreen: fullscreen }), ref: this.setRef },\n ancestors,\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_27_react_hotkeys__[\"HotKeys\"], {\n handlers: handlers\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'focusable',\n tabIndex: '0'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_detailed_status__[\"a\" /* default */], {\n status: status,\n onOpenVideo: this.handleOpenVideo,\n onOpenMedia: this.handleOpenMedia,\n onToggleHidden: this.handleToggleHidden\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_action_bar__[\"a\" /* default */], {\n status: status,\n onReply: this.handleReplyClick,\n onFavourite: this.handleFavouriteClick,\n onReblog: this.handleReblogClick,\n onDelete: this.handleDeleteClick,\n onMention: this.handleMentionClick,\n onMute: this.handleMuteClick,\n onMuteConversation: this.handleConversationMuteClick,\n onBlock: this.handleBlockClick,\n onReport: this.handleReport\n }))),\n descendants\n )));\n };\n\n return Status;\n}(__WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component___default.a), _class2.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n status: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.map,\n ancestorsIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list,\n descendantsIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 845:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 964:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return DetailedStatus; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_status_content__ = __webpack_require__(102);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_media_gallery__ = __webpack_require__(155);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_attachment_list__ = __webpack_require__(337);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_card_container__ = __webpack_require__(965);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__video__ = __webpack_require__(74);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar DetailedStatus = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(DetailedStatus, _ImmutablePureCompone);\n\n function DetailedStatus() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, DetailedStatus);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.status.getIn(['account', 'id']));\n }\n\n e.stopPropagation();\n }, _this.handleOpenVideo = function (startTime) {\n _this.props.onOpenVideo(_this.props.status.getIn(['media_attachments', 0]), startTime);\n }, _this.handleExpandedToggle = function () {\n _this.props.onToggleHidden(_this.props.status);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n DetailedStatus.prototype.render = function render() {\n var status = this.props.status.get('reblog') ? this.props.status.get('reblog') : this.props.status;\n\n var media = '';\n var applicationLink = '';\n var reblogLink = '';\n var reblogIcon = 'retweet';\n\n if (status.get('media_attachments').size > 0) {\n if (status.get('media_attachments').some(function (item) {\n return item.get('type') === 'unknown';\n })) {\n media = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_attachment_list__[\"a\" /* default */], {\n media: status.get('media_attachments')\n });\n } else if (status.getIn(['media_attachments', 0, 'type']) === 'video') {\n var video = status.getIn(['media_attachments', 0]);\n\n media = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__video__[\"default\"], {\n preview: video.get('preview_url'),\n src: video.get('url'),\n width: 300,\n height: 150,\n inline: true,\n onOpenVideo: this.handleOpenVideo,\n sensitive: status.get('sensitive')\n });\n } else {\n media = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_media_gallery__[\"default\"], {\n standalone: true,\n sensitive: status.get('sensitive'),\n media: status.get('media_attachments'),\n height: 300,\n onOpenMedia: this.props.onOpenMedia\n });\n }\n } else if (status.get('spoiler_text').length === 0) {\n media = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_card_container__[\"a\" /* default */], {\n onOpenMedia: this.props.onOpenMedia,\n statusId: status.get('id')\n });\n }\n\n if (status.get('application')) {\n applicationLink = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, ' \\xB7 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n className: 'detailed-status__application',\n href: status.getIn(['application', 'website']),\n target: '_blank',\n rel: 'noopener'\n }, void 0, status.getIn(['application', 'name'])));\n }\n\n if (status.get('visibility') === 'direct') {\n reblogIcon = 'envelope';\n } else if (status.get('visibility') === 'private') {\n reblogIcon = 'lock';\n }\n\n if (status.get('visibility') === 'private') {\n reblogLink = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-' + reblogIcon\n });\n } else {\n reblogLink = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_router_dom__[\"b\" /* Link */], {\n to: '/statuses/' + status.get('id') + '/reblogs',\n className: 'detailed-status__link'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-' + reblogIcon\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'detailed-status__reblogs'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"c\" /* FormattedNumber */], {\n value: status.get('reblogs_count')\n })));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: status.getIn(['account', 'url']),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n account: status.get('account'),\n size: 48\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_display_name__[\"a\" /* default */], {\n account: status.get('account')\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_status_content__[\"a\" /* default */], {\n status: status,\n expanded: !status.get('hidden'),\n onExpandedToggle: this.handleExpandedToggle\n }), media, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__meta'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n className: 'detailed-status__datetime',\n href: status.get('url'),\n target: '_blank',\n rel: 'noopener'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"a\" /* FormattedDate */], {\n value: new Date(status.get('created_at')),\n hour12: false,\n year: 'numeric',\n month: 'short',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit'\n })), applicationLink, ' \\xB7 ', reblogLink, ' \\xB7 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_router_dom__[\"b\" /* Link */], {\n to: '/statuses/' + status.get('id') + '/favourites',\n className: 'detailed-status__link'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-star'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'detailed-status__favorites'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"c\" /* FormattedNumber */], {\n value: status.get('favourites_count')\n })))));\n };\n\n return DetailedStatus;\n}(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n status: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n onOpenMedia: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onOpenVideo: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onToggleHidden: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 965:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_card__ = __webpack_require__(332);\n\n\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n var statusId = _ref.statusId;\n return {\n card: state.getIn(['cards', statusId], null)\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_card__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 966:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"f\" /* defineMessages */])({\n delete: {\n 'id': 'status.delete',\n 'defaultMessage': 'Delete'\n },\n mention: {\n 'id': 'status.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n reply: {\n 'id': 'status.reply',\n 'defaultMessage': 'Reply'\n },\n reblog: {\n 'id': 'status.reblog',\n 'defaultMessage': 'Boost'\n },\n cannot_reblog: {\n 'id': 'status.cannot_reblog',\n 'defaultMessage': 'This post cannot be boosted'\n },\n favourite: {\n 'id': 'status.favourite',\n 'defaultMessage': 'Favourite'\n },\n muteConversation: {\n 'id': 'status.mute_conversation',\n 'defaultMessage': 'Mute conversation'\n },\n unmuteConversation: {\n 'id': 'status.unmute_conversation',\n 'defaultMessage': 'Unmute conversation'\n },\n block: {\n 'id': 'status.block',\n 'defaultMessage': 'Block @{name}'\n },\n report: {\n 'id': 'status.report',\n 'defaultMessage': 'Report @{name}'\n },\n share: {\n 'id': 'status.share',\n 'defaultMessage': 'Share'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleReplyClick = function () {\n _this.props.onReply(_this.props.status);\n }, _this.handleReblogClick = function (e) {\n _this.props.onReblog(_this.props.status, e);\n }, _this.handleFavouriteClick = function () {\n _this.props.onFavourite(_this.props.status);\n }, _this.handleDeleteClick = function () {\n _this.props.onDelete(_this.props.status);\n }, _this.handleMentionClick = function () {\n _this.props.onMention(_this.props.status.get('account'), _this.context.router.history);\n }, _this.handleConversationMuteClick = function () {\n _this.props.onMuteConversation(_this.props.status);\n }, _this.handleBlockClick = function () {\n _this.props.onBlock(_this.props.status.get('account'));\n }, _this.handleReport = function () {\n _this.props.onReport(_this.props.status);\n }, _this.handlePinClick = function () {\n _this.props.onPin(_this.props.status);\n }, _this.handleShare = function () {\n navigator.share({\n text: _this.props.status.get('search_index'),\n url: _this.props.status.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n status = _props.status,\n intl = _props.intl;\n\n\n var publicStatus = ['public', 'unlisted'].includes(status.get('visibility'));\n var mutingConversation = status.get('muted');\n\n var menu = [];\n\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"g\" /* me */] === status.getIn(['account', 'id'])) {\n menu.push({ text: intl.formatMessage(mutingConversation ? messages.unmuteConversation : messages.muteConversation), action: this.handleConversationMuteClick });\n menu.push(null);\n menu.push({ text: intl.formatMessage(messages.delete), action: this.handleDeleteClick });\n } else {\n menu.push({ text: intl.formatMessage(messages.mention, { name: status.getIn(['account', 'username']) }), action: this.handleMentionClick });\n menu.push(null);\n menu.push({ text: intl.formatMessage(messages.block, { name: status.getIn(['account', 'username']) }), action: this.handleBlockClick });\n menu.push({ text: intl.formatMessage(messages.report, { name: status.getIn(['account', 'username']) }), action: this.handleReport });\n }\n\n var shareButton = 'share' in navigator && status.get('visibility') === 'public' && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.share),\n icon: 'share-alt',\n onClick: this.handleShare\n }));\n\n var reblogIcon = 'retweet';\n if (status.get('visibility') === 'direct') reblogIcon = 'envelope';else if (status.get('visibility') === 'private') reblogIcon = 'lock';\n\n var reblog_disabled = status.get('visibility') === 'direct' || status.get('visibility') === 'private';\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.reply),\n icon: status.get('in_reply_to_id', null) === null ? 'reply' : 'reply-all',\n onClick: this.handleReplyClick\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n disabled: reblog_disabled,\n active: status.get('reblogged'),\n title: reblog_disabled ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog),\n icon: reblogIcon,\n onClick: this.handleReblogClick\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n animate: true,\n active: status.get('favourited'),\n title: intl.formatMessage(messages.favourite),\n icon: 'star',\n onClick: this.handleFavouriteClick,\n activeStyle: { color: '#ca8f04' }\n })), shareButton, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_dropdown_menu_container__[\"a\" /* default */], {\n size: 18,\n icon: 'ellipsis-h',\n items: menu,\n direction: 'left',\n title: 'More'\n })));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class2.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _temp2)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/status.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { is } from 'immutable';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { isIOS } from '../is_mobile';\nimport classNames from 'classnames';\nimport { autoPlayGif, displaySensitiveMedia } from '../initial_state';\n\nconst messages = defineMessages({\n toggle_visible: { id: 'media_gallery.toggle_visible', defaultMessage: 'Toggle visibility' },\n});\n\nclass Item extends React.PureComponent {\n\n static propTypes = {\n attachment: ImmutablePropTypes.map.isRequired,\n standalone: PropTypes.bool,\n index: PropTypes.number.isRequired,\n size: PropTypes.number.isRequired,\n onClick: PropTypes.func.isRequired,\n };\n\n static defaultProps = {\n standalone: false,\n index: 0,\n size: 1,\n };\n\n handleMouseEnter = (e) => {\n if (this.hoverToPlay()) {\n e.target.play();\n }\n }\n\n handleMouseLeave = (e) => {\n if (this.hoverToPlay()) {\n e.target.pause();\n e.target.currentTime = 0;\n }\n }\n\n hoverToPlay () {\n const { attachment } = this.props;\n return !autoPlayGif && attachment.get('type') === 'gifv';\n }\n\n handleClick = (e) => {\n const { index, onClick } = this.props;\n\n if (e.button === 0) {\n e.preventDefault();\n onClick(index);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { attachment, index, size, standalone } = this.props;\n\n let width = 50;\n let height = 100;\n let top = 'auto';\n let left = 'auto';\n let bottom = 'auto';\n let right = 'auto';\n\n if (size === 1) {\n width = 100;\n }\n\n if (size === 4 || (size === 3 && index > 0)) {\n height = 50;\n }\n\n if (size === 2) {\n if (index === 0) {\n right = '2px';\n } else {\n left = '2px';\n }\n } else if (size === 3) {\n if (index === 0) {\n right = '2px';\n } else if (index > 0) {\n left = '2px';\n }\n\n if (index === 1) {\n bottom = '2px';\n } else if (index > 1) {\n top = '2px';\n }\n } else if (size === 4) {\n if (index === 0 || index === 2) {\n right = '2px';\n }\n\n if (index === 1 || index === 3) {\n left = '2px';\n }\n\n if (index < 2) {\n bottom = '2px';\n } else {\n top = '2px';\n }\n }\n\n let thumbnail = '';\n\n if (attachment.get('type') === 'image') {\n const previewUrl = attachment.get('preview_url');\n const previewWidth = attachment.getIn(['meta', 'small', 'width']);\n\n const originalUrl = attachment.get('url');\n const originalWidth = attachment.getIn(['meta', 'original', 'width']);\n\n const hasSize = typeof originalWidth === 'number' && typeof previewWidth === 'number';\n\n const srcSet = hasSize ? `${originalUrl} ${originalWidth}w, ${previewUrl} ${previewWidth}w` : null;\n const sizes = hasSize ? `(min-width: 1025px) ${320 * (width / 100)}px, ${width}vw` : null;\n\n const focusX = attachment.getIn(['meta', 'focus', 'x']) || 0;\n const focusY = attachment.getIn(['meta', 'focus', 'y']) || 0;\n const x = ((focusX / 2) + .5) * 100;\n const y = ((focusY / -2) + .5) * 100;\n\n thumbnail = (\n <a\n className='media-gallery__item-thumbnail'\n href={attachment.get('remote_url') || originalUrl}\n onClick={this.handleClick}\n target='_blank'\n >\n <img\n src={previewUrl}\n srcSet={srcSet}\n sizes={sizes}\n alt={attachment.get('description')}\n title={attachment.get('description')}\n style={{ objectPosition: `${x}% ${y}%` }}\n />\n </a>\n );\n } else if (attachment.get('type') === 'gifv') {\n const autoPlay = !isIOS() && autoPlayGif;\n\n thumbnail = (\n <div className={classNames('media-gallery__gifv', { autoplay: autoPlay })}>\n <video\n className='media-gallery__item-gifv-thumbnail'\n aria-label={attachment.get('description')}\n role='application'\n src={attachment.get('url')}\n onClick={this.handleClick}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n autoPlay={autoPlay}\n loop\n muted\n />\n\n <span className='media-gallery__gifv__label'>GIF</span>\n </div>\n );\n }\n\n return (\n <div className={classNames('media-gallery__item', { standalone })} key={attachment.get('id')} style={{ left: left, top: top, right: right, bottom: bottom, width: `${width}%`, height: `${height}%` }}>\n {thumbnail}\n </div>\n );\n }\n\n}\n\n@injectIntl\nexport default class MediaGallery extends React.PureComponent {\n\n static propTypes = {\n sensitive: PropTypes.bool,\n standalone: PropTypes.bool,\n media: ImmutablePropTypes.list.isRequired,\n size: PropTypes.object,\n height: PropTypes.number.isRequired,\n onOpenMedia: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n static defaultProps = {\n standalone: false,\n };\n\n state = {\n visible: !this.props.sensitive || displaySensitiveMedia,\n };\n\n componentWillReceiveProps (nextProps) {\n if (!is(nextProps.media, this.props.media)) {\n this.setState({ visible: !nextProps.sensitive });\n }\n }\n\n handleOpen = () => {\n this.setState({ visible: !this.state.visible });\n }\n\n handleClick = (index) => {\n this.props.onOpenMedia(this.props.media, index);\n }\n\n handleRef = (node) => {\n if (node /*&& this.isStandaloneEligible()*/) {\n // offsetWidth triggers a layout, so only calculate when we need to\n this.setState({\n width: node.offsetWidth,\n });\n }\n }\n\n isStandaloneEligible() {\n const { media, standalone } = this.props;\n return standalone && media.size === 1 && media.getIn([0, 'meta', 'small', 'aspect']);\n }\n\n render () {\n const { media, intl, sensitive, height } = this.props;\n const { width, visible } = this.state;\n\n let children;\n\n const style = {};\n\n if (this.isStandaloneEligible()) {\n if (width) {\n style.height = width / this.props.media.getIn([0, 'meta', 'small', 'aspect']);\n }\n } else if (width) {\n style.height = width / (16/9);\n } else {\n style.height = height;\n }\n\n if (!visible) {\n let warning;\n\n if (sensitive) {\n warning = <FormattedMessage id='status.sensitive_warning' defaultMessage='Sensitive content' />;\n } else {\n warning = <FormattedMessage id='status.media_hidden' defaultMessage='Media hidden' />;\n }\n\n children = (\n <button type='button' className='media-spoiler' onClick={this.handleOpen} style={style} ref={this.handleRef}>\n <span className='media-spoiler__warning'>{warning}</span>\n <span className='media-spoiler__trigger'><FormattedMessage id='status.sensitive_toggle' defaultMessage='Click to view' /></span>\n </button>\n );\n } else {\n const size = media.take(4).size;\n\n if (this.isStandaloneEligible()) {\n children = <Item standalone onClick={this.handleClick} attachment={media.get(0)} />;\n } else {\n children = media.take(4).map((attachment, i) => <Item key={attachment.get('id')} onClick={this.handleClick} attachment={attachment} index={i} size={size} />);\n }\n }\n\n return (\n <div className='media-gallery' style={style} ref={this.handleRef}>\n <div className={classNames('spoiler-button', { 'spoiler-button--visible': visible })}>\n <IconButton title={intl.formatMessage(messages.toggle_visible)} icon={visible ? 'eye' : 'eye-slash'} overlay onClick={this.handleOpen} />\n </div>\n\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/media_gallery.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Immutable from 'immutable';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport punycode from 'punycode';\nimport classnames from 'classnames';\n\nconst IDNA_PREFIX = 'xn--';\n\nconst decodeIDNA = domain => {\n return domain\n .split('.')\n .map(part => part.indexOf(IDNA_PREFIX) === 0 ? punycode.decode(part.slice(IDNA_PREFIX.length)) : part)\n .join('.');\n};\n\nconst getHostname = url => {\n const parser = document.createElement('a');\n parser.href = url;\n return parser.hostname;\n};\n\nconst trim = (text, len) => {\n const cut = text.indexOf(' ', len);\n\n if (cut === -1) {\n return text;\n }\n\n return text.substring(0, cut) + (text.length > len ? '…' : '');\n};\n\nconst domParser = new DOMParser();\n\nconst addAutoPlay = html => {\n const document = domParser.parseFromString(html, 'text/html').documentElement;\n const iframe = document.querySelector('iframe');\n\n if (iframe) {\n if (iframe.src.indexOf('?') !== -1) {\n iframe.src += '&';\n } else {\n iframe.src += '?';\n }\n\n iframe.src += 'autoplay=1&auto_play=1';\n\n // DOM parser creates html/body elements around original HTML fragment,\n // so we need to get innerHTML out of the body and not the entire document\n return document.querySelector('body').innerHTML;\n }\n\n return html;\n};\n\nexport default class Card extends React.PureComponent {\n\n static propTypes = {\n card: ImmutablePropTypes.map,\n maxDescription: PropTypes.number,\n onOpenMedia: PropTypes.func.isRequired,\n };\n\n static defaultProps = {\n maxDescription: 50,\n };\n\n state = {\n width: 280,\n embedded: false,\n };\n\n componentWillReceiveProps (nextProps) {\n if (this.props.card !== nextProps.card) {\n this.setState({ embedded: false });\n }\n }\n\n handlePhotoClick = () => {\n const { card, onOpenMedia } = this.props;\n\n onOpenMedia(\n Immutable.fromJS([\n {\n type: 'image',\n url: card.get('embed_url'),\n description: card.get('title'),\n meta: {\n original: {\n width: card.get('width'),\n height: card.get('height'),\n },\n },\n },\n ]),\n 0\n );\n };\n\n handleEmbedClick = () => {\n const { card } = this.props;\n\n if (card.get('type') === 'photo') {\n this.handlePhotoClick();\n } else {\n this.setState({ embedded: true });\n }\n }\n\n setRef = c => {\n if (c) {\n this.setState({ width: c.offsetWidth });\n }\n }\n\n renderVideo () {\n const { card } = this.props;\n const content = { __html: addAutoPlay(card.get('html')) };\n const { width } = this.state;\n const ratio = card.get('width') / card.get('height');\n const height = card.get('width') > card.get('height') ? (width / ratio) : (width * ratio);\n\n return (\n <div\n ref={this.setRef}\n className='status-card__image status-card-video'\n dangerouslySetInnerHTML={content}\n style={{ height }}\n />\n );\n }\n\n render () {\n const { card, maxDescription } = this.props;\n const { width, embedded } = this.state;\n\n if (card === null) {\n return null;\n }\n\n const provider = card.get('provider_name').length === 0 ? decodeIDNA(getHostname(card.get('url'))) : card.get('provider_name');\n const horizontal = card.get('width') > card.get('height') && (card.get('width') + 100 >= width) || card.get('type') !== 'link';\n const className = classnames('status-card', { horizontal });\n const interactive = card.get('type') !== 'link';\n const title = interactive ? <a className='status-card__title' href={card.get('url')} title={card.get('title')} rel='noopener' target='_blank'><strong>{card.get('title')}</strong></a> : <strong className='status-card__title' title={card.get('title')}>{card.get('title')}</strong>;\n const ratio = card.get('width') / card.get('height');\n const height = card.get('width') > card.get('height') ? (width / ratio) : (width * ratio);\n\n const description = (\n <div className='status-card__content'>\n {title}\n {!horizontal && <p className='status-card__description'>{trim(card.get('description') || '', maxDescription)}</p>}\n <span className='status-card__host'>{provider}</span>\n </div>\n );\n\n let embed = '';\n let thumbnail = <div style={{ backgroundImage: `url(${card.get('image')})`, width: horizontal ? width : null, height: horizontal ? height : null }} className='status-card__image-image' />;\n\n if (interactive) {\n if (embedded) {\n embed = this.renderVideo();\n } else {\n let iconVariant = 'play';\n\n if (card.get('type') === 'photo') {\n iconVariant = 'search-plus';\n }\n\n embed = (\n <div className='status-card__image'>\n {thumbnail}\n\n <div className='status-card__actions'>\n <div>\n <button onClick={this.handleEmbedClick}><i className={`fa fa-${iconVariant}`} /></button>\n <a href={card.get('url')} target='_blank' rel='noopener'><i className='fa fa-external-link' /></a>\n </div>\n </div>\n </div>\n );\n }\n\n return (\n <div className={className} ref={this.setRef}>\n {embed}\n {description}\n </div>\n );\n } else if (card.get('image')) {\n embed = (\n <div className='status-card__image'>\n {thumbnail}\n </div>\n );\n }\n\n return (\n <a href={card.get('url')} className={className} target='_blank' rel='noopener' ref={this.setRef}>\n {embed}\n {description}\n </a>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/components/card.js","/*! https://mths.be/punycode v1.4.1 by @mathias */\n;(function(root) {\n\n\t/** Detect free variables */\n\tvar freeExports = typeof exports == 'object' && exports &&\n\t\t!exports.nodeType && exports;\n\tvar freeModule = typeof module == 'object' && module &&\n\t\t!module.nodeType && module;\n\tvar freeGlobal = typeof global == 'object' && global;\n\tif (\n\t\tfreeGlobal.global === freeGlobal ||\n\t\tfreeGlobal.window === freeGlobal ||\n\t\tfreeGlobal.self === freeGlobal\n\t) {\n\t\troot = freeGlobal;\n\t}\n\n\t/**\n\t * The `punycode` object.\n\t * @name punycode\n\t * @type Object\n\t */\n\tvar punycode,\n\n\t/** Highest positive signed 32-bit float value */\n\tmaxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1\n\n\t/** Bootstring parameters */\n\tbase = 36,\n\ttMin = 1,\n\ttMax = 26,\n\tskew = 38,\n\tdamp = 700,\n\tinitialBias = 72,\n\tinitialN = 128, // 0x80\n\tdelimiter = '-', // '\\x2D'\n\n\t/** Regular expressions */\n\tregexPunycode = /^xn--/,\n\tregexNonASCII = /[^\\x20-\\x7E]/, // unprintable ASCII chars + non-ASCII chars\n\tregexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g, // RFC 3490 separators\n\n\t/** Error messages */\n\terrors = {\n\t\t'overflow': 'Overflow: input needs wider integers to process',\n\t\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t\t'invalid-input': 'Invalid input'\n\t},\n\n\t/** Convenience shortcuts */\n\tbaseMinusTMin = base - tMin,\n\tfloor = Math.floor,\n\tstringFromCharCode = String.fromCharCode,\n\n\t/** Temporary variable */\n\tkey;\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/**\n\t * A generic error utility function.\n\t * @private\n\t * @param {String} type The error type.\n\t * @returns {Error} Throws a `RangeError` with the applicable error message.\n\t */\n\tfunction error(type) {\n\t\tthrow new RangeError(errors[type]);\n\t}\n\n\t/**\n\t * A generic `Array#map` utility function.\n\t * @private\n\t * @param {Array} array The array to iterate over.\n\t * @param {Function} callback The function that gets called for every array\n\t * item.\n\t * @returns {Array} A new array of values returned by the callback function.\n\t */\n\tfunction map(array, fn) {\n\t\tvar length = array.length;\n\t\tvar result = [];\n\t\twhile (length--) {\n\t\t\tresult[length] = fn(array[length]);\n\t\t}\n\t\treturn result;\n\t}\n\n\t/**\n\t * A simple `Array#map`-like wrapper to work with domain name strings or email\n\t * addresses.\n\t * @private\n\t * @param {String} domain The domain name or email address.\n\t * @param {Function} callback The function that gets called for every\n\t * character.\n\t * @returns {Array} A new string of characters returned by the callback\n\t * function.\n\t */\n\tfunction mapDomain(string, fn) {\n\t\tvar parts = string.split('@');\n\t\tvar result = '';\n\t\tif (parts.length > 1) {\n\t\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t\t// the local part (i.e. everything up to `@`) intact.\n\t\t\tresult = parts[0] + '@';\n\t\t\tstring = parts[1];\n\t\t}\n\t\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\t\tstring = string.replace(regexSeparators, '\\x2E');\n\t\tvar labels = string.split('.');\n\t\tvar encoded = map(labels, fn).join('.');\n\t\treturn result + encoded;\n\t}\n\n\t/**\n\t * Creates an array containing the numeric code points of each Unicode\n\t * character in the string. While JavaScript uses UCS-2 internally,\n\t * this function will convert a pair of surrogate halves (each of which\n\t * UCS-2 exposes as separate characters) into a single code point,\n\t * matching UTF-16.\n\t * @see `punycode.ucs2.encode`\n\t * @see <https://mathiasbynens.be/notes/javascript-encoding>\n\t * @memberOf punycode.ucs2\n\t * @name decode\n\t * @param {String} string The Unicode input string (UCS-2).\n\t * @returns {Array} The new array of code points.\n\t */\n\tfunction ucs2decode(string) {\n\t\tvar output = [],\n\t\t counter = 0,\n\t\t length = string.length,\n\t\t value,\n\t\t extra;\n\t\twhile (counter < length) {\n\t\t\tvalue = string.charCodeAt(counter++);\n\t\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t\t// high surrogate, and there is a next character\n\t\t\t\textra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) { // low surrogate\n\t\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t\t} else {\n\t\t\t\t\t// unmatched surrogate; only append this code unit, in case the next\n\t\t\t\t\t// code unit is the high surrogate of a surrogate pair\n\t\t\t\t\toutput.push(value);\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toutput.push(value);\n\t\t\t}\n\t\t}\n\t\treturn output;\n\t}\n\n\t/**\n\t * Creates a string based on an array of numeric code points.\n\t * @see `punycode.ucs2.decode`\n\t * @memberOf punycode.ucs2\n\t * @name encode\n\t * @param {Array} codePoints The array of numeric code points.\n\t * @returns {String} The new Unicode string (UCS-2).\n\t */\n\tfunction ucs2encode(array) {\n\t\treturn map(array, function(value) {\n\t\t\tvar output = '';\n\t\t\tif (value > 0xFFFF) {\n\t\t\t\tvalue -= 0x10000;\n\t\t\t\toutput += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);\n\t\t\t\tvalue = 0xDC00 | value & 0x3FF;\n\t\t\t}\n\t\t\toutput += stringFromCharCode(value);\n\t\t\treturn output;\n\t\t}).join('');\n\t}\n\n\t/**\n\t * Converts a basic code point into a digit/integer.\n\t * @see `digitToBasic()`\n\t * @private\n\t * @param {Number} codePoint The basic numeric code point value.\n\t * @returns {Number} The numeric value of a basic code point (for use in\n\t * representing integers) in the range `0` to `base - 1`, or `base` if\n\t * the code point does not represent a value.\n\t */\n\tfunction basicToDigit(codePoint) {\n\t\tif (codePoint - 48 < 10) {\n\t\t\treturn codePoint - 22;\n\t\t}\n\t\tif (codePoint - 65 < 26) {\n\t\t\treturn codePoint - 65;\n\t\t}\n\t\tif (codePoint - 97 < 26) {\n\t\t\treturn codePoint - 97;\n\t\t}\n\t\treturn base;\n\t}\n\n\t/**\n\t * Converts a digit/integer into a basic code point.\n\t * @see `basicToDigit()`\n\t * @private\n\t * @param {Number} digit The numeric value of a basic code point.\n\t * @returns {Number} The basic code point whose value (when used for\n\t * representing integers) is `digit`, which needs to be in the range\n\t * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n\t * used; else, the lowercase form is used. The behavior is undefined\n\t * if `flag` is non-zero and `digit` has no uppercase form.\n\t */\n\tfunction digitToBasic(digit, flag) {\n\t\t// 0..25 map to ASCII a..z or A..Z\n\t\t// 26..35 map to ASCII 0..9\n\t\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n\t}\n\n\t/**\n\t * Bias adaptation function as per section 3.4 of RFC 3492.\n\t * https://tools.ietf.org/html/rfc3492#section-3.4\n\t * @private\n\t */\n\tfunction adapt(delta, numPoints, firstTime) {\n\t\tvar k = 0;\n\t\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\t\tdelta += floor(delta / numPoints);\n\t\tfor (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\t\tdelta = floor(delta / baseMinusTMin);\n\t\t}\n\t\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n\t}\n\n\t/**\n\t * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n\t * symbols.\n\t * @memberOf punycode\n\t * @param {String} input The Punycode string of ASCII-only symbols.\n\t * @returns {String} The resulting string of Unicode symbols.\n\t */\n\tfunction decode(input) {\n\t\t// Don't use UCS-2\n\t\tvar output = [],\n\t\t inputLength = input.length,\n\t\t out,\n\t\t i = 0,\n\t\t n = initialN,\n\t\t bias = initialBias,\n\t\t basic,\n\t\t j,\n\t\t index,\n\t\t oldi,\n\t\t w,\n\t\t k,\n\t\t digit,\n\t\t t,\n\t\t /** Cached calculation results */\n\t\t baseMinusT;\n\n\t\t// Handle the basic code points: let `basic` be the number of input code\n\t\t// points before the last delimiter, or `0` if there is none, then copy\n\t\t// the first basic code points to the output.\n\n\t\tbasic = input.lastIndexOf(delimiter);\n\t\tif (basic < 0) {\n\t\t\tbasic = 0;\n\t\t}\n\n\t\tfor (j = 0; j < basic; ++j) {\n\t\t\t// if it's not a basic code point\n\t\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\t\terror('not-basic');\n\t\t\t}\n\t\t\toutput.push(input.charCodeAt(j));\n\t\t}\n\n\t\t// Main decoding loop: start just after the last delimiter if any basic code\n\t\t// points were copied; start at the beginning otherwise.\n\n\t\tfor (index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) {\n\n\t\t\t// `index` is the index of the next character to be consumed.\n\t\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t\t// which gets added to `i`. The overflow checking is easier\n\t\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t\t// value at the end to obtain `delta`.\n\t\t\tfor (oldi = i, w = 1, k = base; /* no condition */; k += base) {\n\n\t\t\t\tif (index >= inputLength) {\n\t\t\t\t\terror('invalid-input');\n\t\t\t\t}\n\n\t\t\t\tdigit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\ti += digit * w;\n\t\t\t\tt = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\n\t\t\t\tif (digit < t) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tbaseMinusT = base - t;\n\t\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tw *= baseMinusT;\n\n\t\t\t}\n\n\t\t\tout = output.length + 1;\n\t\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t\t// incrementing `n` each time, so we'll fix that now:\n\t\t\tif (floor(i / out) > maxInt - n) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tn += floor(i / out);\n\t\t\ti %= out;\n\n\t\t\t// Insert `n` at position `i` of the output\n\t\t\toutput.splice(i++, 0, n);\n\n\t\t}\n\n\t\treturn ucs2encode(output);\n\t}\n\n\t/**\n\t * Converts a string of Unicode symbols (e.g. a domain name label) to a\n\t * Punycode string of ASCII-only symbols.\n\t * @memberOf punycode\n\t * @param {String} input The string of Unicode symbols.\n\t * @returns {String} The resulting Punycode string of ASCII-only symbols.\n\t */\n\tfunction encode(input) {\n\t\tvar n,\n\t\t delta,\n\t\t handledCPCount,\n\t\t basicLength,\n\t\t bias,\n\t\t j,\n\t\t m,\n\t\t q,\n\t\t k,\n\t\t t,\n\t\t currentValue,\n\t\t output = [],\n\t\t /** `inputLength` will hold the number of code points in `input`. */\n\t\t inputLength,\n\t\t /** Cached calculation results */\n\t\t handledCPCountPlusOne,\n\t\t baseMinusT,\n\t\t qMinusT;\n\n\t\t// Convert the input in UCS-2 to Unicode\n\t\tinput = ucs2decode(input);\n\n\t\t// Cache the length\n\t\tinputLength = input.length;\n\n\t\t// Initialize the state\n\t\tn = initialN;\n\t\tdelta = 0;\n\t\tbias = initialBias;\n\n\t\t// Handle the basic code points\n\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\tcurrentValue = input[j];\n\t\t\tif (currentValue < 0x80) {\n\t\t\t\toutput.push(stringFromCharCode(currentValue));\n\t\t\t}\n\t\t}\n\n\t\thandledCPCount = basicLength = output.length;\n\n\t\t// `handledCPCount` is the number of code points that have been handled;\n\t\t// `basicLength` is the number of basic code points.\n\n\t\t// Finish the basic string - if it is not empty - with a delimiter\n\t\tif (basicLength) {\n\t\t\toutput.push(delimiter);\n\t\t}\n\n\t\t// Main encoding loop:\n\t\twhile (handledCPCount < inputLength) {\n\n\t\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t\t// larger one:\n\t\t\tfor (m = maxInt, j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\t\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\t\tm = currentValue;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Increase `delta` enough to advance the decoder's <n,i> state to <m,0>,\n\t\t\t// but guard against overflow\n\t\t\thandledCPCountPlusOne = handledCPCount + 1;\n\t\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\t\tn = m;\n\n\t\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\n\t\t\t\tif (currentValue < n && ++delta > maxInt) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tif (currentValue == n) {\n\t\t\t\t\t// Represent delta as a generalized variable-length integer\n\t\t\t\t\tfor (q = delta, k = base; /* no condition */; k += base) {\n\t\t\t\t\t\tt = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\t\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tqMinusT = q - t;\n\t\t\t\t\t\tbaseMinusT = base - t;\n\t\t\t\t\t\toutput.push(\n\t\t\t\t\t\t\tstringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0))\n\t\t\t\t\t\t);\n\t\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t\t}\n\n\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\t\tdelta = 0;\n\t\t\t\t\t++handledCPCount;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t++delta;\n\t\t\t++n;\n\n\t\t}\n\t\treturn output.join('');\n\t}\n\n\t/**\n\t * Converts a Punycode string representing a domain name or an email address\n\t * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n\t * it doesn't matter if you call it on a string that has already been\n\t * converted to Unicode.\n\t * @memberOf punycode\n\t * @param {String} input The Punycoded domain name or email address to\n\t * convert to Unicode.\n\t * @returns {String} The Unicode representation of the given Punycode\n\t * string.\n\t */\n\tfunction toUnicode(input) {\n\t\treturn mapDomain(input, function(string) {\n\t\t\treturn regexPunycode.test(string)\n\t\t\t\t? decode(string.slice(4).toLowerCase())\n\t\t\t\t: string;\n\t\t});\n\t}\n\n\t/**\n\t * Converts a Unicode string representing a domain name or an email address to\n\t * Punycode. Only the non-ASCII parts of the domain name will be converted,\n\t * i.e. it doesn't matter if you call it with a domain that's already in\n\t * ASCII.\n\t * @memberOf punycode\n\t * @param {String} input The domain name or email address to convert, as a\n\t * Unicode string.\n\t * @returns {String} The Punycode representation of the given domain name or\n\t * email address.\n\t */\n\tfunction toASCII(input) {\n\t\treturn mapDomain(input, function(string) {\n\t\t\treturn regexNonASCII.test(string)\n\t\t\t\t? 'xn--' + encode(string)\n\t\t\t\t: string;\n\t\t});\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/** Define the public API */\n\tpunycode = {\n\t\t/**\n\t\t * A string representing the current Punycode.js version number.\n\t\t * @memberOf punycode\n\t\t * @type String\n\t\t */\n\t\t'version': '1.4.1',\n\t\t/**\n\t\t * An object of methods to convert from JavaScript's internal character\n\t\t * representation (UCS-2) to Unicode code points, and back.\n\t\t * @see <https://mathiasbynens.be/notes/javascript-encoding>\n\t\t * @memberOf punycode\n\t\t * @type Object\n\t\t */\n\t\t'ucs2': {\n\t\t\t'decode': ucs2decode,\n\t\t\t'encode': ucs2encode\n\t\t},\n\t\t'decode': decode,\n\t\t'encode': encode,\n\t\t'toASCII': toASCII,\n\t\t'toUnicode': toUnicode\n\t};\n\n\t/** Expose `punycode` */\n\t// Some AMD build optimizers, like r.js, check for specific condition patterns\n\t// like the following:\n\tif (\n\t\ttypeof define == 'function' &&\n\t\ttypeof define.amd == 'object' &&\n\t\tdefine.amd\n\t) {\n\t\tdefine('punycode', function() {\n\t\t\treturn punycode;\n\t\t});\n\t} else if (freeExports && freeModule) {\n\t\tif (module.exports == freeExports) {\n\t\t\t// in Node.js, io.js, or RingoJS v0.8.0+\n\t\t\tfreeModule.exports = punycode;\n\t\t} else {\n\t\t\t// in Narwhal or RingoJS v0.7.0-\n\t\t\tfor (key in punycode) {\n\t\t\t\tpunycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// in Rhino or a web browser\n\t\troot.punycode = punycode;\n\t}\n\n}(this));\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/node-libs-browser/node_modules/punycode/punycode.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { fetchStatus } from '../../actions/statuses';\nimport MissingIndicator from '../../components/missing_indicator';\nimport DetailedStatus from './components/detailed_status';\nimport ActionBar from './components/action_bar';\nimport Column from '../ui/components/column';\nimport {\n favourite,\n unfavourite,\n reblog,\n unreblog,\n} from '../../actions/interactions';\nimport {\n replyCompose,\n mentionCompose,\n} from '../../actions/compose';\nimport { blockAccount } from '../../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../../actions/statuses';\nimport { initMuteModal } from '../../actions/mutes';\nimport { initReport } from '../../actions/reports';\nimport { makeGetStatus } from '../../selectors';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ColumnHeader from '../../components/column_header';\nimport StatusContainer from '../../containers/status_container';\nimport { openModal } from '../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { HotKeys } from 'react-hotkeys';\nimport { boostModal, deleteModal } from '../../initial_state';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../../features/ui/util/fullscreen';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n revealAll: { id: 'status.show_more_all', defaultMessage: 'Show more for all' },\n hideAll: { id: 'status.show_less_all', defaultMessage: 'Show less for all' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.params.statusId),\n ancestorsIds: state.getIn(['contexts', 'ancestors', props.params.statusId]),\n descendantsIds: state.getIn(['contexts', 'descendants', props.params.statusId]),\n });\n\n return mapStateToProps;\n};\n\n@injectIntl\n@connect(makeMapStateToProps)\nexport default class Status extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n status: ImmutablePropTypes.map,\n ancestorsIds: ImmutablePropTypes.list,\n descendantsIds: ImmutablePropTypes.list,\n intl: PropTypes.object.isRequired,\n };\n\n state = {\n fullscreen: false,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchStatus(this.props.params.statusId));\n }\n\n componentDidMount () {\n attachFullscreenListener(this.onFullScreenChange);\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this._scrolledIntoView = false;\n this.props.dispatch(fetchStatus(nextProps.params.statusId));\n }\n }\n\n handleFavouriteClick = (status) => {\n if (status.get('favourited')) {\n this.props.dispatch(unfavourite(status));\n } else {\n this.props.dispatch(favourite(status));\n }\n }\n\n handleReplyClick = (status) => {\n this.props.dispatch(replyCompose(status, this.context.router.history));\n }\n\n handleModalReblog = (status) => {\n this.props.dispatch(reblog(status));\n }\n\n handleReblogClick = (status, e) => {\n if (status.get('reblogged')) {\n this.props.dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.handleModalReblog(status);\n } else {\n this.props.dispatch(openModal('BOOST', { status, onReblog: this.handleModalReblog }));\n }\n }\n }\n\n handleDeleteClick = (status) => {\n const { dispatch, intl } = this.props;\n\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n }\n\n handleMentionClick = (account, router) => {\n this.props.dispatch(mentionCompose(account, router));\n }\n\n handleOpenMedia = (media, index) => {\n this.props.dispatch(openModal('MEDIA', { media, index }));\n }\n\n handleOpenVideo = (media, time) => {\n this.props.dispatch(openModal('VIDEO', { media, time }));\n }\n\n handleMuteClick = (account) => {\n this.props.dispatch(initMuteModal(account));\n }\n\n handleConversationMuteClick = (status) => {\n if (status.get('muted')) {\n this.props.dispatch(unmuteStatus(status.get('id')));\n } else {\n this.props.dispatch(muteStatus(status.get('id')));\n }\n }\n\n handleToggleHidden = (status) => {\n if (status.get('hidden')) {\n this.props.dispatch(revealStatus(status.get('id')));\n } else {\n this.props.dispatch(hideStatus(status.get('id')));\n }\n }\n\n handleToggleAll = () => {\n const { status, ancestorsIds, descendantsIds } = this.props;\n const statusIds = [status.get('id')].concat(ancestorsIds.toJS(), descendantsIds.toJS());\n\n if (status.get('hidden')) {\n this.props.dispatch(revealStatus(statusIds));\n } else {\n this.props.dispatch(hideStatus(statusIds));\n }\n }\n\n handleBlockClick = (account) => {\n const { dispatch, intl } = this.props;\n\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n\n handleReport = (status) => {\n this.props.dispatch(initReport(status.get('account'), status));\n }\n\n handleHotkeyMoveUp = () => {\n this.handleMoveUp(this.props.status.get('id'));\n }\n\n handleHotkeyMoveDown = () => {\n this.handleMoveDown(this.props.status.get('id'));\n }\n\n handleHotkeyReply = e => {\n e.preventDefault();\n this.handleReplyClick(this.props.status);\n }\n\n handleHotkeyFavourite = () => {\n this.handleFavouriteClick(this.props.status);\n }\n\n handleHotkeyBoost = () => {\n this.handleReblogClick(this.props.status);\n }\n\n handleHotkeyMention = e => {\n e.preventDefault();\n this.handleMentionClick(this.props.status);\n }\n\n handleHotkeyOpenProfile = () => {\n this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`);\n }\n\n handleMoveUp = id => {\n const { status, ancestorsIds, descendantsIds } = this.props;\n\n if (id === status.get('id')) {\n this._selectChild(ancestorsIds.size - 1);\n } else {\n let index = ancestorsIds.indexOf(id);\n\n if (index === -1) {\n index = descendantsIds.indexOf(id);\n this._selectChild(ancestorsIds.size + index);\n } else {\n this._selectChild(index - 1);\n }\n }\n }\n\n handleMoveDown = id => {\n const { status, ancestorsIds, descendantsIds } = this.props;\n\n if (id === status.get('id')) {\n this._selectChild(ancestorsIds.size + 1);\n } else {\n let index = ancestorsIds.indexOf(id);\n\n if (index === -1) {\n index = descendantsIds.indexOf(id);\n this._selectChild(ancestorsIds.size + index + 2);\n } else {\n this._selectChild(index + 1);\n }\n }\n }\n\n _selectChild (index) {\n const element = this.node.querySelectorAll('.focusable')[index];\n\n if (element) {\n element.focus();\n }\n }\n\n renderChildren (list) {\n return list.map(id => (\n <StatusContainer\n key={id}\n id={id}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ));\n }\n\n setRef = c => {\n this.node = c;\n }\n\n componentDidUpdate () {\n if (this._scrolledIntoView) {\n return;\n }\n\n const { status, ancestorsIds } = this.props;\n\n if (status && ancestorsIds && ancestorsIds.size > 0) {\n const element = this.node.querySelectorAll('.focusable')[ancestorsIds.size - 1];\n\n element.scrollIntoView(true);\n this._scrolledIntoView = true;\n }\n }\n\n componentWillUnmount () {\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n render () {\n let ancestors, descendants;\n const { status, ancestorsIds, descendantsIds, intl } = this.props;\n const { fullscreen } = this.state;\n\n if (status === null) {\n return (\n <Column>\n <ColumnBackButton />\n <MissingIndicator />\n </Column>\n );\n }\n\n if (ancestorsIds && ancestorsIds.size > 0) {\n ancestors = <div>{this.renderChildren(ancestorsIds)}</div>;\n }\n\n if (descendantsIds && descendantsIds.size > 0) {\n descendants = <div>{this.renderChildren(descendantsIds)}</div>;\n }\n\n const handlers = {\n moveUp: this.handleHotkeyMoveUp,\n moveDown: this.handleHotkeyMoveDown,\n reply: this.handleHotkeyReply,\n favourite: this.handleHotkeyFavourite,\n boost: this.handleHotkeyBoost,\n mention: this.handleHotkeyMention,\n openProfile: this.handleHotkeyOpenProfile,\n };\n\n return (\n <Column>\n <ColumnHeader\n showBackButton\n extraButton={(\n <button className='column-header__button' title={intl.formatMessage(status.get('hidden') ? messages.revealAll : messages.hideAll)} aria-label={intl.formatMessage(status.get('hidden') ? messages.revealAll : messages.hideAll)} onClick={this.handleToggleAll} aria-pressed={status.get('hidden') ? 'false' : 'true'}><i className={`fa fa-${status.get('hidden') ? 'eye-slash' : 'eye'}`} /></button>\n )}\n />\n\n <ScrollContainer scrollKey='thread'>\n <div className={classNames('scrollable', 'detailed-status__wrapper', { fullscreen })} ref={this.setRef}>\n {ancestors}\n\n <HotKeys handlers={handlers}>\n <div className='focusable' tabIndex='0'>\n <DetailedStatus\n status={status}\n onOpenVideo={this.handleOpenVideo}\n onOpenMedia={this.handleOpenMedia}\n onToggleHidden={this.handleToggleHidden}\n />\n\n <ActionBar\n status={status}\n onReply={this.handleReplyClick}\n onFavourite={this.handleFavouriteClick}\n onReblog={this.handleReblogClick}\n onDelete={this.handleDeleteClick}\n onMention={this.handleMentionClick}\n onMute={this.handleMuteClick}\n onMuteConversation={this.handleConversationMuteClick}\n onBlock={this.handleBlockClick}\n onReport={this.handleReport}\n />\n </div>\n </HotKeys>\n\n {descendants}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport StatusContent from '../../../components/status_content';\nimport MediaGallery from '../../../components/media_gallery';\nimport AttachmentList from '../../../components/attachment_list';\nimport { Link } from 'react-router-dom';\nimport { FormattedDate, FormattedNumber } from 'react-intl';\nimport CardContainer from '../containers/card_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Video from '../../video';\n\nexport default class DetailedStatus extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n status: ImmutablePropTypes.map.isRequired,\n onOpenMedia: PropTypes.func.isRequired,\n onOpenVideo: PropTypes.func.isRequired,\n onToggleHidden: PropTypes.func.isRequired,\n };\n\n handleAccountClick = (e) => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`);\n }\n\n e.stopPropagation();\n }\n\n handleOpenVideo = startTime => {\n this.props.onOpenVideo(this.props.status.getIn(['media_attachments', 0]), startTime);\n }\n\n handleExpandedToggle = () => {\n this.props.onToggleHidden(this.props.status);\n }\n\n render () {\n const status = this.props.status.get('reblog') ? this.props.status.get('reblog') : this.props.status;\n\n let media = '';\n let applicationLink = '';\n let reblogLink = '';\n let reblogIcon = 'retweet';\n\n if (status.get('media_attachments').size > 0) {\n if (status.get('media_attachments').some(item => item.get('type') === 'unknown')) {\n media = <AttachmentList media={status.get('media_attachments')} />;\n } else if (status.getIn(['media_attachments', 0, 'type']) === 'video') {\n const video = status.getIn(['media_attachments', 0]);\n\n media = (\n <Video\n preview={video.get('preview_url')}\n src={video.get('url')}\n width={300}\n height={150}\n inline\n onOpenVideo={this.handleOpenVideo}\n sensitive={status.get('sensitive')}\n />\n );\n } else {\n media = (\n <MediaGallery\n standalone\n sensitive={status.get('sensitive')}\n media={status.get('media_attachments')}\n height={300}\n onOpenMedia={this.props.onOpenMedia}\n />\n );\n }\n } else if (status.get('spoiler_text').length === 0) {\n media = <CardContainer onOpenMedia={this.props.onOpenMedia} statusId={status.get('id')} />;\n }\n\n if (status.get('application')) {\n applicationLink = <span> · <a className='detailed-status__application' href={status.getIn(['application', 'website'])} target='_blank' rel='noopener'>{status.getIn(['application', 'name'])}</a></span>;\n }\n\n if (status.get('visibility') === 'direct') {\n reblogIcon = 'envelope';\n } else if (status.get('visibility') === 'private') {\n reblogIcon = 'lock';\n }\n\n if (status.get('visibility') === 'private') {\n reblogLink = <i className={`fa fa-${reblogIcon}`} />;\n } else {\n reblogLink = (<Link to={`/statuses/${status.get('id')}/reblogs`} className='detailed-status__link'>\n <i className={`fa fa-${reblogIcon}`} />\n <span className='detailed-status__reblogs'>\n <FormattedNumber value={status.get('reblogs_count')} />\n </span>\n </Link>);\n }\n\n return (\n <div className='detailed-status'>\n <a href={status.getIn(['account', 'url'])} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><Avatar account={status.get('account')} size={48} /></div>\n <DisplayName account={status.get('account')} />\n </a>\n\n <StatusContent status={status} expanded={!status.get('hidden')} onExpandedToggle={this.handleExpandedToggle} />\n\n {media}\n\n <div className='detailed-status__meta'>\n <a className='detailed-status__datetime' href={status.get('url')} target='_blank' rel='noopener'>\n <FormattedDate value={new Date(status.get('created_at'))} hour12={false} year='numeric' month='short' day='2-digit' hour='2-digit' minute='2-digit' />\n </a>{applicationLink} · {reblogLink} · <Link to={`/statuses/${status.get('id')}/favourites`} className='detailed-status__link'>\n <i className='fa fa-star' />\n <span className='detailed-status__favorites'>\n <FormattedNumber value={status.get('favourites_count')} />\n </span>\n </Link>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/components/detailed_status.js","import { connect } from 'react-redux';\nimport Card from '../components/card';\n\nconst mapStateToProps = (state, { statusId }) => ({\n card: state.getIn(['cards', statusId], null),\n});\n\nexport default connect(mapStateToProps)(Card);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/containers/card_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport IconButton from '../../../components/icon_button';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n delete: { id: 'status.delete', defaultMessage: 'Delete' },\n mention: { id: 'status.mention', defaultMessage: 'Mention @{name}' },\n reply: { id: 'status.reply', defaultMessage: 'Reply' },\n reblog: { id: 'status.reblog', defaultMessage: 'Boost' },\n cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' },\n favourite: { id: 'status.favourite', defaultMessage: 'Favourite' },\n muteConversation: { id: 'status.mute_conversation', defaultMessage: 'Mute conversation' },\n unmuteConversation: { id: 'status.unmute_conversation', defaultMessage: 'Unmute conversation' },\n block: { id: 'status.block', defaultMessage: 'Block @{name}' },\n report: { id: 'status.report', defaultMessage: 'Report @{name}' },\n share: { id: 'status.share', defaultMessage: 'Share' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n status: ImmutablePropTypes.map.isRequired,\n onReply: PropTypes.func.isRequired,\n onReblog: PropTypes.func.isRequired,\n onFavourite: PropTypes.func.isRequired,\n onDelete: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onMuteConversation: PropTypes.func,\n onBlock: PropTypes.func,\n onReport: PropTypes.func,\n onPin: PropTypes.func,\n intl: PropTypes.object.isRequired,\n };\n\n handleReplyClick = () => {\n this.props.onReply(this.props.status);\n }\n\n handleReblogClick = (e) => {\n this.props.onReblog(this.props.status, e);\n }\n\n handleFavouriteClick = () => {\n this.props.onFavourite(this.props.status);\n }\n\n handleDeleteClick = () => {\n this.props.onDelete(this.props.status);\n }\n\n handleMentionClick = () => {\n this.props.onMention(this.props.status.get('account'), this.context.router.history);\n }\n\n handleConversationMuteClick = () => {\n this.props.onMuteConversation(this.props.status);\n }\n\n handleBlockClick = () => {\n this.props.onBlock(this.props.status.get('account'));\n }\n\n handleReport = () => {\n this.props.onReport(this.props.status);\n }\n\n handlePinClick = () => {\n this.props.onPin(this.props.status);\n }\n\n handleShare = () => {\n navigator.share({\n text: this.props.status.get('search_index'),\n url: this.props.status.get('url'),\n });\n }\n\n render () {\n const { status, intl } = this.props;\n\n const publicStatus = ['public', 'unlisted'].includes(status.get('visibility'));\n const mutingConversation = status.get('muted');\n\n let menu = [];\n\n if (me === status.getIn(['account', 'id'])) {\n menu.push({ text: intl.formatMessage(mutingConversation ? messages.unmuteConversation : messages.muteConversation), action: this.handleConversationMuteClick });\n menu.push(null);\n menu.push({ text: intl.formatMessage(messages.delete), action: this.handleDeleteClick });\n } else {\n menu.push({ text: intl.formatMessage(messages.mention, { name: status.getIn(['account', 'username']) }), action: this.handleMentionClick });\n menu.push(null);\n menu.push({ text: intl.formatMessage(messages.block, { name: status.getIn(['account', 'username']) }), action: this.handleBlockClick });\n menu.push({ text: intl.formatMessage(messages.report, { name: status.getIn(['account', 'username']) }), action: this.handleReport });\n }\n\n const shareButton = ('share' in navigator) && status.get('visibility') === 'public' && (\n <div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.share)} icon='share-alt' onClick={this.handleShare} /></div>\n );\n\n let reblogIcon = 'retweet';\n if (status.get('visibility') === 'direct') reblogIcon = 'envelope';\n else if (status.get('visibility') === 'private') reblogIcon = 'lock';\n\n let reblog_disabled = (status.get('visibility') === 'direct' || status.get('visibility') === 'private');\n\n return (\n <div className='detailed-status__action-bar'>\n <div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.reply)} icon={status.get('in_reply_to_id', null) === null ? 'reply' : 'reply-all'} onClick={this.handleReplyClick} /></div>\n <div className='detailed-status__button'><IconButton disabled={reblog_disabled} active={status.get('reblogged')} title={reblog_disabled ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog)} icon={reblogIcon} onClick={this.handleReblogClick} /></div>\n <div className='detailed-status__button'><IconButton animate active={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='star' onClick={this.handleFavouriteClick} activeStyle={{ color: '#ca8f04' }} /></div>\n {shareButton}\n\n <div className='detailed-status__action-bar-dropdown'>\n <DropdownMenuContainer size={18} icon='ellipsis-h' items={menu} direction='left' title='More' />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/components/action_bar.js"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"sources":["webpack:///features/status.js","webpack:///./app/javascript/mastodon/features/ui/components/column_header.js","webpack:///./app/javascript/mastodon/components/media_gallery.js","webpack:///./app/javascript/mastodon/actions/mutes.js","webpack:///./app/javascript/mastodon/features/ui/components/column.js","webpack:///./app/javascript/mastodon/actions/reports.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/components/column_back_button.js","webpack:///./app/javascript/mastodon/features/status/components/card.js","webpack:///./node_modules/node-libs-browser/node_modules/punycode/punycode.js","webpack:///./app/javascript/mastodon/features/status/index.js","webpack:///./app/javascript/mastodon/components/missing_indicator.js","webpack:///./app/javascript/mastodon/features/status/components/detailed_status.js","webpack:///./app/javascript/mastodon/features/status/containers/card_container.js","webpack:///./app/javascript/mastodon/features/status/components/action_bar.js"],"names":["webpackJsonp","150","module","__webpack_exports__","__webpack_require__","d","ColumnHeader","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5_classnames__","__WEBPACK_IMPORTED_MODULE_5_classnames___default","_React$PureComponent","_temp","_this","_ret","this","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","props","onClick","prototype","render","_props","icon","type","active","columnHeaderId","iconElement","className","id","a","PureComponent","154","Object","defineProperty","value","MediaGallery","_class","_temp2","_class2","_class3","_temp4","__WEBPACK_IMPORTED_MODULE_5_immutable__","__WEBPACK_IMPORTED_MODULE_6__icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8__is_mobile__","__WEBPACK_IMPORTED_MODULE_9_classnames__","__WEBPACK_IMPORTED_MODULE_9_classnames___default","__WEBPACK_IMPORTED_MODULE_10__initial_state__","messages","toggle_visible","defaultMessage","Item","handleMouseEnter","e","hoverToPlay","target","play","handleMouseLeave","pause","currentTime","_this$props","index","button","preventDefault","stopPropagation","attachment","get","size","standalone","width","height","top","left","bottom","right","thumbnail","previewUrl","previewWidth","getIn","originalUrl","originalWidth","hasSize","srcSet","sizes","focusX","focusY","x","y","href","src","alt","title","style","objectPosition","autoPlay","autoplay","aria-label","role","onMouseEnter","onMouseLeave","loop","muted","defaultProps","_React$PureComponent2","_temp3","_this2","_ret2","_len2","_key2","state","visible","sensitive","handleOpen","setState","onOpenMedia","media","handleRef","node","offsetWidth","componentWillReceiveProps","nextProps","isStandaloneEligible","_props2","_this3","_props3","intl","_state","children","take","map","i","warning","createElement","ref","spoiler-button--visible","formatMessage","overlay","282","initMuteModal","account","dispatch","MUTES_INIT_MODAL","__WEBPACK_IMPORTED_MODULE_3__modal__","283","Column","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__","__WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_5_react___default","__WEBPACK_IMPORTED_MODULE_6__column_header__","__WEBPACK_IMPORTED_MODULE_7__scroll__","handleHeaderClick","scrollable","querySelector","_interruptScrollAnimation","handleScroll","setRef","c","scrollTop","heading","hideHeadingOnMobile","showHeading","window","innerWidth","replace","header","aria-labelledby","onScroll","284","initReport","status","REPORT_INIT","__WEBPACK_IMPORTED_MODULE_1__modal__","285","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","deleteConfirm","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","mapDispatchToProps","_ref","onReply","router","onModalReblog","onReblog","shiftKey","onFavourite","onDelete","message","confirm","onConfirm","onMention","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","286","ColumnBackButton","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","history","context","push","goBack","contextTypes","object","332","Card","__WEBPACK_IMPORTED_MODULE_5_immutable___default","__WEBPACK_IMPORTED_MODULE_6_punycode__","__WEBPACK_IMPORTED_MODULE_6_punycode___default","__WEBPACK_IMPORTED_MODULE_7_classnames__","__WEBPACK_IMPORTED_MODULE_7_classnames___default","decodeIDNA","domain","split","part","indexOf","decode","slice","join","getHostname","url","parser","document","hostname","trim","text","len","cut","substring","domParser","DOMParser","addAutoPlay","html","parseFromString","documentElement","iframe","innerHTML","embedded","handlePhotoClick","card","fromJS","description","meta","original","handleEmbedClick","renderVideo","content","__html","ratio","dangerouslySetInnerHTML","maxDescription","provider","horizontal","interactive","rel","embed","backgroundImage","iconVariant","333","exports","global","__WEBPACK_AMD_DEFINE_RESULT__","root","error","RangeError","errors","array","fn","result","mapDomain","string","parts","regexSeparators","ucs2decode","extra","output","counter","charCodeAt","ucs2encode","stringFromCharCode","basicToDigit","codePoint","base","digitToBasic","digit","flag","adapt","delta","numPoints","firstTime","k","floor","damp","baseMinusTMin","tMax","skew","input","out","basic","j","oldi","w","t","baseMinusT","inputLength","initialN","bias","initialBias","lastIndexOf","delimiter","maxInt","tMin","splice","encode","handledCPCount","basicLength","m","q","currentValue","handledCPCountPlusOne","qMinusT","toUnicode","regexPunycode","test","toLowerCase","toASCII","regexNonASCII","freeGlobal","nodeType","punycode","overflow","not-basic","invalid-input","Math","String","fromCharCode","version","ucs2","undefined","810","Status","_dec","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9__actions_statuses__","__WEBPACK_IMPORTED_MODULE_10__components_missing_indicator__","__WEBPACK_IMPORTED_MODULE_11__components_detailed_status__","__WEBPACK_IMPORTED_MODULE_12__components_action_bar__","__WEBPACK_IMPORTED_MODULE_13__ui_components_column__","__WEBPACK_IMPORTED_MODULE_14__actions_interactions__","__WEBPACK_IMPORTED_MODULE_15__actions_compose__","__WEBPACK_IMPORTED_MODULE_16__actions_accounts__","__WEBPACK_IMPORTED_MODULE_17__actions_mutes__","__WEBPACK_IMPORTED_MODULE_18__actions_reports__","__WEBPACK_IMPORTED_MODULE_19__selectors__","__WEBPACK_IMPORTED_MODULE_20_react_router_scroll_4__","__WEBPACK_IMPORTED_MODULE_21__components_column_back_button__","__WEBPACK_IMPORTED_MODULE_22__components_column_header__","__WEBPACK_IMPORTED_MODULE_23__containers_status_container__","__WEBPACK_IMPORTED_MODULE_24__actions_modal__","__WEBPACK_IMPORTED_MODULE_25_react_intl__","__WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_27_react_hotkeys__","__WEBPACK_IMPORTED_MODULE_28__initial_state__","__WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__","revealAll","hideAll","params","statusId","ancestorsIds","descendantsIds","_ImmutablePureCompone","fullscreen","handleFavouriteClick","handleReplyClick","handleModalReblog","handleReblogClick","handleDeleteClick","handleMentionClick","handleOpenMedia","handleOpenVideo","handleMuteClick","handleConversationMuteClick","handleToggleHidden","handleToggleAll","_this$props2","statusIds","toJS","handleBlockClick","_this$props3","handleReport","handleHotkeyMoveUp","handleMoveUp","handleHotkeyMoveDown","handleMoveDown","handleHotkeyReply","handleHotkeyFavourite","handleHotkeyBoost","handleHotkeyMention","handleHotkeyOpenProfile","_this$props4","_selectChild","_this$props5","onFullScreenChange","componentWillMount","componentDidMount","_scrolledIntoView","element","querySelectorAll","focus","renderChildren","list","onMoveUp","onMoveDown","componentDidUpdate","scrollIntoView","componentWillUnmount","ancestors","descendants","handlers","moveUp","moveDown","reply","favourite","boost","mention","openProfile","showBackButton","extraButton","aria-pressed","scrollKey","tabIndex","propTypes","isRequired","func","843","__WEBPACK_IMPORTED_MODULE_2_react_intl__","MissingIndicator","tagName","962","DetailedStatus","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__components_avatar__","__WEBPACK_IMPORTED_MODULE_8__components_display_name__","__WEBPACK_IMPORTED_MODULE_9__components_status_content__","__WEBPACK_IMPORTED_MODULE_10__components_media_gallery__","__WEBPACK_IMPORTED_MODULE_11__components_attachment_list__","__WEBPACK_IMPORTED_MODULE_12_react_router_dom__","__WEBPACK_IMPORTED_MODULE_13_react_intl__","__WEBPACK_IMPORTED_MODULE_14__containers_card_container__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_16__video__","handleAccountClick","startTime","handleExpandedToggle","applicationLink","reblogLink","reblogIcon","some","item","video","preview","inline","to","expanded","onExpandedToggle","Date","hour12","year","month","day","hour","minute","963","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__components_card__","mapStateToProps","964","ActionBar","__WEBPACK_IMPORTED_MODULE_6__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_8_react_intl__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","delete","reblog","cannot_reblog","muteConversation","unmuteConversation","block","share","handlePinClick","onPin","handleShare","navigator","mutingConversation","includes","menu","action","shareButton","reblog_disabled","disabled","animate","activeStyle","color","items","direction"],"mappings":"AAAAA,cAAc,GAAG,KAEXC,IACA,SAAUC,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOG,IAC9E,IAAIC,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpEE,EAA2Cd,EAAoB,IAC/De,EAAmDf,EAAoBK,EAAES,GCd7EZ,EDuBF,SAAUc,GAG3B,QAASd,KACP,GAAIe,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMlB,EAEnF,KAAK,GAAImB,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,ECzBrNY,YAAc,WACZZ,EAAKa,MAAMC,WDwBJb,EAEJF,EAAQR,IAAwFS,EAAOC,GA0B5G,MAvCAR,KAAuET,EAAcc,GAgBrFd,EAAa+B,UC1BbC,OD0BgC,WC1BtB,GAAAC,GACuCf,KAAKW,MAA5CK,EADAD,EACAC,KAAMC,EADNF,EACME,KAAMC,EADZH,EACYG,OAAQC,EADpBJ,EACoBI,eACxBC,EAAc,EAMlB,OAJIJ,KACFI,EAAApC,IAAAoC,KAAAC,UAAA,eAA2CL,EAA3C,0BAGFhC,IAAA,MAAAqC,UACiB1B,IAAW,iBAAmBuB,WAD/CI,GAC8DH,GAAkB,UADhF,GAAAnC,IAAA,UAAA4B,QAEqBZ,KAAKU,iBAF1B,GAGOU,EACAH,KDqCFnC,GC/DiCW,EAAA8B,EAAMC,gBDsE1CC,IACA,SAAU/C,EAAQC,EAAqBC,GAE7C,YACA8C,QAAOC,eAAehD,EAAqB,cAAgBiD,OAAO,IACnChD,EAAoBC,EAAEF,EAAqB,UAAW,WAAa,MAAOkD,IACpF,IAuBjBC,GAAQC,EAAQC,EAASC,EAASC,EAvBbnD,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpE2C,EAA0CvD,EAAoB,GAE9DwD,GADkDxD,EAAoBK,EAAEkD,GAC3BvD,EAAoB,KACjEyD,EAA2CzD,EAAoB,GAC/D0D,EAA2C1D,EAAoB,IAC/D2D,EAA2C3D,EAAoB,IAC/D4D,EAAmD5D,EAAoBK,EAAEsD,GACzEE,EAAgD7D,EAAoB,IEvFvF8D,EAAWhB,OAAAW,EAAA,IACfM,gBAAArB,GAAA,+BAAAsB,eAAA,uBAGIC,GF2GMd,EAASD,EAAS,SAAUlC,GAGtC,QAASiD,KACP,GAAIhD,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAM6C,EAEnF,KAAK,GAAI5C,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,EEvGrNgD,iBAAmB,SAACC,GACdjD,EAAKkD,eACPD,EAAEE,OAAOC,QFyGRpD,EErGLqD,iBAAmB,SAACJ,GACdjD,EAAKkD,gBACPD,EAAEE,OAAOG,QACTL,EAAEE,OAAOI,YAAc,IFuGtBvD,EE9FLY,YAAc,SAACqC,GAAM,GAAAO,GACQxD,EAAKa,MAAxB4C,EADWD,EACXC,MAAO3C,EADI0C,EACJ1C,OAEE,KAAbmC,EAAES,SACJT,EAAEU,iBACF7C,EAAQ2C,IAGVR,EAAEW,mBF6EK3D,EAqBJF,EAAQR,IAAwFS,EAAOC,GA6H5G,MA7JAR,KAAuEsD,EAAMjD,GAmC7EiD,EAAKhC,UElHLmC,YFkH6B,WElHd,GACLW,GAAe3D,KAAKW,MAApBgD,UACR,QAAQlB,EAAA,GAA0C,SAA3BkB,EAAWC,IAAI,SFsHxCf,EAAKhC,UExGLC,OFwGwB,WExGd,GAAAC,GACwCf,KAAKW,MAA7CgD,EADA5C,EACA4C,WAAYJ,EADZxC,EACYwC,MAAOM,EADnB9C,EACmB8C,KAAMC,EADzB/C,EACyB+C,WAE7BC,EAAS,GACTC,EAAS,IACTC,EAAS,OACTC,EAAS,OACTC,EAAS,OACTC,EAAS,MAEA,KAATP,IACFE,EAAQ,MAGG,IAATF,GAAwB,IAATA,GAAcN,EAAQ,KACvCS,EAAS,IAGE,IAATH,EACY,IAAVN,EACFa,EAAQ,MAERF,EAAO,MAES,IAATL,GACK,IAAVN,EACFa,EAAQ,MACCb,EAAQ,IACjBW,EAAO,OAGK,IAAVX,EACFY,EAAS,MACAZ,EAAQ,IACjBU,EAAM,QAEU,IAATJ,IACK,IAAVN,GAAyB,IAAVA,IACjBa,EAAQ,OAGI,IAAVb,GAAyB,IAAVA,IACjBW,EAAO,OAGLX,EAAQ,EACVY,EAAS,MAETF,EAAM,MAIV,IAAII,GAAY,EAEhB,IAA+B,UAA3BV,EAAWC,IAAI,QAAqB,CACtC,GAAMU,GAAeX,EAAWC,IAAI,eAC9BW,EAAeZ,EAAWa,OAAO,OAAQ,QAAS,UAElDC,EAAiBd,EAAWC,IAAI,OAChCc,EAAiBf,EAAWa,OAAO,OAAQ,WAAY,UAEvDG,EAAmC,gBAAlBD,IAAsD,gBAAjBH,GAEtDK,EAASD,EAAaF,EAAb,IAA4BC,EAA5B,MAA+CJ,EAA/C,IAA6DC,EAA7D,IAA+E,KACxFM,EAASF,yBAAwCZ,EAAQ,IAAf,IAAjC,OAA2DA,EAA3D,KAAuE,KAEhFe,EAASnB,EAAWa,OAAO,OAAQ,QAAS,OAAS,EACrDO,EAASpB,EAAWa,OAAO,OAAQ,QAAS,OAAS,EACrDQ,EAAgC,KAArBF,EAAU,EAAK,IAC1BG,EAAgC,KAArBF,GAAU,EAAK,GAEhCV,GAAArF,IAAAqF,KAAAhD,UAEc,gCAFd6D,KAGUvB,EAAWC,IAAI,eAAiBa,EAH1C7D,QAIaZ,KAAKU,YAJlBuC,OAKW,cALX,GAAAjE,IAAA,OAAAmG,IAQWb,EARXM,OAScA,EATdC,MAUaA,EAVbO,IAWWzB,EAAWC,IAAI,eAX1ByB,MAYa1B,EAAWC,IAAI,eAZ5B0B,OAaeC,eAAmBP,EAAnB,KAAyBC,EAAzB,YAIV,IAA+B,SAA3BtB,EAAWC,IAAI,QAAoB,CAC5C,GAAM4B,IAAY9D,OAAAY,EAAA,MAAWG,EAAA,CAE7B4B,GAAArF,IAAAqF,OAAAhD,UACkBmB,IAAW,uBAAyBiD,SAAUD,SADhE,GAAAxG,IAAA,SAAAqC,UAGgB,qCAHhBqE,aAIkB/B,EAAWC,IAAI,eAJjC+B,KAKW,cALXR,IAMWxB,EAAWC,IAAI,OAN1BhD,QAOeZ,KAAKU,YAPpBkF,aAQoB5F,KAAK8C,iBARzB+C,aASoB7F,KAAKmD,iBATzBqC,SAUgBA,EAVhBM,MAAA,EAAAC,OAAA,IAAA/G,IAAA,QAAAqC,UAeoB,kCAfpB,WAoBF,MAAArC,KAAA,OAAAqC,UACkBmB,IAAW,uBAAyBsB,eADtDwB,OACyGpB,KAAMA,EAAMD,IAAKA,EAAKG,MAAOA,EAAOD,OAAQA,EAAQJ,MAAUA,EAAV,IAAoBC,OAAWA,EAAX,MAAvGL,EAAWC,IAAI,MACpFS,IF2GAxB,GEzQUpD,EAAA8B,EAAMC,eF0QuCM,EEhQvDkE,cACLlC,YAAY,EACZP,MAAO,EACPM,KAAM,GFiQP9B,GExGkBF,EADpBH,OAAAW,EAAA,IF2GoGH,EAASD,EAAU,SAAUgE,GAGhI,QAASpE,KACP,GAAIqE,GAAQC,EAAQC,CAEpBjH,KAA6Ea,KAAM6B,EAEnF,KAAK,GAAIwE,GAAQnG,UAAUC,OAAQC,EAAOC,MAAMgG,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IAChFlG,EAAKkG,GAASpG,UAAUoG,EAG1B,OAAgBJ,GAAUC,EAAS9G,IAAwFW,KAAMiG,EAAsB1F,KAAKC,MAAMyF,GAAwBjG,MAAMS,OAAOL,KAAkB+F,EEtG3NI,OACEC,SAAUL,EAAKxF,MAAM8F,WAAahE,EAAA,GFuG/B0D,EE9FLO,WAAa,WACXP,EAAKQ,UAAWH,SAAUL,EAAKI,MAAMC,WF+FlCL,EE5FLzF,YAAc,SAAC6C,GACb4C,EAAKxF,MAAMiG,YAAYT,EAAKxF,MAAMkG,MAAOtD,IF6FtC4C,EE1FLW,UAAY,SAACC,GACPA,GAEFZ,EAAKQ,UACH5C,MAAOgD,EAAKC,eFgFTZ,EAaJF,EAAS7G,IAAwF8G,EAAQC,GA4G9G,MApIA7G,KAAuEsC,EAAcoE,GA2BrFpE,EAAahB,UElHboG,0BFkHmD,SElHxBC,GACpBxF,OAAAS,EAAA,IAAG+E,EAAUL,MAAO7G,KAAKW,MAAMkG,QAClC7G,KAAK2G,UAAWH,SAAUU,EAAUT,aFsHxC5E,EAAahB,UEjGbsG,qBFiG8C,WEjGvB,GAAAC,GACSpH,KAAKW,MAA3BkG,EADaO,EACbP,KACR,OAFqBO,GACNtD,YACqB,IAAf+C,EAAMhD,MAAcgD,EAAMrC,OAAO,EAAG,OAAQ,QAAS,YFuG5E3C,EAAahB,UEpGbC,OFoGgC,WEpGtB,GAAAuG,GAAArH,KAAAsH,EACmCtH,KAAKW,MAAxCkG,EADAS,EACAT,MAAOU,EADPD,EACOC,KAAMd,EADba,EACab,UAAWzC,EADxBsD,EACwBtD,OADxBwD,EAEmBxH,KAAKuG,MAAxBxC,EAFAyD,EAEAzD,MAAOyC,EAFPgB,EAEOhB,QAEXiB,SAEEnC,IAYN,IAVItF,KAAKmH,uBACHpD,IACFuB,EAAMtB,OAASD,EAAQ/D,KAAKW,MAAMkG,MAAMrC,OAAO,EAAG,OAAQ,QAAS,YAGrEc,EAAMtB,OADGD,EACMA,GAAS,GAAG,GAEZC,EAGZwC,EAeE,CACL,GAAM3C,GAAOgD,EAAMa,KAAK,GAAG7D,IAGzB4D,GADEzH,KAAKmH,uBACPnI,IAAY6D,GAAZiB,YAAA,EAAAlD,QAAqCZ,KAAKU,YAA1CiD,WAAmEkD,EAAMjD,IAAI,KAElEiD,EAAMa,KAAK,GAAGC,IAAI,SAAChE,EAAYiE,GAAb,MAAA5I,KAAoB6D,GAApBjC,QAA6DyG,EAAK3G,YAAlEiD,WAA2FA,EAA3FJ,MAA8GqE,EAA9G/D,KAAuHA,GAAzFF,EAAWC,IAAI,aArBhE,CACZ,GAAIiE,SAGFA,GADEpB,EACFzH,IAAWqD,EAAA,GAAXf,GAA+B,2BAA/BsB,eAAyE,sBAEzE5D,IAAWqD,EAAA,GAAXf,GAA+B,sBAA/BsB,eAAoE,iBAGtE6E,EACEhI,EAAA8B,EAAAuG,cAAA,UAAQ7G,KAAK,SAASI,UAAU,gBAAgBT,QAASZ,KAAK0G,WAAYpB,MAAOA,EAAOyC,IAAK/H,KAAK8G,WAAlG9H,IAAA,QAAAqC,UACkB,8BADlB,GAC4CwG,GAD5C7I,IAAA,QAAAqC,UAEkB,8BAFlB,GAAArC,IAE4CqD,EAAA,GAF5Cf,GAEgE,0BAFhEsB,eAEyG,oBAa7G,MACEnD,GAAA8B,EAAAuG,cAAA,OAAKzG,UAAU,gBAAgBiE,MAAOA,EAAOyC,IAAK/H,KAAK8G,WAAvD9H,IAAA,OAAAqC,UACkBmB,IAAW,kBAAoBwF,0BAA2BxB,SAD5E,GAAAxH,IAEKoD,EAAA,GAFLiD,MAEuBkC,EAAKU,cAAcvF,EAASC,gBAFnD3B,KAE0EwF,EAAU,MAAQ,YAF5F0B,SAAA,EAAAtH,QAE0HZ,KAAK0G,cAG5He,IF8IA5F,GE/OiCpC,EAAA8B,EAAMC,eFgPgBS,EEpOvD+D,cACLlC,YAAY,GF6F0E9B,EAwIvFE,KAAYF,GAMTmG,IACA,SAAUzJ,EAAQC,EAAqBC,GAE7C,YGrVO,SAASwJ,GAAcC,GAC5B,MAAO,UAAAC,GACLA,GACErH,KAAMsH,EACNF,YAGFC,EAAS5G,OAAA8G,EAAA,GAAU,UH+VU7J,EAAuB,EAAIyJ,CAEvC,IAGII,IAHqC5J,EAAoB,IACfA,EAAoB,IACpBA,EAAoB,IACvBA,EAAoB,KGxbvE2J,EAAmB,oBHkjB1BE,IACA,SAAU/J,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAO+J,IAC9E,IAAI3J,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FqJ,EAAgD/J,EAAoB,IACpEgK,EAAwDhK,EAAoBK,EAAE0J,GAC9EE,EAAsCjK,EAAoB,GAC1DkK,EAA8ClK,EAAoBK,EAAE4J,GACpEE,EAA+CnK,EAAoB,KACnEoK,EAAwCpK,EAAoB,IAC5D0D,EAA2C1D,EAAoB,II3kBnE8J,EJulBR,SAAU9I,GAGrB,QAAS8I,KACP,GAAI7I,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAM0I,EAEnF,KAAK,GAAIzI,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,EIzlBrNmJ,kBAAoB,WAClB,GAAMC,GAAapJ,EAAKiH,KAAKoC,cAAc,cAEtCD,KAILpJ,EAAKsJ,0BAA4B1H,OAAAsH,EAAA,GAAUE,KJ0lBxCpJ,EI5kBLuJ,aAAeT,IAAS,eACwB,KAAnC9I,EAAKsJ,2BACdtJ,EAAKsJ,6BAEN,KJ4kBQtJ,EI1kBXwJ,OAAS,SAACC,GACRzJ,EAAKiH,KAAOwC,GJ6jBLxJ,EAcJF,EAAQR,IAAwFS,EAAOC,GA8C5G,MAvEAR,KAAuEmJ,EAAQ9I,GA4B/E8I,EAAO7H,UIhmBP2I,UJgmB6B,WI/lB3B,GAAMN,GAAalJ,KAAK+G,KAAKoC,cAAc,cAEtCD,KAILlJ,KAAKoJ,0BAA4B1H,OAAAsH,EAAA,GAAUE,KJmmB7CR,EAAO7H,UIrlBPC,OJqlB0B,WIrlBhB,GAAAC,GACyDf,KAAKW,MAA9D8I,EADA1I,EACA0I,QAASzI,EADTD,EACSC,KAAMyG,EADf1G,EACe0G,SAAUvG,EADzBH,EACyBG,OAAQwI,EADjC3I,EACiC2I,oBAEnCC,EAAcF,KAAaC,GAAwBA,IAAwBhI,OAAAY,EAAA,GAASsH,OAAOC,aAE3F1I,EAAiBwI,GAAeF,EAAQK,QAAQ,KAAM,KACtDC,EAASJ,GAAA3K,IACZ+J,EAAA,GADY/H,KACOA,EADPE,OACqBA,EADrBD,KACmCwI,EADnC7I,QACqDZ,KAAKiJ,kBAD1D9H,eAC6FA,GAE5G,OACE2H,GAAAvH,EAAAuG,cAAA,OACEC,IAAK/H,KAAKsJ,OACV3D,KAAK,SACLqE,kBAAiB7I,EACjBE,UAAU,SACV4I,SAAUjK,KAAKqJ,cAEdU,EACAtC,IJomBAiB,GI/pB2BI,EAAAvH,EAAMC,gBJsqBpC0I,IACA,SAAUxL,EAAQC,EAAqBC,GAE7C,YKlqBO,SAASuL,GAAW9B,EAAS+B,GAClC,MAAO,UAAA9B,GACLA,GACErH,KAAMoJ,EACNhC,UACA+B,WAGF9B,EAAS5G,OAAA4I,EAAA,GAAU,YLmqBU3L,EAAuB,EAAIwL,CASvC,IACIG,IADqC1L,EAAoB,IAClBA,EAAoB,KKhsBvEyL,EAAgB,eL+xBvBE,IACA,SAAU7L,EAAQC,EAAqBC,GAE7C,YACqB,IAAIG,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFyL,EAAsC5L,EAAoB,GAE1D6L,GAD8C7L,EAAoBK,EAAEuL,GACxB5L,EAAoB,IAChE8L,EAAmD9L,EAAoB,KACvE+L,EAA2C/L,EAAoB,IAC/DgM,EAAiDhM,EAAoB,IACrEiM,EAAsDjM,EAAoB,IAC1EkM,EAAkDlM,EAAoB,IACtEmM,EAAkDnM,EAAoB,IACtEoM,EAA+CpM,EAAoB,KACnEqM,EAAkDrM,EAAoB,KACtEsM,EAAgDtM,EAAoB,IACpEuM,EAA4CvM,EAAoB,GAChEwM,EAAgDxM,EAAoB,IMzxBvF8D,EAAWhB,OAAAyJ,EAAA,IACfE,eAAA/J,GAAA,+BAAAsB,eAAA,UACA0I,eAAAhK,GAAA,+BAAAsB,eAAA,gDACA2I,cAAAjK,GAAA,8BAAAsB,eAAA,WAGI4I,EAAsB,WAC1B,GAAMC,GAAY/J,OAAAiJ,EAAA,IAMlB,OAJwB,UAACpE,EAAO5F,GAAR,OACtByJ,OAAQqB,EAAUlF,EAAO5F,EAAMW,OAM7BoK,EAAqB,SAACpD,EAADqD,GAAA,GAAapE,GAAboE,EAAapE,IAAb,QAEzBqE,QAFkD,SAEzCxB,EAAQyB,GACfvD,EAAS5G,OAAAkJ,EAAA,GAAaR,EAAQyB,KAGhCC,cANkD,SAMnC1B,GACb9B,EAAS5G,OAAAmJ,EAAA,GAAOT,KAGlB2B,SAVkD,SAUxC3B,EAAQrH,GACZqH,EAAOxG,IAAI,aACb0E,EAAS5G,OAAAmJ,EAAA,GAAST,IAEdrH,EAAEiJ,WAAaZ,EAAA,EACjBpL,KAAK8L,cAAc1B,GAEnB9B,EAAS5G,OAAAwJ,EAAA,GAAU,SAAWd,SAAQ2B,SAAU/L,KAAK8L,kBAK3DG,YAtBkD,SAsBrC7B,GAET9B,EADE8B,EAAOxG,IAAI,cACJlC,OAAAmJ,EAAA,GAAYT,GAEZ1I,OAAAmJ,EAAA,GAAUT,KAIvB8B,SA9BkD,SA8BxC9B,GAIN9B,EAHG8C,EAAA,EAGM1J,OAAAwJ,EAAA,GAAU,WACjBiB,QAAS5E,EAAKU,cAAcvF,EAAS4I,eACrCc,QAAS7E,EAAKU,cAAcvF,EAAS2I,eACrCgB,UAAW,iBAAM/D,GAAS5G,OAAAqJ,EAAA,GAAaX,EAAOxG,IAAI,WAL3ClC,OAAAqJ,EAAA,GAAaX,EAAOxG,IAAI,SAUrC0I,UA1CkD,SA0CvCjE,EAASwD,GAClBvD,EAAS5G,OAAAkJ,EAAA,GAAevC,EAASwD,KAGnCjF,YA9CkD,SA8CrCC,EAAOtD,GAClB+E,EAAS5G,OAAAwJ,EAAA,GAAU,SAAWrE,QAAOtD,YAGvCgJ,YAlDkD,SAkDrC1F,EAAO2F,GAClBlE,EAAS5G,OAAAwJ,EAAA,GAAU,SAAWrE,QAAO2F,WAGvCC,QAtDkD,SAsDzCpE,GACPC,EAAS5G,OAAAwJ,EAAA,GAAU,WACjBiB,QAAAnN,IAAUmM,EAAA,GAAV7J,GAA8B,8BAA9BsB,eAA2E,yCAA3E8J,QAA8HC,KAAA3N,IAAA2N,uBAAgBtE,EAAQzE,IAAI,YAC1JwI,QAAS7E,EAAKU,cAAcvF,EAAS6I,cACrCc,UAAW,iBAAM/D,GAAS5G,OAAAoJ,EAAA,GAAazC,EAAQzE,IAAI,aAIvDgJ,SA9DkD,SA8DxCxC,GACR9B,EAAS5G,OAAAuJ,EAAA,GAAWb,EAAOxG,IAAI,WAAYwG,KAG7CyC,OAlEkD,SAkE1CxE,GACNC,EAAS5G,OAAAsJ,EAAA,GAAc3C,KAGzByE,mBAtEkD,SAsE9B1C,GAEhB9B,EADE8B,EAAOxG,IAAI,SACJlC,OAAAqJ,EAAA,GAAaX,EAAOxG,IAAI,OAExBlC,OAAAqJ,EAAA,GAAWX,EAAOxG,IAAI,SAInCmJ,eA9EkD,SA8ElC3C,GAEZ9B,EADE8B,EAAOxG,IAAI,UACJlC,OAAAqJ,EAAA,GAAaX,EAAOxG,IAAI,OAExBlC,OAAAqJ,EAAA,GAAWX,EAAOxG,IAAI,UAMrCjF,GAAA,EAAe+C,OAAAyJ,EAAA,GAAWzJ,OAAA+I,EAAA,SAAQe,EAAqBE,GAAoBhB,EAAA,KNqzBrEsC,IACA,SAAUtO,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOsO,IAC9E,IAkBjBnL,GAAQC,EAlBahD,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpE0N,EAA2CtO,EAAoB,GAC/DuO,EAA2CvO,EAAoB,GAC/DwO,EAAmDxO,EAAoBK,EAAEkO,GOt8B7EF,GPk9BGlL,EAASD,EAAS,SAAUlC,GAGlD,QAASqN,KACP,GAAIpN,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMiN,EAEnF,KAAK,GAAIhN,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,EOx9BrNY,YAAc,WACRkJ,OAAOyD,SAAqC,IAA1BzD,OAAOyD,QAAQlN,OACnCL,EAAKwN,QAAQzB,OAAOwB,QAAQE,KAAK,KAEjCzN,EAAKwN,QAAQzB,OAAOwB,QAAQG,UPo9BvBzN,EAMJF,EAAQR,IAAwFS,EAAOC,GAe5G,MAhCAR,KAAuE0N,EAAkBrN,GAoBzFqN,EAAiBpM,UOz9BjBC,OPy9BoC,WOx9BlC,MAAA9B,KAAA,UAAA4B,QACmBZ,KAAKU,YADxBW,UAC+C,0BAD/C,GAAArC,IAAA,KAAAqC,UAEiB,sDAFjBrC,IAGKkO,EAAA,GAHL5L,GAGyB,2BAHzBsB,eAGmE,WPi+B9DqK,GOn/BqCxN,EAAA8B,EAAMC,ePo/BYM,EOl/BvD2L,cACL5B,OAAQuB,EAAA7L,EAAUmM,QPm/BnB3L,IAKG4L,IACA,SAAUjP,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOiP,IAC9E,IAqBjB9L,GAAQC,EArBahD,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpE2C,EAA0CvD,EAAoB,GAC9DiP,EAAkDjP,EAAoBK,EAAEkD,GACxE2L,EAAyClP,EAAoB,KAC7DmP,EAAiDnP,EAAoBK,EAAE6O,GACvEE,EAA2CpP,EAAoB,IAC/DqP,EAAmDrP,EAAoBK,EAAE+O,GQ1gC5FE,EAAa,SAAAC,GACjB,MAAOA,GACJC,MAAM,KACNzG,IAAI,SAAA0G,GAAA,MAAsC,KAA9BA,EAAKC,QALF,QAK+BP,EAAAxM,EAASgN,OAAOF,EAAKG,MALpD,OAKsErO,SAAWkO,IAChGI,KAAK,MAGJC,EAAc,SAAAC,GAClB,GAAMC,GAASC,SAAS/G,cAAc,IAEtC,OADA8G,GAAO1J,KAAOyJ,EACPC,EAAOE,UAGVC,EAAO,SAACC,EAAMC,GAClB,GAAMC,GAAMF,EAAKV,QAAQ,IAAKW,EAE9B,QAAa,IAATC,EACKF,EAGFA,EAAKG,UAAU,EAAGD,IAAQF,EAAK7O,OAAS8O,EAAM,IAAM,KAGvDG,EAAY,GAAIC,WAEhBC,EAAc,SAAAC,GAClB,GAAMV,GAAWO,EAAUI,gBAAgBD,EAAM,aAAaE,gBACxDC,EAASb,EAAS1F,cAAc,SAEtC,OAAIuG,KAC+B,IAA7BA,EAAOvK,IAAImJ,QAAQ,KACrBoB,EAAOvK,KAAO,IAEduK,EAAOvK,KAAO,IAGhBuK,EAAOvK,KAAO,yBAIP0J,EAAS1F,cAAc,QAAQwG,WAGjCJ,GAGY3B,GR0hCT7L,EAASD,EAAS,SAAUlC,GAGtC,QAASgO,KACP,GAAI/N,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAM4N,EAEnF,KAAK,GAAI3N,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,EQ1hCrNyG,OACExC,MAAO,IACP6L,UAAU,GR2hCP9P,EQlhCL+P,iBAAmB,WAAM,GAAAvM,GACOxD,EAAKa,MAA3BmP,EADexM,EACfwM,MAERlJ,EAHuBtD,EACTsD,aAGZiH,EAAAtM,EAAUwO,SAEN9O,KAAM,QACN0N,IAAKmB,EAAKlM,IAAI,aACdoM,YAAaF,EAAKlM,IAAI,SACtBqM,MACEC,UACEnM,MAAO+L,EAAKlM,IAAI,SAChBI,OAAQ8L,EAAKlM,IAAI,eAKzB,IRkhCC9D,EQ9gCLqQ,iBAAmB,WAGQ,UAFRrQ,EAAKa,MAAdmP,KAEClM,IAAI,QACX9D,EAAK+P,mBAEL/P,EAAK6G,UAAWiJ,UAAU,KRihCzB9P,EQ7gCLwJ,OAAS,SAAAC,GACHA,GACFzJ,EAAK6G,UAAW5C,MAAOwF,EAAEvC,eR8+BpBjH,EAiCJF,EAAQR,IAAwFS,EAAOC,GAqH5G,MAjKAR,KAAuEqO,EAAMhO,GA+C7EgO,EAAK/M,UQzjCLoG,0BRyjC2C,SQzjChBC,GACrBlH,KAAKW,MAAMmP,OAAS5I,EAAU4I,MAChC9P,KAAK2G,UAAWiJ,UAAU,KR6jC9BhC,EAAK/M,UQphCLuP,YRohC6B,WQphCd,GACLN,GAAU9P,KAAKW,MAAfmP,KACFO,GAAcC,OAAQhB,EAAYQ,EAAKlM,IAAI,UACzCG,EAAU/D,KAAKuG,MAAfxC,MACFwM,EAAYT,EAAKlM,IAAI,SAAWkM,EAAKlM,IAAI,UACzCI,EAAY8L,EAAKlM,IAAI,SAAWkM,EAAKlM,IAAI,UAAaG,EAAQwM,EAAUxM,EAAQwM,CAEtF,OACE9Q,GAAA8B,EAAAuG,cAAA,OACEC,IAAK/H,KAAKsJ,OACVjI,UAAU,uCACVmP,wBAAyBH,EACzB/K,OAAStB,aRyhCf4J,EAAK/M,UQphCLC,ORohCwB,WQphCd,GAAAC,GACyBf,KAAKW,MAA9BmP,EADA/O,EACA+O,KAAMW,EADN1P,EACM0P,eADNjJ,EAEyBxH,KAAKuG,MAA9BxC,EAFAyD,EAEAzD,MAAO6L,EAFPpI,EAEOoI,QAEf,IAAa,OAATE,EACF,MAAO,KAGT,IAAMY,GAAmD,IAArCZ,EAAKlM,IAAI,iBAAiBzD,OAAe+N,EAAWQ,EAAYoB,EAAKlM,IAAI,SAAWkM,EAAKlM,IAAI,iBAC3G+M,EAAcb,EAAKlM,IAAI,SAAWkM,EAAKlM,IAAI,WAAckM,EAAKlM,IAAI,SAAW,KAAOG,GAA+B,SAArB+L,EAAKlM,IAAI,QACvGvC,EAAc4M,IAAW,eAAiB0C,eAC1CC,EAAmC,SAArBd,EAAKlM,IAAI,QACvByB,EAAcuL,EAAA5R,IAAA4R,KAAAvP,UAA2B,qBAA3B6D,KAAsD4K,EAAKlM,IAAI,OAA/DyB,MAA8EyK,EAAKlM,IAAI,SAAvFiN,IAAqG,WAArG5N,OAAuH,cAAvH,GAAAjE,IAAA,mBAAyI8Q,EAAKlM,IAAI,WAAlJ5E,IAAA,UAAAqC,UAA6L,qBAA7LgE,MAAyNyK,EAAKlM,IAAI,cAAlO,GAA6OkM,EAAKlM,IAAI,UACpQ2M,EAAcT,EAAKlM,IAAI,SAAWkM,EAAKlM,IAAI,UAC3CI,EAAc8L,EAAKlM,IAAI,SAAWkM,EAAKlM,IAAI,UAAaG,EAAQwM,EAAUxM,EAAQwM,EAElFP,EAAAhR,IAAAgR,OAAA3O,UACW,4BADX,GAEDgE,GACCsL,GAAD3R,IAAA,KAAAqC,UAA4B,gCAA5B,GAAwD0N,EAAKe,EAAKlM,IAAI,gBAAkB,GAAI6M,IAH3FzR,IAAA,QAAAqC,UAIc,yBAJd,GAImCqP,IAIrCI,EAAY,GACZzM,EAAArF,IAAAqF,OAAAiB,OAA0ByL,uBAAwBjB,EAAKlM,IAAI,SAAjC,IAA8CG,MAAO4M,EAAa5M,EAAQ,KAAMC,OAAQ2M,EAAa3M,EAAS,MAAxI3C,UAA0J,4BAE9J,IAAIuP,EAAa,CACf,GAAIhB,EACFkB,EAAQ9Q,KAAKoQ,kBACR,CACL,GAAIY,GAAc,MAEO,WAArBlB,EAAKlM,IAAI,UACXoN,EAAc,eAGhBF,EAAA9R,IAAA8R,OAAAzP,UACiB,0BADjB,GAEKgD,EAFLrF,IAAA,OAAAqC,UAImB,4BAJnB,GAAArC,IAAA,gBAAAA,IAAA,UAAA4B,QAMyBZ,KAAKmQ,sBAN9B,GAAAnR,IAAA,KAAAqC,UAAA,SAMuE2P,KANvEhS,IAAA,KAAAkG,KAOiB4K,EAAKlM,IAAI,OAP1BX,OAOyC,SAPzC4N,IAOsD,gBAPtD,GAAA7R,IAAA,KAAAqC,UAO8E,4BAOhF,MACE5B,GAAA8B,EAAAuG,cAAA,OAAKzG,UAAWA,EAAW0G,IAAK/H,KAAKsJ,QAClCwH,EACAd,GAWP,MARWF,GAAKlM,IAAI,WAClBkN,EAAA9R,IAAA8R,OAAAzP,UACiB,0BADjB,GAEKgD,IAML5E,EAAA8B,EAAAuG,cAAA,KAAG5C,KAAM4K,EAAKlM,IAAI,OAAQvC,UAAWA,EAAW4B,OAAO,SAAS4N,IAAI,WAAW9I,IAAK/H,KAAKsJ,QACtFwH,EACAd,IR2iCApC,GQ5rCyBnO,EAAA8B,EAAMC,eR6rCwBM,EQrrCvDkE,cACLyK,eAAgB,IRsrCjB1O,IAKGkP,IACA,SAAUvS,EAAQwS,EAAStS,IAEL,SAASF,EAAQyS,GS9vC7C,GAAAC,IACE,SAASC,GAgEV,QAASC,GAAMrQ,GACd,KAAM,IAAIsQ,YAAWC,EAAOvQ,IAW7B,QAAS0G,GAAI8J,EAAOC,GAGnB,IAFA,GAAIvR,GAASsR,EAAMtR,OACfwR,KACGxR,KACNwR,EAAOxR,GAAUuR,EAAGD,EAAMtR,GAE3B,OAAOwR,GAaR,QAASC,GAAUC,EAAQH,GAC1B,GAAII,GAAQD,EAAOzD,MAAM,KACrBuD,EAAS,EAWb,OAVIG,GAAM3R,OAAS,IAGlBwR,EAASG,EAAM,GAAK,IACpBD,EAASC,EAAM,IAGhBD,EAASA,EAAO/H,QAAQiI,EAAiB,KAGlCJ,EADOhK,EADDkK,EAAOzD,MAAM,KACAsD,GAAIjD,KAAK,KAiBpC,QAASuD,GAAWH,GAMnB,IALA,GAGIjQ,GACAqQ,EAJAC,KACAC,EAAU,EACVhS,EAAS0R,EAAO1R,OAGbgS,EAAUhS,GAChByB,EAAQiQ,EAAOO,WAAWD,KACtBvQ,GAAS,OAAUA,GAAS,OAAUuQ,EAAUhS,GAEnD8R,EAAQJ,EAAOO,WAAWD,KACF,QAAX,MAARF,GACJC,EAAO3E,OAAe,KAAR3L,IAAkB,KAAe,KAARqQ,GAAiB,QAIxDC,EAAO3E,KAAK3L,GACZuQ,MAGDD,EAAO3E,KAAK3L,EAGd,OAAOsQ,GAWR,QAASG,GAAWZ,GACnB,MAAO9J,GAAI8J,EAAO,SAAS7P,GAC1B,GAAIsQ,GAAS,EAOb,OANItQ,GAAQ,QACXA,GAAS,MACTsQ,GAAUI,EAAmB1Q,IAAU,GAAK,KAAQ,OACpDA,EAAQ,MAAiB,KAARA,GAElBsQ,GAAUI,EAAmB1Q,KAE3B6M,KAAK,IAYT,QAAS8D,GAAaC,GACrB,MAAIA,GAAY,GAAK,GACbA,EAAY,GAEhBA,EAAY,GAAK,GACbA,EAAY,GAEhBA,EAAY,GAAK,GACbA,EAAY,GAEbC,EAcR,QAASC,GAAaC,EAAOC,GAG5B,MAAOD,GAAQ,GAAK,IAAMA,EAAQ,MAAgB,GAARC,IAAc,GAQzD,QAASC,GAAMC,EAAOC,EAAWC,GAChC,GAAIC,GAAI,CAGR,KAFAH,EAAQE,EAAYE,EAAMJ,EAAQK,GAAQL,GAAS,EACnDA,GAASI,EAAMJ,EAAQC,GACOD,EAAQM,EAAgBC,GAAQ,EAAGJ,GAAKR,EACrEK,EAAQI,EAAMJ,EAAQM,EAEvB,OAAOF,GAAMD,GAAKG,EAAgB,GAAKN,GAASA,EAAQQ,IAUzD,QAAS/E,GAAOgF,GAEf,GAEIC,GAIAC,EACAC,EACAnQ,EACAoQ,EACAC,EACAX,EACAN,EACAkB,EAEAC,EAfA5B,KACA6B,EAAcR,EAAMpT,OAEpByH,EAAI,EACJ3I,EAAI+U,EACJC,EAAOC,CAqBX,KALAT,EAAQF,EAAMY,YAAYC,GACtBX,EAAQ,IACXA,EAAQ,GAGJC,EAAI,EAAGA,EAAID,IAASC,EAEpBH,EAAMnB,WAAWsB,IAAM,KAC1BpC,EAAM,aAEPY,EAAO3E,KAAKgG,EAAMnB,WAAWsB,GAM9B,KAAKnQ,EAAQkQ,EAAQ,EAAIA,EAAQ,EAAI,EAAGlQ,EAAQwQ,GAAwC,CAOvF,IAAKJ,EAAO/L,EAAGgM,EAAI,EAAGX,EAAIR,EAErBlP,GAASwQ,GACZzC,EAAM,iBAGPqB,EAAQJ,EAAagB,EAAMnB,WAAW7O,OAElCoP,GAASF,GAAQE,EAAQO,GAAOmB,EAASzM,GAAKgM,KACjDtC,EAAM,YAGP1J,GAAK+K,EAAQiB,EACbC,EAAIZ,GAAKgB,EAAOK,EAAQrB,GAAKgB,EAAOZ,EAAOA,EAAOJ,EAAIgB,IAElDtB,EAAQkB,GAfuCZ,GAAKR,EAmBxDqB,EAAarB,EAAOoB,EAChBD,EAAIV,EAAMmB,EAASP,IACtBxC,EAAM,YAGPsC,GAAKE,CAINN,GAAMtB,EAAO/R,OAAS,EACtB8T,EAAOpB,EAAMjL,EAAI+L,EAAMH,EAAa,GAARG,GAIxBT,EAAMtL,EAAI4L,GAAOa,EAASpV,GAC7BqS,EAAM,YAGPrS,GAAKiU,EAAMtL,EAAI4L,GACf5L,GAAK4L,EAGLtB,EAAOqC,OAAO3M,IAAK,EAAG3I,GAIvB,MAAOoT,GAAWH,GAUnB,QAASsC,GAAOjB,GACf,GAAItU,GACA6T,EACA2B,EACAC,EACAT,EACAP,EACAiB,EACAC,EACA3B,EACAY,EACAgB,EAGAd,EAEAe,EACAhB,EACAiB,EANA7C,IAoBJ,KAXAqB,EAAQvB,EAAWuB,GAGnBQ,EAAcR,EAAMpT,OAGpBlB,EAAI+U,EACJlB,EAAQ,EACRmB,EAAOC,EAGFR,EAAI,EAAGA,EAAIK,IAAeL,GAC9BmB,EAAetB,EAAMG,IACF,KAClBxB,EAAO3E,KAAK+E,EAAmBuC,GAejC,KAXAJ,EAAiBC,EAAcxC,EAAO/R,OAMlCuU,GACHxC,EAAO3E,KAAK6G,GAINK,EAAiBV,GAAa,CAIpC,IAAKY,EAAIN,EAAQX,EAAI,EAAGA,EAAIK,IAAeL,GAC1CmB,EAAetB,EAAMG,KACDzU,GAAK4V,EAAeF,IACvCA,EAAIE,EAcN,KARAC,EAAwBL,EAAiB,EACrCE,EAAI1V,EAAIiU,GAAOmB,EAASvB,GAASgC,IACpCxD,EAAM,YAGPwB,IAAU6B,EAAI1V,GAAK6V,EACnB7V,EAAI0V,EAECjB,EAAI,EAAGA,EAAIK,IAAeL,EAO9B,GANAmB,EAAetB,EAAMG,GAEjBmB,EAAe5V,KAAO6T,EAAQuB,GACjC/C,EAAM,YAGHuD,GAAgB5V,EAAG,CAEtB,IAAK2V,EAAI9B,EAAOG,EAAIR,EACnBoB,EAAIZ,GAAKgB,EAAOK,EAAQrB,GAAKgB,EAAOZ,EAAOA,EAAOJ,EAAIgB,IAClDW,EAAIf,GAFqCZ,GAAKR,EAKlDsC,EAAUH,EAAIf,EACdC,EAAarB,EAAOoB,EACpB3B,EAAO3E,KACN+E,EAAmBI,EAAamB,EAAIkB,EAAUjB,EAAY,KAE3Dc,EAAI1B,EAAM6B,EAAUjB,EAGrB5B,GAAO3E,KAAK+E,EAAmBI,EAAakC,EAAG,KAC/CX,EAAOpB,EAAMC,EAAOgC,EAAuBL,GAAkBC,GAC7D5B,EAAQ,IACN2B,IAIF3B,IACA7T,EAGH,MAAOiT,GAAOzD,KAAK,IAcpB,QAASuG,GAAUzB,GAClB,MAAO3B,GAAU2B,EAAO,SAAS1B,GAChC,MAAOoD,GAAcC,KAAKrD,GACvBtD,EAAOsD,EAAOrD,MAAM,GAAG2G,eACvBtD,IAeL,QAASuD,GAAQ7B,GAChB,MAAO3B,GAAU2B,EAAO,SAAS1B,GAChC,MAAOwD,GAAcH,KAAKrD,GACvB,OAAS2C,EAAO3C,GAChBA,IAvdL,GAIIyD,IAJgC,gBAAXpE,IAAuBA,GAC9CA,EAAQqE,SACwB,gBAAV7W,IAAsBA,GAC5CA,EAAO6W,SACyB,gBAAVpE,IAAsBA,EAc9C,IAAIqE,GAGJnB,EAAS,WAGT5B,EAAO,GACP6B,EAAO,EACPjB,EAAO,GACPC,EAAO,GACPH,EAAO,IACPe,EAAc,GACdF,EAAW,IACXI,EAAY,IAGZa,EAAgB,QAChBI,EAAgB,eAChBtD,EAAkB,4BAGlBP,GACCiE,SAAY,kDACZC,YAAa,iDACbC,gBAAiB,iBAIlBvC,EAAgBX,EAAO6B,EACvBpB,EAAQ0C,KAAK1C,MACbZ,EAAqBuD,OAAOC,YA8a5BN,IAMCO,QAAW,QAQXC,MACCzH,OAAUyD,EACVwC,OAAUnC,GAEX9D,OAAUA,EACViG,OAAUA,EACVY,QAAWA,EACXJ,UAAaA,OAWbiB,MAAA7E,EAAA,WACC,MAAOoE,IADRjV,KAAA2Q,EAAAtS,EAAAsS,EAAAxS,QAAAwS,QAAAE,QT0wC2B7Q,KAAK2Q,EAAStS,EAAoB,IAAIF,GAASE,EAAoB,MAI1FsX,IACA,SAAUxX,EAAQC,EAAqBC,GAE7C,YACA8C,QAAOC,eAAehD,EAAqB,cAAgBiD,OAAO,IACnChD,EAAoBC,EAAEF,EAAqB,UAAW,WAAa,MAAOwX,IACpF,IA6CjBC,GAAMtU,EAAQE,EAASD,EA7CFhD,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpE6W,EAA4CzX,EAAoB,GAChEuO,EAA2CvO,EAAoB,GAC/DwO,EAAmDxO,EAAoBK,EAAEkO,GACzEa,EAA2CpP,EAAoB,IAC/DqP,EAAmDrP,EAAoBK,EAAE+O,GACzEsI,EAA0D1X,EAAoB,IAC9E2X,EAAkE3X,EAAoBK,EAAEqX,GACxFE,EAAkD5X,EAAoB,IACtE6X,EAA+D7X,EAAoB,KACnF8X,EAA6D9X,EAAoB,KACjF+X,EAAwD/X,EAAoB,KAC5EgY,EAAuDhY,EAAoB,KAC3EiY,EAAuDjY,EAAoB,IAC3EkY,EAAkDlY,EAAoB,IACtEmY,EAAmDnY,EAAoB,IACvEoY,EAAgDpY,EAAoB,KACpEqY,EAAkDrY,EAAoB,KACtEsY,EAA4CtY,EAAoB,IAChEuY,EAAuDvY,EAAoB,KAC3EwY,EAAgExY,EAAoB,KACpFyY,EAA2DzY,EAAoB,IAC/E0Y,EAA8D1Y,EAAoB,KAClF2Y,EAAgD3Y,EAAoB,IACpE4Y,EAA4C5Y,EAAoB,GAChE6Y,EAAgE7Y,EAAoB,IACpF8Y,EAAwE9Y,EAAoBK,EAAEwY,GAC9FE,EAA+C/Y,EAAoB,KAEnEgZ,GADuDhZ,EAAoBK,EAAE0Y,GAC7B/Y,EAAoB,KACpEiZ,EAA8DjZ,EAAoB,KUnxDrG8D,EAAWhB,OAAA8V,EAAA,IACfnM,eAAA/J,GAAA,+BAAAsB,eAAA,UACA0I,eAAAhK,GAAA,+BAAAsB,eAAA,gDACA2I,cAAAjK,GAAA,8BAAAsB,eAAA,SACAkV,WAAAxW,GAAA,uBAAAsB,eAAA,qBACAmV,SAAAzW,GAAA,uBAAAsB,eAAA,uBAGI4I,EAAsB,WAC1B,GAAMC,GAAY/J,OAAAwV,EAAA,IAQlB,OANwB,UAAC3Q,EAAO5F,GAAR,OACtByJ,OAAQqB,EAAUlF,EAAO5F,EAAMqX,OAAOC,UACtCC,aAAc3R,EAAM/B,OAAO,WAAY,YAAa7D,EAAMqX,OAAOC,WACjEE,eAAgB5R,EAAM/B,OAAO,WAAY,cAAe7D,EAAMqX,OAAOC,cAQpD9B,GVs0DPC,EUv0Db1U,OAAA2U,EAAA,SAAQ7K,GADR9J,OAAA8V,EAAA,GVw0D+K1V,EAASsU,GAAerU,EAASC,EAAU,SAAUoW,GAGnO,QAASjC,KACP,GAAItW,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMmW,EAEnF,KAAK,GAAIlW,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMoY,EAAsB7X,KAAKC,MAAM4X,GAAwBpY,MAAMS,OAAOL,KAAiBN,EUn0DvNyG,OACE8R,YAAY,GVo0DTvY,EUlzDLwY,qBAAuB,SAAClO,GAClBA,EAAOxG,IAAI,cACb9D,EAAKa,MAAM2H,SAAS5G,OAAAmV,EAAA,GAAYzM,IAEhCtK,EAAKa,MAAM2H,SAAS5G,OAAAmV,EAAA,GAAUzM,KVozD7BtK,EUhzDLyY,iBAAmB,SAACnO,GAClBtK,EAAKa,MAAM2H,SAAS5G,OAAAoV,EAAA,GAAa1M,EAAQtK,EAAKwN,QAAQzB,OAAOwB,WVizD1DvN,EU9yDL0Y,kBAAoB,SAACpO,GACnBtK,EAAKa,MAAM2H,SAAS5G,OAAAmV,EAAA,GAAOzM,KV+yDxBtK,EU5yDL2Y,kBAAoB,SAACrO,EAAQrH,GACvBqH,EAAOxG,IAAI,aACb9D,EAAKa,MAAM2H,SAAS5G,OAAAmV,EAAA,GAASzM,IAEzBrH,EAAEiJ,WAAa4L,EAAA,EACjB9X,EAAK0Y,kBAAkBpO,GAEvBtK,EAAKa,MAAM2H,SAAS5G,OAAA6V,EAAA,GAAU,SAAWnN,SAAQ2B,SAAUjM,EAAK0Y,sBV+yDjE1Y,EU1yDL4Y,kBAAoB,SAACtO,GAAW,GAAA9G,GACHxD,EAAKa,MAAxB2H,EADsBhF,EACtBgF,SAAUf,EADYjE,EACZiE,IAKhBe,GAHGsP,EAAA,EAGMlW,OAAA6V,EAAA,GAAU,WACjBpL,QAAS5E,EAAKU,cAAcvF,EAAS4I,eACrCc,QAAS7E,EAAKU,cAAcvF,EAAS2I,eACrCgB,UAAW,iBAAM/D,GAAS5G,OAAA8U,EAAA,GAAapM,EAAOxG,IAAI,WAL3ClC,OAAA8U,EAAA,GAAapM,EAAOxG,IAAI,SVuzDhC9D,EU7yDL6Y,mBAAqB,SAACtQ,EAASwD,GAC7B/L,EAAKa,MAAM2H,SAAS5G,OAAAoV,EAAA,GAAezO,EAASwD,KV8yDzC/L,EU3yDL8Y,gBAAkB,SAAC/R,EAAOtD,GACxBzD,EAAKa,MAAM2H,SAAS5G,OAAA6V,EAAA,GAAU,SAAW1Q,QAAOtD,YV4yD7CzD,EUzyDL+Y,gBAAkB,SAAChS,EAAO2F,GACxB1M,EAAKa,MAAM2H,SAAS5G,OAAA6V,EAAA,GAAU,SAAW1Q,QAAO2F,WV0yD7C1M,EUvyDLgZ,gBAAkB,SAACzQ,GACjBvI,EAAKa,MAAM2H,SAAS5G,OAAAsV,EAAA,GAAc3O,KVwyD/BvI,EUryDLiZ,4BAA8B,SAAC3O,GACzBA,EAAOxG,IAAI,SACb9D,EAAKa,MAAM2H,SAAS5G,OAAA8U,EAAA,GAAapM,EAAOxG,IAAI,QAE5C9D,EAAKa,MAAM2H,SAAS5G,OAAA8U,EAAA,GAAWpM,EAAOxG,IAAI,SVuyDzC9D,EUnyDLkZ,mBAAqB,SAAC5O,GAChBA,EAAOxG,IAAI,UACb9D,EAAKa,MAAM2H,SAAS5G,OAAA8U,EAAA,GAAapM,EAAOxG,IAAI,QAE5C9D,EAAKa,MAAM2H,SAAS5G,OAAA8U,EAAA,GAAWpM,EAAOxG,IAAI,SVqyDzC9D,EUjyDLmZ,gBAAkB,WAAM,GAAAC,GAC2BpZ,EAAKa,MAA9CyJ,EADc8O,EACd9O,OAAQ8N,EADMgB,EACNhB,aAAcC,EADRe,EACQf,eACxBgB,GAAa/O,EAAOxG,IAAI,OAAOnD,OAAOyX,EAAakB,OAAQjB,EAAeiB,OAE5EhP,GAAOxG,IAAI,UACb9D,EAAKa,MAAM2H,SAAS5G,OAAA8U,EAAA,GAAa2C,IAEjCrZ,EAAKa,MAAM2H,SAAS5G,OAAA8U,EAAA,GAAW2C,KVuyD9BrZ,EUnyDLuZ,iBAAmB,SAAChR,GAAY,GAAAiR,GACHxZ,EAAKa,MAAxB2H,EADsBgR,EACtBhR,SAAUf,EADY+R,EACZ/R,IAElBe,GAAS5G,OAAA6V,EAAA,GAAU,WACjBpL,QAAAnN,IAAUwY,EAAA,GAAVlW,GAA8B,8BAA9BsB,eAA2E,yCAA3E8J,QAA8HC,KAAA3N,IAAA2N,uBAAgBtE,EAAQzE,IAAI,YAC1JwI,QAAS7E,EAAKU,cAAcvF,EAAS6I,cACrCc,UAAW,iBAAM/D,GAAS5G,OAAAqV,EAAA,GAAa1O,EAAQzE,IAAI,aV8yDlD9D,EU1yDLyZ,aAAe,SAACnP,GACdtK,EAAKa,MAAM2H,SAAS5G,OAAAuV,EAAA,GAAW7M,EAAOxG,IAAI,WAAYwG,KV2yDnDtK,EUxyDL0Z,mBAAqB,WACnB1Z,EAAK2Z,aAAa3Z,EAAKa,MAAMyJ,OAAOxG,IAAI,QVyyDrC9D,EUtyDL4Z,qBAAuB,WACrB5Z,EAAK6Z,eAAe7Z,EAAKa,MAAMyJ,OAAOxG,IAAI,QVuyDvC9D,EUpyDL8Z,kBAAoB,SAAA7W,GAClBA,EAAEU,iBACF3D,EAAKyY,iBAAiBzY,EAAKa,MAAMyJ,SVqyD9BtK,EUlyDL+Z,sBAAwB,WACtB/Z,EAAKwY,qBAAqBxY,EAAKa,MAAMyJ,SVmyDlCtK,EUhyDLga,kBAAoB,WAClBha,EAAK2Y,kBAAkB3Y,EAAKa,MAAMyJ,SViyD/BtK,EU9xDLia,oBAAsB,SAAAhX,GACpBA,EAAEU,iBACF3D,EAAK6Y,mBAAmB7Y,EAAKa,MAAMyJ,SV+xDhCtK,EU5xDLka,wBAA0B,WACxBla,EAAKwN,QAAQzB,OAAOwB,QAAQE,KAA5B,aAA8CzN,EAAKa,MAAMyJ,OAAO5F,OAAO,UAAW,SV6xD/E1E,EU1xDL2Z,aAAe,SAAAnY,GAAM,GAAA2Y,GAC8Bna,EAAKa,MAA9CyJ,EADW6P,EACX7P,OAAQ8N,EADG+B,EACH/B,aAAcC,EADX8B,EACW9B,cAE9B,IAAI7W,IAAO8I,EAAOxG,IAAI,MACpB9D,EAAKoa,aAAahC,EAAarU,KAAO,OACjC,CACL,GAAIN,GAAQ2U,EAAa5J,QAAQhN,IAElB,IAAXiC,GACFA,EAAQ4U,EAAe7J,QAAQhN,GAC/BxB,EAAKoa,aAAahC,EAAarU,KAAON,IAEtCzD,EAAKoa,aAAa3W,EAAQ,KViyD3BzD,EU5xDL6Z,eAAiB,SAAArY,GAAM,GAAA6Y,GAC4Bra,EAAKa,MAA9CyJ,EADa+P,EACb/P,OAAQ8N,EADKiC,EACLjC,aAAcC,EADTgC,EACShC,cAE9B,IAAI7W,IAAO8I,EAAOxG,IAAI,MACpB9D,EAAKoa,aAAahC,EAAarU,KAAO,OACjC,CACL,GAAIN,GAAQ2U,EAAa5J,QAAQhN,IAElB,IAAXiC,GACFA,EAAQ4U,EAAe7J,QAAQhN,GAC/BxB,EAAKoa,aAAahC,EAAarU,KAAON,EAAQ,IAE9CzD,EAAKoa,aAAa3W,EAAQ,KVmyD3BzD,EU3wDLwJ,OAAS,SAAAC,GACPzJ,EAAKiH,KAAOwC,GV4wDTzJ,EUtvDLsa,mBAAqB,WACnBta,EAAK6G,UAAW0R,WAAY3W,OAAAmW,EAAA,QVkmDrB9X,EAqJJF,EAAQR,IAAwFS,EAAOC,GAwI5G,MAxSAR,KAAuE4W,EAAQiC,GAmK/EjC,EAAOtV,UUv9DPwZ,mBVu9DsC,WUt9DpCra,KAAKW,MAAM2H,SAAS5G,OAAA8U,EAAA,GAAYxW,KAAKW,MAAMqX,OAAOC,YV09DpD9B,EAAOtV,UUv9DPyZ,kBVu9DqC,WUt9DnC5Y,OAAAmW,EAAA,GAAyB7X,KAAKoa,qBV09DhCjE,EAAOtV,UUv9DPoG,0BVu9D6C,SUv9DlBC,GACrBA,EAAU8Q,OAAOC,WAAajY,KAAKW,MAAMqX,OAAOC,UAAY/Q,EAAU8Q,OAAOC,WAC/EjY,KAAKua,mBAAoB,EACzBva,KAAKW,MAAM2H,SAAS5G,OAAA8U,EAAA,GAAYtP,EAAU8Q,OAAOC,aV29DrD9B,EAAOtV,UUpzDPqZ,aVozDgC,SUpzDlB3W,GACZ,GAAMiX,GAAUxa,KAAK+G,KAAK0T,iBAAiB,cAAclX,EAErDiX,IACFA,EAAQE,SVwzDZvE,EAAOtV,UUpzDP8Z,eVozDkC,SUpzDlBC,GAAM,GAAAzU,GAAAnG,IACpB,OAAO4a,GAAKjT,IAAI,SAAArG,GAAA,MAAAtC,KACbsY,EAAA,GADahW,GAGRA,EAHQuZ,SAIF1U,EAAKsT,aAJHqB,WAKA3U,EAAKwT,gBAHZrY,MV6zDX6U,EAAOtV,UUjzDPka,mBVizDsC,WUhzDpC,IAAI/a,KAAKua,kBAAT,CADoB,GAAAxZ,GAKaf,KAAKW,MAA9ByJ,EALYrJ,EAKZqJ,OAAQ8N,EALInX,EAKJmX,YAEhB,IAAI9N,GAAU8N,GAAgBA,EAAarU,KAAO,EAAG,CACnC7D,KAAK+G,KAAK0T,iBAAiB,cAAcvC,EAAarU,KAAO,GAErEmX,gBAAe,GACvBhb,KAAKua,mBAAoB,KVwzD7BpE,EAAOtV,UUpzDPoa,qBVozDwC,WUnzDtCvZ,OAAAmW,EAAA,GAAyB7X,KAAKoa,qBVuzDhCjE,EAAOtV,UUhzDPC,OVgzD0B,WU/yDxB,GAAIoa,UAAWC,SADP/T,EAE+CpH,KAAKW,MAApDyJ,EAFAhD,EAEAgD,OAAQ8N,EAFR9Q,EAEQ8Q,aAAcC,EAFtB/Q,EAEsB+Q,eAAgB5Q,EAFtCH,EAEsCG,KACtC8Q,EAAerY,KAAKuG,MAApB8R,UAER,IAAe,OAAXjO,EACF,MAAApL,KACG4X,EAAA,SADH,GAAA5X,IAEKoY,EAAA,MAFLpY,IAGKyX,EAAA,MAKHyB,IAAgBA,EAAarU,KAAO,IACtCqX,EAAAlc,IAAAkc,gBAAkBlb,KAAK2a,eAAezC,KAGpCC,GAAkBA,EAAetU,KAAO,IAC1CsX,EAAAnc,IAAAmc,gBAAoBnb,KAAK2a,eAAexC,IAG1C,IAAMiD,IACJC,OAAQrb,KAAKwZ,mBACb8B,SAAUtb,KAAK0Z,qBACf6B,MAAOvb,KAAK4Z,kBACZ4B,UAAWxb,KAAK6Z,sBAChB4B,MAAOzb,KAAK8Z,kBACZ4B,QAAS1b,KAAK+Z,oBACd4B,YAAa3b,KAAKga,wBAGpB,OAAAhb,KACG4X,EAAA,SADH,GAAA5X,IAEKqY,EAAA,GAFLuE,gBAAA,EAAAC,YAAA7c,IAAA,UAAAqC,UAK0B,wBAL1BgE,MAKyDkC,EAAKU,cAAcmC,EAAOxG,IAAI,UAAYlB,EAASoV,UAAYpV,EAASqV,SALjIrS,aAKuJ6B,EAAKU,cAAcmC,EAAOxG,IAAI,UAAYlB,EAASoV,UAAYpV,EAASqV,SAL/NnX,QAKkPZ,KAAKiZ,gBALvP6C,eAKsR1R,EAAOxG,IAAI,UAAY,QAAU,YALvT,GAAA5E,IAAA,KAAAqC,UAAA,UAKsV+I,EAAOxG,IAAI,UAAY,YAAc,YAL3X5E,IASKmY,EAAA,GATL4E,UAS+B,cAT/B,GAUMtc,EAAA8B,EAAAuG,cAAA,OAAKzG,UAAW4M,IAAW,aAAc,4BAA8BoK,eAAetQ,IAAK/H,KAAKsJ,QAC7F4R,EADHlc,IAGG2Y,EAAA,SAHHyD,SAGqBA,OAHrB,GAAApc,IAAA,OAAAqC,UAImB,YAJnB2a,SAIwC,SAJxC,GAAAhd,IAKO0X,EAAA,GALPtM,OAMgBA,EANhBmC,YAOqBvM,KAAK6Y,gBAP1BjS,YAQqB5G,KAAK4Y,gBAR1B7L,eASwB/M,KAAKgZ,qBAT7Bha,IAYO2X,EAAA,GAZPvM,OAagBA,EAbhBwB,QAciB5L,KAAKuY,iBAdtBtM,YAeqBjM,KAAKsY,qBAf1BvM,SAgBkB/L,KAAKyY,kBAhBvBvM,SAiBkBlM,KAAK0Y,kBAjBvBpM,UAkBmBtM,KAAK2Y,mBAlBxB9L,OAmBgB7M,KAAK8Y,gBAnBrBhM,mBAoB4B9M,KAAK+Y,4BApBjCtM,QAqBiBzM,KAAKqZ,iBArBtBzM,SAsBkB5M,KAAKuZ,iBAKpB4B,MVuzDJhF,GU/mE2BuB,EAAAnW,GVgnEwCS,EU9mEnEyL,cACL5B,OAAQuB,EAAA7L,EAAUmM,QV+mEnB1L,EU5mEMia,WACLjE,OAAQ5K,EAAA7L,EAAUmM,OAAOwO,WACzB5T,SAAU8E,EAAA7L,EAAU4a,KAAKD,WACzB9R,OAAQmM,EAAAhV,EAAmBoG,IAC3BuQ,aAAc3B,EAAAhV,EAAmBqZ,KACjCzC,eAAgB5B,EAAAhV,EAAmBqZ,KACnCrT,KAAM6F,EAAA7L,EAAUmM,OAAOwO,YV0zDmKpa,EAmT3LC,KAAYD,IAAWA,IAKpBsa,IACA,SAAU1d,EAAQC,EAAqBC,GAE7C,YACqB,IAAIG,GAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFyL,EAAsC5L,EAAoB,GAE1Dyd,GAD8Czd,EAAoBK,EAAEuL,GACzB5L,EAAoB,IWnsElF0d,EAAmB,iBAAAtd,KAAA,OAAAqC,UACR,gDADQ,GAAArC,IAAA,gBAAAA,IAAA,OAAAqC,UAGJ,qCAHI,GAAArC,IAIhBqd,EAAA,GAJgB/a,GAII,0BAJJib,QAIsC,SAJtC3Z,eAI8D,cAJ9D5D,IAKhBqd,EAAA,GALgB/a,GAKI,6BALJsB,eAKgD,wCAMzEjE,GAAA,KXgtEM6d,IACA,SAAU9d,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAO8d,IAC9E,IA8BjB3a,GAAQC,EA9BahD,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAE1D8d,GAD8C9d,EAAoBK,EAAEO,GACzBZ,EAAoB,IAC/D+d,EAAmD/d,EAAoBK,EAAEyd,GACzEE,EAA0Dhe,EAAoB,IAC9Eie,EAAkEje,EAAoBK,EAAE2d,GACxFE,EAAmDle,EAAoB,IACvEme,EAAyDne,EAAoB,IAC7Eoe,EAA2Dpe,EAAoB,KAC/Eqe,EAA2Dre,EAAoB,KAC/Ese,EAA6Dte,EAAoB,KACjFue,EAAkDve,EAAoB,IACtEwe,EAA4Cxe,EAAoB,GAChEye,EAA4Dze,EAAoB,KAChF0e,EAAgE1e,EAAoB,IACpF2e,EAAwE3e,EAAoBK,EAAEqe,GAC9FE,EAAwC5e,EAAoB,IY7uEhE6d,GZmwEC1a,EAASD,EAAS,SAAUsW,GAGhD,QAASqE,KACP,GAAI5c,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMyc,EAEnF,KAAK,GAAIxc,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMoY,EAAsB7X,KAAKC,MAAM4X,GAAwBpY,MAAMS,OAAOL,KAAiBN,EYlwEvN2d,mBAAqB,SAAC1a,GACH,IAAbA,EAAES,SACJT,EAAEU,iBACF3D,EAAKwN,QAAQzB,OAAOwB,QAAQE,KAA5B,aAA8CzN,EAAKa,MAAMyJ,OAAO5F,OAAO,UAAW,SAGpFzB,EAAEW,mBZmwEC5D,EYhwEL+Y,gBAAkB,SAAA6E,GAChB5d,EAAKa,MAAM4L,YAAYzM,EAAKa,MAAMyJ,OAAO5F,OAAO,oBAAqB,IAAKkZ,IZiwEvE5d,EY9vEL6d,qBAAuB,WACrB7d,EAAKa,MAAMoM,eAAejN,EAAKa,MAAMyJ,SZovE9BrK,EAWJF,EAAQR,IAAwFS,EAAOC,GA0H5G,MAhJAR,KAAuEkd,EAAgBrE,GAyBvFqE,EAAe5b,UY/vEfC,OZ+vEkC,WY9vEhC,GAAMsJ,GAASpK,KAAKW,MAAMyJ,OAAOxG,IAAI,UAAY5D,KAAKW,MAAMyJ,OAAOxG,IAAI,UAAY5D,KAAKW,MAAMyJ,OAE1FvD,EAAkB,GAClB+W,EAAkB,GAClBC,EAAa,GACbC,EAAa,SAEjB,IAAI1T,EAAOxG,IAAI,qBAAqBC,KAAO,EACzC,GAAIuG,EAAOxG,IAAI,qBAAqBma,KAAK,SAAAC,GAAA,MAA6B,YAArBA,EAAKpa,IAAI,UACxDiD,EAAA7H,IAASke,EAAA,GAATrW,MAA+BuD,EAAOxG,IAAI,2BACrC,IAAuD,UAAnDwG,EAAO5F,OAAO,oBAAqB,EAAG,SAAsB,CACrE,GAAMyZ,GAAQ7T,EAAO5F,OAAO,oBAAqB,GAEjDqC,GAAA7H,IACGwe,EAAA,SADHU,QAEaD,EAAMra,IAAI,eAFvBuB,IAGS8Y,EAAMra,IAAI,OAHnBG,MAIW,IAJXC,OAKY,IALZma,QAAA,EAAA5R,YAOiBvM,KAAK6Y,gBAPtBpS,UAQe2D,EAAOxG,IAAI,mBAI1BiD,GAAA7H,IACGie,EAAA,SADHnZ,YAAA,EAAA2C,UAGe2D,EAAOxG,IAAI,aAH1BiD,MAIWuD,EAAOxG,IAAI,qBAJtBI,OAKY,IALZ4C,YAMiB5G,KAAKW,MAAMiG,kBAIiB,KAAtCwD,EAAOxG,IAAI,gBAAgBzD,SACpC0G,EAAA7H,IAASqe,EAAA,GAATzW,YAAoC5G,KAAKW,MAAMiG,YAA/CqR,SAAsE7N,EAAOxG,IAAI,QAwBnF,OArBIwG,GAAOxG,IAAI,iBACbga,EAAA5e,IAAA4e,uBAAA5e,IAAA4e,KAAAvc,UAAwC,+BAAxC6D,KAA6EkF,EAAO5F,OAAO,cAAe,YAA1GvB,OAA8H,SAA9H4N,IAA2I,gBAA3I,GAAuJzG,EAAO5F,OAAO,cAAe,YAGrJ,WAA7B4F,EAAOxG,IAAI,cACbka,EAAa,WACyB,YAA7B1T,EAAOxG,IAAI,gBACpBka,EAAa,QAIbD,EAD+B,YAA7BzT,EAAOxG,IAAI,cACb5E,IAAA6e,KAAAxc,UAAA,SAAoCyc,IAEpC9e,IAAeme,EAAA,GAAfiB,GAAA,aAAqChU,EAAOxG,IAAI,MAAhD,WAAAvC,UAA2E,6BAA3E,GAAArC,IAAA,KAAAqC,UAAA,SACyByc,IADzB9e,IAAA,QAAAqC,UAEkB,gCAFlB,GAAArC,IAGKoe,EAAA,GAHLxb,MAG4BwI,EAAOxG,IAAI,qBAKzC5E,IAAA,OAAAqC,UACiB,uBADjB,GAAArC,IAAA,KAAAkG,KAEakF,EAAO5F,OAAO,UAAW,QAFtC5D,QAEwDZ,KAAKyd,mBAF7Dpc,UAE2F,qCAF3F,GAAArC,IAAA,OAAAqC,UAGqB,uCAHrB,GAAArC,IAGwD8d,EAAA,GAHxDzU,QAGwE+B,EAAOxG,IAAI,WAHnFC,KAGqG,MAHrG7E,IAIO+d,EAAA,GAJP1U,QAI4B+B,EAAOxG,IAAI,cAJvC5E,IAOKge,EAAA,GAPL5S,OAO2BA,EAP3BiU,UAO8CjU,EAAOxG,IAAI,UAPzD0a,iBAOsFte,KAAK2d,uBAEtF9W,EATL7H,IAAA,OAAAqC,UAWmB,6BAXnB,GAAArC,IAAA,KAAAqC,UAYmB,4BAZnB6D,KAYqDkF,EAAOxG,IAAI,OAZhEX,OAY+E,SAZ/E4N,IAY4F,gBAZ5F,GAAA7R,IAaSoe,EAAA,GAbTxb,MAa8B,GAAI2c,MAAKnU,EAAOxG,IAAI,eAblD4a,QAa0E,EAb1EC,KAasF,UAbtFC,MAasG,QAbtGC,IAakH,UAblHC,KAaiI,UAbjIC,OAakJ,aACvIjB,EAdX,MAc+BC,EAd/B,MAAA7e,IAc8Cme,EAAA,GAd9CiB,GAAA,aAcoEhU,EAAOxG,IAAI,MAd/E,cAAAvC,UAc6G,6BAd7G,GAAArC,IAAA,KAAAqC,UAeqB,eAfrBrC,IAAA,QAAAqC,UAgBwB,kCAhBxB,GAAArC,IAiBWoe,EAAA,GAjBXxb,MAiBkCwI,EAAOxG,IAAI,2BZwyExC6Y,GYp5EmCc,EAAAhc,GZq5EgCO,EYn5EnE2L,cACL5B,OAAQ8Q,EAAApb,EAAUmM,QZo5EnB5L,EYj5EMma,WACL7R,OAAQyS,EAAAtb,EAAmBoG,IAAIuU,WAC/BtV,YAAa+V,EAAApb,EAAU4a,KAAKD,WAC5B3P,YAAaoQ,EAAApb,EAAU4a,KAAKD,WAC5BnP,eAAgB4P,EAAApb,EAAU4a,KAAKD,YZk5EhCna,IAKG+c,IACA,SAAUpgB,EAAQC,EAAqBC,GAE7C,YACqB,IAAImgB,GAA4CngB,EAAoB,GAChEogB,EAAiDpgB,EAAoB,Kaj7ExFqgB,EAAkB,SAAC1Y,EAADoF,GAAA,GAAUsM,GAAVtM,EAAUsM,QAAV,QACtBnI,KAAMvJ,EAAM/B,OAAO,QAASyT,GAAW,OAGzCtZ,GAAA,EAAe+C,OAAAqd,EAAA,SAAQE,GAAiBD,EAAA,Ib47ElCE,IACA,SAAUxgB,EAAQC,EAAqBC,GAE7C,YAC+BA,GAAoBC,EAAEF,EAAqB,IAAK,WAAa,MAAOwgB,IAC9E,IAqBjBrd,GAAQE,EAASD,EArBIhD,EAA0DH,EAAoB,GAC9EI,EAAkEJ,EAAoBK,EAAEF,GACxFG,EAAqEN,EAAoB,GACzFO,EAA6EP,EAAoBK,EAAEC,GACnGE,EAAgFR,EAAoB,GACpGS,EAAwFT,EAAoBK,EAAEG,GAC9GE,EAA+DV,EAAoB,GACnFW,EAAuEX,EAAoBK,EAAEK,GAC7FE,EAAsCZ,EAAoB,GAC1Da,EAA8Cb,EAAoBK,EAAEO,GACpEkd,EAA2C9d,EAAoB,GAC/D+d,EAAmD/d,EAAoBK,EAAEyd,GACzE0C,EAAwDxgB,EAAoB,IAC5EygB,EAAoEzgB,EAAoB,KACxF0gB,EAA2C1gB,EAAoB,GAC/D2gB,EAA+C3gB,EAAoB,Ic/8EtF8D,EAAWhB,OAAA4d,EAAA,IACfE,QAAAle,GAAA,gBAAAsB,eAAA,UACA8Y,SAAApa,GAAA,iBAAAsB,eAAA,mBACA2Y,OAAAja,GAAA,eAAAsB,eAAA,SACA6c,QAAAne,GAAA,gBAAAsB,eAAA,SACA8c,eAAApe,GAAA,uBAAAsB,eAAA,+BACA4Y,WAAAla,GAAA,mBAAAsB,eAAA,aACA+c,kBAAAre,GAAA,2BAAAsB,eAAA,qBACAgd,oBAAAte,GAAA,6BAAAsB,eAAA,uBACAid,OAAAve,GAAA,eAAAsB,eAAA,iBACAkd,OAAAxe,GAAA,eAAAsB,eAAA,WAImBuc,EADpBzd,OAAA4d,EAAA,Id6/EgGvd,EAASC,EAAU,SAAUpC,GAG5H,QAASuf,KACP,GAAItf,GAAOC,EAAOC,CAElBZ,KAA6Ea,KAAMmf,EAEnF,KAAK,GAAIlf,GAAOC,UAAUC,OAAQC,EAAOC,MAAMJ,GAAOK,EAAO,EAAGA,EAAOL,EAAMK,IAC3EF,EAAKE,GAAQJ,UAAUI,EAGzB,OAAeT,GAASC,EAAQT,IAAwFW,KAAMJ,EAAqBW,KAAKC,MAAMZ,GAAuBI,MAAMS,OAAOL,KAAiBN,Ecr/ErNyY,iBAAmB,WACjBzY,EAAKa,MAAMiL,QAAQ9L,EAAKa,MAAMyJ,Sds/E3BtK,Ecn/EL2Y,kBAAoB,SAAC1V,GACnBjD,EAAKa,MAAMoL,SAASjM,EAAKa,MAAMyJ,OAAQrH,Ido/EpCjD,Ecj/ELwY,qBAAuB,WACrBxY,EAAKa,MAAMsL,YAAYnM,EAAKa,MAAMyJ,Sdk/E/BtK,Ec/+EL4Y,kBAAoB,WAClB5Y,EAAKa,MAAMuL,SAASpM,EAAKa,MAAMyJ,Sdg/E5BtK,Ec7+EL6Y,mBAAqB,WACnB7Y,EAAKa,MAAM2L,UAAUxM,EAAKa,MAAMyJ,OAAOxG,IAAI,WAAY9D,EAAKwN,QAAQzB,OAAOwB,Ud8+ExEvN,Ec3+ELiZ,4BAA8B,WAC5BjZ,EAAKa,MAAMmM,mBAAmBhN,EAAKa,MAAMyJ,Sd4+EtCtK,Ecz+ELuZ,iBAAmB,WACjBvZ,EAAKa,MAAM8L,QAAQ3M,EAAKa,MAAMyJ,OAAOxG,IAAI,ad0+EtC9D,Ecv+ELigB,eAAiB,WACfjgB,EAAKa,MAAMqf,MAAMlgB,EAAKa,MAAMyJ,Sdw+EzBtK,Ecr+ELmgB,YAAc,WACZC,UAAUJ,OACR9Q,KAAMlP,EAAKa,MAAMyJ,OAAOxG,IAAI,gBAC5B+K,IAAK7O,EAAKa,MAAMyJ,OAAOxG,IAAI,Udk9EtB7D,EAqBJF,EAAQR,IAAwFS,EAAOC,GAwE5G,MAxGAR,KAAuE4f,EAAWvf,GAmClFuf,EAAUte,Uct+EVC,Ods+E6B,Wct+EnB,GAAAC,GACiBf,KAAKW,MAAtByJ,EADArJ,EACAqJ,OAAQ7C,EADRxG,EACQwG,KAGV4Y,IADgB,SAAU,YAAYC,SAAShW,EAAOxG,IAAI,eACrCwG,EAAOxG,IAAI,UAElCyc,IAEAd,GAAA,IAAOnV,EAAO5F,OAAO,UAAW,QAClC6b,EAAK9S,MAAOyB,KAAMzH,EAAKU,cAAckY,EAAqBzd,EAASkd,mBAAqBld,EAASid,kBAAmBW,OAAQtgB,KAAK+Y,8BACjIsH,EAAK9S,KAAK,MACV8S,EAAK9S,MAAOyB,KAAMzH,EAAKU,cAAcvF,EAAS8c,QAASc,OAAQtgB,KAAK0Y,sBAEpE2H,EAAK9S,MAAOyB,KAAMzH,EAAKU,cAAcvF,EAASgZ,SAAW/O,KAAMvC,EAAO5F,OAAO,UAAW,eAAiB8b,OAAQtgB,KAAK2Y,qBACtH0H,EAAK9S,MAAOyB,KAAMzH,EAAKU,cAAcvF,EAASmd,OAASlT,KAAMvC,EAAO5F,OAAO,UAAW,eAAiB8b,OAAQtgB,KAAKqZ,mBAGtH,IAAMkH,GAAe,SAAWL,YAA2C,WAA7B9V,EAAOxG,IAAI,eAArC5E,IAAA,OAAAqC,UACH,+BADG,GAAArC,IACwBogB,EAAA,GADxB/Z,MAC0CkC,EAAKU,cAAcvF,EAASod,OADtE9e,KACmF,YADnFJ,QACwGZ,KAAKigB,eAG7HnC,EAAa,SACgB,YAA7B1T,EAAOxG,IAAI,cAA4Bka,EAAa,WAClB,YAA7B1T,EAAOxG,IAAI,gBAA6Bka,EAAa,OAE9D,IAAI0C,GAAgD,WAA7BpW,EAAOxG,IAAI,eAA2D,YAA7BwG,EAAOxG,IAAI,aAE3E,OAAA5E,KAAA,OAAAqC,UACiB,mCADjB,GAAArC,IAAA,OAAAqC,UAEmB,+BAFnB,GAAArC,IAE8CogB,EAAA,GAF9C/Z,MAEgEkC,EAAKU,cAAcvF,EAAS6Y,OAF5Fva,KAEiJ,OAAvCoJ,EAAOxG,IAAI,iBAAkB,MAAiB,QAAU,YAFlKhD,QAEwLZ,KAAKuY,oBAF7LvZ,IAAA,OAAAqC,UAGmB,+BAHnB,GAAArC,IAG8CogB,EAAA,GAH9CqB,SAGmED,EAHnEtf,OAG4FkJ,EAAOxG,IAAI,aAHvGyB,MAG4Hmb,EAAkBjZ,EAAKU,cAAcvF,EAASgd,eAAiBnY,EAAKU,cAAcvF,EAAS+c,QAHvNze,KAGsO8c,EAHtOld,QAG2PZ,KAAKyY,qBAHhQzZ,IAAA,OAAAqC,UAImB,+BAJnB,GAAArC,IAI8CogB,EAAA,GAJ9CsB,SAAA,EAAAxf,OAIyEkJ,EAAOxG,IAAI,cAJpFyB,MAI0GkC,EAAKU,cAAcvF,EAAS8Y,WAJtIxa,KAIuJ,OAJvJJ,QAIuKZ,KAAKsY,qBAJ5KqI,aAIiNC,MAAO,cACnNL,EALLvhB,IAAA,OAAAqC,UAOmB,4CAPnB,GAAArC,IAQOqgB,EAAA,GARPxb,KAQmC,GARnC7C,KAQ4C,aAR5C6f,MAQgER,EARhES,UAQgF,OARhFzb,MAQ6F,YdwgFxF8Z,GcrmF8B1f,EAAA8B,EAAMC,edsmFmBQ,EcpmFvDyL,cACL5B,OAAQ8Q,EAAApb,EAAUmM,Qdy/EiE5L,EA4GpFC,KAAYD","file":"features/status.js","sourcesContent":["webpackJsonp([15,25],{\n\n/***/ 150:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnHeader; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__);\n\n\n\n\n\n\n\n\nvar ColumnHeader = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnHeader, _React$PureComponent);\n\n function ColumnHeader() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnHeader);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n _this.props.onClick();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnHeader.prototype.render = function render() {\n var _props = this.props,\n icon = _props.icon,\n type = _props.type,\n active = _props.active,\n columnHeaderId = _props.columnHeaderId;\n\n var iconElement = '';\n\n if (icon) {\n iconElement = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-' + icon + ' column-header__icon'\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h1', {\n className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()('column-header', { active: active }),\n id: columnHeaderId || null\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick\n }, void 0, iconElement, type));\n };\n\n return ColumnHeader;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 154:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return MediaGallery; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _temp2, _class2, _class3, _temp4;\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n toggle_visible: {\n 'id': 'media_gallery.toggle_visible',\n 'defaultMessage': 'Toggle visibility'\n }\n});\n\nvar Item = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Item, _React$PureComponent);\n\n function Item() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Item);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleMouseEnter = function (e) {\n if (_this.hoverToPlay()) {\n e.target.play();\n }\n }, _this.handleMouseLeave = function (e) {\n if (_this.hoverToPlay()) {\n e.target.pause();\n e.target.currentTime = 0;\n }\n }, _this.handleClick = function (e) {\n var _this$props = _this.props,\n index = _this$props.index,\n onClick = _this$props.onClick;\n\n\n if (e.button === 0) {\n e.preventDefault();\n onClick(index);\n }\n\n e.stopPropagation();\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Item.prototype.hoverToPlay = function hoverToPlay() {\n var attachment = this.props.attachment;\n\n return !__WEBPACK_IMPORTED_MODULE_10__initial_state__[\"a\" /* autoPlayGif */] && attachment.get('type') === 'gifv';\n };\n\n Item.prototype.render = function render() {\n var _props = this.props,\n attachment = _props.attachment,\n index = _props.index,\n size = _props.size,\n standalone = _props.standalone;\n\n\n var width = 50;\n var height = 100;\n var top = 'auto';\n var left = 'auto';\n var bottom = 'auto';\n var right = 'auto';\n\n if (size === 1) {\n width = 100;\n }\n\n if (size === 4 || size === 3 && index > 0) {\n height = 50;\n }\n\n if (size === 2) {\n if (index === 0) {\n right = '2px';\n } else {\n left = '2px';\n }\n } else if (size === 3) {\n if (index === 0) {\n right = '2px';\n } else if (index > 0) {\n left = '2px';\n }\n\n if (index === 1) {\n bottom = '2px';\n } else if (index > 1) {\n top = '2px';\n }\n } else if (size === 4) {\n if (index === 0 || index === 2) {\n right = '2px';\n }\n\n if (index === 1 || index === 3) {\n left = '2px';\n }\n\n if (index < 2) {\n bottom = '2px';\n } else {\n top = '2px';\n }\n }\n\n var thumbnail = '';\n\n if (attachment.get('type') === 'image') {\n var previewUrl = attachment.get('preview_url');\n var previewWidth = attachment.getIn(['meta', 'small', 'width']);\n\n var originalUrl = attachment.get('url');\n var originalWidth = attachment.getIn(['meta', 'original', 'width']);\n\n var hasSize = typeof originalWidth === 'number' && typeof previewWidth === 'number';\n\n var srcSet = hasSize ? originalUrl + ' ' + originalWidth + 'w, ' + previewUrl + ' ' + previewWidth + 'w' : null;\n var sizes = hasSize ? '(min-width: 1025px) ' + 320 * (width / 100) + 'px, ' + width + 'vw' : null;\n\n var focusX = attachment.getIn(['meta', 'focus', 'x']) || 0;\n var focusY = attachment.getIn(['meta', 'focus', 'y']) || 0;\n var x = (focusX / 2 + .5) * 100;\n var y = (focusY / -2 + .5) * 100;\n\n thumbnail = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n className: 'media-gallery__item-thumbnail',\n href: attachment.get('remote_url') || originalUrl,\n onClick: this.handleClick,\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n src: previewUrl,\n srcSet: srcSet,\n sizes: sizes,\n alt: attachment.get('description'),\n title: attachment.get('description'),\n style: { objectPosition: x + '% ' + y + '%' }\n }));\n } else if (attachment.get('type') === 'gifv') {\n var autoPlay = !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"a\" /* isIOS */])() && __WEBPACK_IMPORTED_MODULE_10__initial_state__[\"a\" /* autoPlayGif */];\n\n thumbnail = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_9_classnames___default()('media-gallery__gifv', { autoplay: autoPlay })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('video', {\n className: 'media-gallery__item-gifv-thumbnail',\n 'aria-label': attachment.get('description'),\n role: 'application',\n src: attachment.get('url'),\n onClick: this.handleClick,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n autoPlay: autoPlay,\n loop: true,\n muted: true\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'media-gallery__gifv__label'\n }, void 0, 'GIF'));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_9_classnames___default()('media-gallery__item', { standalone: standalone }),\n style: { left: left, top: top, right: right, bottom: bottom, width: width + '%', height: height + '%' }\n }, attachment.get('id'), thumbnail);\n };\n\n return Item;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n standalone: false,\n index: 0,\n size: 1\n}, _temp2);\n\nvar MediaGallery = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class2 = (_temp4 = _class3 = function (_React$PureComponent2) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(MediaGallery, _React$PureComponent2);\n\n function MediaGallery() {\n var _temp3, _this2, _ret2;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, MediaGallery);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp3 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.state = {\n visible: !_this2.props.sensitive || __WEBPACK_IMPORTED_MODULE_10__initial_state__[\"f\" /* displaySensitiveMedia */]\n }, _this2.handleOpen = function () {\n _this2.setState({ visible: !_this2.state.visible });\n }, _this2.handleClick = function (index) {\n _this2.props.onOpenMedia(_this2.props.media, index);\n }, _this2.handleRef = function (node) {\n if (node /*&& this.isStandaloneEligible()*/) {\n // offsetWidth triggers a layout, so only calculate when we need to\n _this2.setState({\n width: node.offsetWidth\n });\n }\n }, _temp3), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n }\n\n MediaGallery.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (!Object(__WEBPACK_IMPORTED_MODULE_5_immutable__[\"is\"])(nextProps.media, this.props.media)) {\n this.setState({ visible: !nextProps.sensitive });\n }\n };\n\n MediaGallery.prototype.isStandaloneEligible = function isStandaloneEligible() {\n var _props2 = this.props,\n media = _props2.media,\n standalone = _props2.standalone;\n\n return standalone && media.size === 1 && media.getIn([0, 'meta', 'small', 'aspect']);\n };\n\n MediaGallery.prototype.render = function render() {\n var _this3 = this;\n\n var _props3 = this.props,\n media = _props3.media,\n intl = _props3.intl,\n sensitive = _props3.sensitive,\n height = _props3.height;\n var _state = this.state,\n width = _state.width,\n visible = _state.visible;\n\n\n var children = void 0;\n\n var style = {};\n\n if (this.isStandaloneEligible()) {\n if (width) {\n style.height = width / this.props.media.getIn([0, 'meta', 'small', 'aspect']);\n }\n } else if (width) {\n style.height = width / (16 / 9);\n } else {\n style.height = height;\n }\n\n if (!visible) {\n var warning = void 0;\n\n if (sensitive) {\n warning = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.sensitive_warning',\n defaultMessage: 'Sensitive content'\n });\n } else {\n warning = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.media_hidden',\n defaultMessage: 'Media hidden'\n });\n }\n\n children = __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'button',\n { type: 'button', className: 'media-spoiler', onClick: this.handleOpen, style: style, ref: this.handleRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'media-spoiler__warning'\n }, void 0, warning),\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'media-spoiler__trigger'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'status.sensitive_toggle',\n defaultMessage: 'Click to view'\n }))\n );\n } else {\n var size = media.take(4).size;\n\n if (this.isStandaloneEligible()) {\n children = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Item, {\n standalone: true,\n onClick: this.handleClick,\n attachment: media.get(0)\n });\n } else {\n children = media.take(4).map(function (attachment, i) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Item, {\n onClick: _this3.handleClick,\n attachment: attachment,\n index: i,\n size: size\n }, attachment.get('id'));\n });\n }\n }\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: 'media-gallery', style: style, ref: this.handleRef },\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: __WEBPACK_IMPORTED_MODULE_9_classnames___default()('spoiler-button', { 'spoiler-button--visible': visible })\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.toggle_visible),\n icon: visible ? 'eye' : 'eye-slash',\n overlay: true,\n onClick: this.handleOpen\n })),\n children\n );\n };\n\n return MediaGallery;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class3.defaultProps = {\n standalone: false\n}, _temp4)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 282:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export MUTES_FETCH_REQUEST */\n/* unused harmony export MUTES_FETCH_SUCCESS */\n/* unused harmony export MUTES_FETCH_FAIL */\n/* unused harmony export MUTES_EXPAND_REQUEST */\n/* unused harmony export MUTES_EXPAND_SUCCESS */\n/* unused harmony export MUTES_EXPAND_FAIL */\n/* unused harmony export MUTES_INIT_MODAL */\n/* unused harmony export MUTES_TOGGLE_HIDE_NOTIFICATIONS */\n/* unused harmony export fetchMutes */\n/* unused harmony export fetchMutesRequest */\n/* unused harmony export fetchMutesSuccess */\n/* unused harmony export fetchMutesFail */\n/* unused harmony export expandMutes */\n/* unused harmony export expandMutesRequest */\n/* unused harmony export expandMutesSuccess */\n/* unused harmony export expandMutesFail */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initMuteModal;\n/* unused harmony export toggleHideNotifications */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__importer__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modal__ = __webpack_require__(26);\n\n\n\n\n\nvar MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nvar MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nvar MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nvar MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nvar MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nvar MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nvar MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nvar MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nfunction fetchMutes() {\n return function (dispatch, getState) {\n dispatch(fetchMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get('/api/v1/mutes').then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(fetchMutesFail(error));\n });\n };\n};\n\nfunction fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST\n };\n};\n\nfunction fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error: error\n };\n};\n\nfunction expandMutes() {\n return function (dispatch, getState) {\n var url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).get(url).then(function (response) {\n var next = Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"b\" /* getLinks */])(response).refs.find(function (link) {\n return link.rel === 'next';\n });\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__importer__[\"g\" /* importFetchedAccounts */])(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__accounts__[\"y\" /* fetchRelationships */])(response.data.map(function (item) {\n return item.id;\n })));\n }).catch(function (error) {\n return dispatch(expandMutesFail(error));\n });\n };\n};\n\nfunction expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST\n };\n};\n\nfunction expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts: accounts,\n next: next\n };\n};\n\nfunction expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error: error\n };\n};\n\nfunction initMuteModal(account) {\n return function (dispatch) {\n dispatch({\n type: MUTES_INIT_MODAL,\n account: account\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__modal__[\"d\" /* openModal */])('MUTE'));\n };\n}\n\nfunction toggleHideNotifications() {\n return function (dispatch) {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n/***/ }),\n\n/***/ 283:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Column; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_lodash_debounce__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__column_header__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__scroll__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__is_mobile__ = __webpack_require__(35);\n\n\n\n\n\n\n\n\n\n\n\nvar Column = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Column, _React$PureComponent);\n\n function Column() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Column);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleHeaderClick = function () {\n var scrollable = _this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n _this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n }, _this.handleScroll = __WEBPACK_IMPORTED_MODULE_4_lodash_debounce___default()(function () {\n if (typeof _this._interruptScrollAnimation !== 'undefined') {\n _this._interruptScrollAnimation();\n }\n }, 200), _this.setRef = function (c) {\n _this.node = c;\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Column.prototype.scrollTop = function scrollTop() {\n var scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = Object(__WEBPACK_IMPORTED_MODULE_7__scroll__[\"b\" /* scrollTop */])(scrollable);\n };\n\n Column.prototype.render = function render() {\n var _props = this.props,\n heading = _props.heading,\n icon = _props.icon,\n children = _props.children,\n active = _props.active,\n hideHeadingOnMobile = _props.hideHeadingOnMobile;\n\n\n var showHeading = heading && (!hideHeadingOnMobile || hideHeadingOnMobile && !Object(__WEBPACK_IMPORTED_MODULE_8__is_mobile__[\"b\" /* isMobile */])(window.innerWidth));\n\n var columnHeaderId = showHeading && heading.replace(/ /g, '-');\n var header = showHeading && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__column_header__[\"a\" /* default */], {\n icon: icon,\n active: active,\n type: heading,\n onClick: this.handleHeaderClick,\n columnHeaderId: columnHeaderId\n });\n return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(\n 'div',\n {\n ref: this.setRef,\n role: 'region',\n 'aria-labelledby': columnHeaderId,\n className: 'column',\n onScroll: this.handleScroll\n },\n header,\n children\n );\n };\n\n return Column;\n}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 284:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export REPORT_INIT */\n/* unused harmony export REPORT_CANCEL */\n/* unused harmony export REPORT_SUBMIT_REQUEST */\n/* unused harmony export REPORT_SUBMIT_SUCCESS */\n/* unused harmony export REPORT_SUBMIT_FAIL */\n/* unused harmony export REPORT_STATUS_TOGGLE */\n/* unused harmony export REPORT_COMMENT_CHANGE */\n/* unused harmony export REPORT_FORWARD_CHANGE */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = initReport;\n/* unused harmony export cancelReport */\n/* unused harmony export toggleStatusReport */\n/* unused harmony export submitReport */\n/* unused harmony export submitReportRequest */\n/* unused harmony export submitReportSuccess */\n/* unused harmony export submitReportFail */\n/* unused harmony export changeReportComment */\n/* unused harmony export changeReportForward */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__modal__ = __webpack_require__(26);\n\n\n\nvar REPORT_INIT = 'REPORT_INIT';\nvar REPORT_CANCEL = 'REPORT_CANCEL';\n\nvar REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nvar REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nvar REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nvar REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nvar REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nvar REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nfunction initReport(account, status) {\n return function (dispatch) {\n dispatch({\n type: REPORT_INIT,\n account: account,\n status: status\n });\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"d\" /* openModal */])('REPORT'));\n };\n};\n\nfunction cancelReport() {\n return {\n type: REPORT_CANCEL\n };\n};\n\nfunction toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId: statusId,\n checked: checked\n };\n};\n\nfunction submitReport() {\n return function (dispatch, getState) {\n dispatch(submitReportRequest());\n\n Object(__WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */])(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward'])\n }).then(function (response) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__modal__[\"c\" /* closeModal */])());\n dispatch(submitReportSuccess(response.data));\n }).catch(function (error) {\n return dispatch(submitReportFail(error));\n });\n };\n};\n\nfunction submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST\n };\n};\n\nfunction submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report: report\n };\n};\n\nfunction submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error: error\n };\n};\n\nfunction changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment: comment\n };\n};\n\nfunction changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward: forward\n };\n};\n\n/***/ }),\n\n/***/ 285:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(152);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(11);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.id)\n };\n };\n\n return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n var intl = _ref.intl;\n return {\n onReply: function onReply(status, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n },\n onModalReblog: function onModalReblog(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"l\" /* reblog */])(status));\n },\n onReblog: function onReblog(status, e) {\n if (status.get('reblogged')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n this.onModalReblog(status);\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n }\n }\n },\n onFavourite: function onFavourite(status) {\n if (status.get('favourited')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"i\" /* favourite */])(status));\n }\n },\n onDelete: function onDelete(status) {\n if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n },\n onMention: function onMention(account, router) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n },\n onOpenMedia: function onOpenMedia(media, index) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n },\n onOpenVideo: function onOpenVideo(media, time) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n },\n onBlock: function onBlock(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n },\n onReport: function onReport(status) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n },\n onMute: function onMute(account) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"a\" /* initMuteModal */])(account));\n },\n onMuteConversation: function onMuteConversation(status) {\n if (status.get('muted')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n },\n onToggleHidden: function onToggleHidden(status) {\n if (status.get('hidden')) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ColumnBackButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\nvar ColumnBackButton = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ColumnBackButton, _React$PureComponent);\n\n function ColumnBackButton() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ColumnBackButton);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function () {\n if (window.history && window.history.length === 1) {\n _this.context.router.history.push('/');\n } else {\n _this.context.router.history.goBack();\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ColumnBackButton.prototype.render = function render() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleClick,\n className: 'column-back-button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-fw fa-chevron-left column-back-button__icon'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'column_back_button.label',\n defaultMessage: 'Back'\n }));\n };\n\n return ColumnBackButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 332:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Card; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_punycode__ = __webpack_require__(333);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_punycode___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_punycode__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_classnames__);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\nvar IDNA_PREFIX = 'xn--';\n\nvar decodeIDNA = function decodeIDNA(domain) {\n return domain.split('.').map(function (part) {\n return part.indexOf(IDNA_PREFIX) === 0 ? __WEBPACK_IMPORTED_MODULE_6_punycode___default.a.decode(part.slice(IDNA_PREFIX.length)) : part;\n }).join('.');\n};\n\nvar getHostname = function getHostname(url) {\n var parser = document.createElement('a');\n parser.href = url;\n return parser.hostname;\n};\n\nvar trim = function trim(text, len) {\n var cut = text.indexOf(' ', len);\n\n if (cut === -1) {\n return text;\n }\n\n return text.substring(0, cut) + (text.length > len ? '…' : '');\n};\n\nvar domParser = new DOMParser();\n\nvar addAutoPlay = function addAutoPlay(html) {\n var document = domParser.parseFromString(html, 'text/html').documentElement;\n var iframe = document.querySelector('iframe');\n\n if (iframe) {\n if (iframe.src.indexOf('?') !== -1) {\n iframe.src += '&';\n } else {\n iframe.src += '?';\n }\n\n iframe.src += 'autoplay=1&auto_play=1';\n\n // DOM parser creates html/body elements around original HTML fragment,\n // so we need to get innerHTML out of the body and not the entire document\n return document.querySelector('body').innerHTML;\n }\n\n return html;\n};\n\nvar Card = (_temp2 = _class = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Card, _React$PureComponent);\n\n function Card() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Card);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.state = {\n width: 280,\n embedded: false\n }, _this.handlePhotoClick = function () {\n var _this$props = _this.props,\n card = _this$props.card,\n onOpenMedia = _this$props.onOpenMedia;\n\n\n onOpenMedia(__WEBPACK_IMPORTED_MODULE_5_immutable___default.a.fromJS([{\n type: 'image',\n url: card.get('embed_url'),\n description: card.get('title'),\n meta: {\n original: {\n width: card.get('width'),\n height: card.get('height')\n }\n }\n }]), 0);\n }, _this.handleEmbedClick = function () {\n var card = _this.props.card;\n\n\n if (card.get('type') === 'photo') {\n _this.handlePhotoClick();\n } else {\n _this.setState({ embedded: true });\n }\n }, _this.setRef = function (c) {\n if (c) {\n _this.setState({ width: c.offsetWidth });\n }\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Card.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (this.props.card !== nextProps.card) {\n this.setState({ embedded: false });\n }\n };\n\n Card.prototype.renderVideo = function renderVideo() {\n var card = this.props.card;\n\n var content = { __html: addAutoPlay(card.get('html')) };\n var width = this.state.width;\n\n var ratio = card.get('width') / card.get('height');\n var height = card.get('width') > card.get('height') ? width / ratio : width * ratio;\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement('div', {\n ref: this.setRef,\n className: 'status-card__image status-card-video',\n dangerouslySetInnerHTML: content,\n style: { height: height }\n });\n };\n\n Card.prototype.render = function render() {\n var _props = this.props,\n card = _props.card,\n maxDescription = _props.maxDescription;\n var _state = this.state,\n width = _state.width,\n embedded = _state.embedded;\n\n\n if (card === null) {\n return null;\n }\n\n var provider = card.get('provider_name').length === 0 ? decodeIDNA(getHostname(card.get('url'))) : card.get('provider_name');\n var horizontal = card.get('width') > card.get('height') && card.get('width') + 100 >= width || card.get('type') !== 'link';\n var className = __WEBPACK_IMPORTED_MODULE_7_classnames___default()('status-card', { horizontal: horizontal });\n var interactive = card.get('type') !== 'link';\n var title = interactive ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n className: 'status-card__title',\n href: card.get('url'),\n title: card.get('title'),\n rel: 'noopener',\n target: '_blank'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, card.get('title'))) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n className: 'status-card__title',\n title: card.get('title')\n }, void 0, card.get('title'));\n var ratio = card.get('width') / card.get('height');\n var height = card.get('width') > card.get('height') ? width / ratio : width * ratio;\n\n var description = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'status-card__content'\n }, void 0, title, !horizontal && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('p', {\n className: 'status-card__description'\n }, void 0, trim(card.get('description') || '', maxDescription)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'status-card__host'\n }, void 0, provider));\n\n var embed = '';\n var thumbnail = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n style: { backgroundImage: 'url(' + card.get('image') + ')', width: horizontal ? width : null, height: horizontal ? height : null },\n className: 'status-card__image-image'\n });\n\n if (interactive) {\n if (embedded) {\n embed = this.renderVideo();\n } else {\n var iconVariant = 'play';\n\n if (card.get('type') === 'photo') {\n iconVariant = 'search-plus';\n }\n\n embed = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'status-card__image'\n }, void 0, thumbnail, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'status-card__actions'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n onClick: this.handleEmbedClick\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-' + iconVariant\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: card.get('url'),\n target: '_blank',\n rel: 'noopener'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-external-link'\n })))));\n }\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: className, ref: this.setRef },\n embed,\n description\n );\n } else if (card.get('image')) {\n embed = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'status-card__image'\n }, void 0, thumbnail);\n }\n\n return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'a',\n { href: card.get('url'), className: className, target: '_blank', rel: 'noopener', ref: this.setRef },\n embed,\n description\n );\n };\n\n return Card;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class.defaultProps = {\n maxDescription: 50\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 333:\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(module, global) {var __WEBPACK_AMD_DEFINE_RESULT__;/*! https://mths.be/punycode v1.4.1 by @mathias */\n;(function (root) {\n\n\t/** Detect free variables */\n\tvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\tvar freeModule = typeof module == 'object' && module && !module.nodeType && module;\n\tvar freeGlobal = typeof global == 'object' && global;\n\tif (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal || freeGlobal.self === freeGlobal) {\n\t\troot = freeGlobal;\n\t}\n\n\t/**\n * The `punycode` object.\n * @name punycode\n * @type Object\n */\n\tvar punycode,\n\n\n\t/** Highest positive signed 32-bit float value */\n\tmaxInt = 2147483647,\n\t // aka. 0x7FFFFFFF or 2^31-1\n\n\t/** Bootstring parameters */\n\tbase = 36,\n\t tMin = 1,\n\t tMax = 26,\n\t skew = 38,\n\t damp = 700,\n\t initialBias = 72,\n\t initialN = 128,\n\t // 0x80\n\tdelimiter = '-',\n\t // '\\x2D'\n\n\t/** Regular expressions */\n\tregexPunycode = /^xn--/,\n\t regexNonASCII = /[^\\x20-\\x7E]/,\n\t // unprintable ASCII chars + non-ASCII chars\n\tregexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g,\n\t // RFC 3490 separators\n\n\t/** Error messages */\n\terrors = {\n\t\t'overflow': 'Overflow: input needs wider integers to process',\n\t\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t\t'invalid-input': 'Invalid input'\n\t},\n\n\n\t/** Convenience shortcuts */\n\tbaseMinusTMin = base - tMin,\n\t floor = Math.floor,\n\t stringFromCharCode = String.fromCharCode,\n\n\n\t/** Temporary variable */\n\tkey;\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/**\n * A generic error utility function.\n * @private\n * @param {String} type The error type.\n * @returns {Error} Throws a `RangeError` with the applicable error message.\n */\n\tfunction error(type) {\n\t\tthrow new RangeError(errors[type]);\n\t}\n\n\t/**\n * A generic `Array#map` utility function.\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} callback The function that gets called for every array\n * item.\n * @returns {Array} A new array of values returned by the callback function.\n */\n\tfunction map(array, fn) {\n\t\tvar length = array.length;\n\t\tvar result = [];\n\t\twhile (length--) {\n\t\t\tresult[length] = fn(array[length]);\n\t\t}\n\t\treturn result;\n\t}\n\n\t/**\n * A simple `Array#map`-like wrapper to work with domain name strings or email\n * addresses.\n * @private\n * @param {String} domain The domain name or email address.\n * @param {Function} callback The function that gets called for every\n * character.\n * @returns {Array} A new string of characters returned by the callback\n * function.\n */\n\tfunction mapDomain(string, fn) {\n\t\tvar parts = string.split('@');\n\t\tvar result = '';\n\t\tif (parts.length > 1) {\n\t\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t\t// the local part (i.e. everything up to `@`) intact.\n\t\t\tresult = parts[0] + '@';\n\t\t\tstring = parts[1];\n\t\t}\n\t\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\t\tstring = string.replace(regexSeparators, '\\x2E');\n\t\tvar labels = string.split('.');\n\t\tvar encoded = map(labels, fn).join('.');\n\t\treturn result + encoded;\n\t}\n\n\t/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n * @see `punycode.ucs2.encode`\n * @see <https://mathiasbynens.be/notes/javascript-encoding>\n * @memberOf punycode.ucs2\n * @name decode\n * @param {String} string The Unicode input string (UCS-2).\n * @returns {Array} The new array of code points.\n */\n\tfunction ucs2decode(string) {\n\t\tvar output = [],\n\t\t counter = 0,\n\t\t length = string.length,\n\t\t value,\n\t\t extra;\n\t\twhile (counter < length) {\n\t\t\tvalue = string.charCodeAt(counter++);\n\t\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t\t// high surrogate, and there is a next character\n\t\t\t\textra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) {\n\t\t\t\t\t// low surrogate\n\t\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t\t} else {\n\t\t\t\t\t// unmatched surrogate; only append this code unit, in case the next\n\t\t\t\t\t// code unit is the high surrogate of a surrogate pair\n\t\t\t\t\toutput.push(value);\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toutput.push(value);\n\t\t\t}\n\t\t}\n\t\treturn output;\n\t}\n\n\t/**\n * Creates a string based on an array of numeric code points.\n * @see `punycode.ucs2.decode`\n * @memberOf punycode.ucs2\n * @name encode\n * @param {Array} codePoints The array of numeric code points.\n * @returns {String} The new Unicode string (UCS-2).\n */\n\tfunction ucs2encode(array) {\n\t\treturn map(array, function (value) {\n\t\t\tvar output = '';\n\t\t\tif (value > 0xFFFF) {\n\t\t\t\tvalue -= 0x10000;\n\t\t\t\toutput += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);\n\t\t\t\tvalue = 0xDC00 | value & 0x3FF;\n\t\t\t}\n\t\t\toutput += stringFromCharCode(value);\n\t\t\treturn output;\n\t\t}).join('');\n\t}\n\n\t/**\n * Converts a basic code point into a digit/integer.\n * @see `digitToBasic()`\n * @private\n * @param {Number} codePoint The basic numeric code point value.\n * @returns {Number} The numeric value of a basic code point (for use in\n * representing integers) in the range `0` to `base - 1`, or `base` if\n * the code point does not represent a value.\n */\n\tfunction basicToDigit(codePoint) {\n\t\tif (codePoint - 48 < 10) {\n\t\t\treturn codePoint - 22;\n\t\t}\n\t\tif (codePoint - 65 < 26) {\n\t\t\treturn codePoint - 65;\n\t\t}\n\t\tif (codePoint - 97 < 26) {\n\t\t\treturn codePoint - 97;\n\t\t}\n\t\treturn base;\n\t}\n\n\t/**\n * Converts a digit/integer into a basic code point.\n * @see `basicToDigit()`\n * @private\n * @param {Number} digit The numeric value of a basic code point.\n * @returns {Number} The basic code point whose value (when used for\n * representing integers) is `digit`, which needs to be in the range\n * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n * used; else, the lowercase form is used. The behavior is undefined\n * if `flag` is non-zero and `digit` has no uppercase form.\n */\n\tfunction digitToBasic(digit, flag) {\n\t\t// 0..25 map to ASCII a..z or A..Z\n\t\t// 26..35 map to ASCII 0..9\n\t\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n\t}\n\n\t/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n * @private\n */\n\tfunction adapt(delta, numPoints, firstTime) {\n\t\tvar k = 0;\n\t\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\t\tdelta += floor(delta / numPoints);\n\t\tfor (; /* no initialization */delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\t\tdelta = floor(delta / baseMinusTMin);\n\t\t}\n\t\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n\t}\n\n\t/**\n * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n * symbols.\n * @memberOf punycode\n * @param {String} input The Punycode string of ASCII-only symbols.\n * @returns {String} The resulting string of Unicode symbols.\n */\n\tfunction decode(input) {\n\t\t// Don't use UCS-2\n\t\tvar output = [],\n\t\t inputLength = input.length,\n\t\t out,\n\t\t i = 0,\n\t\t n = initialN,\n\t\t bias = initialBias,\n\t\t basic,\n\t\t j,\n\t\t index,\n\t\t oldi,\n\t\t w,\n\t\t k,\n\t\t digit,\n\t\t t,\n\n\t\t/** Cached calculation results */\n\t\tbaseMinusT;\n\n\t\t// Handle the basic code points: let `basic` be the number of input code\n\t\t// points before the last delimiter, or `0` if there is none, then copy\n\t\t// the first basic code points to the output.\n\n\t\tbasic = input.lastIndexOf(delimiter);\n\t\tif (basic < 0) {\n\t\t\tbasic = 0;\n\t\t}\n\n\t\tfor (j = 0; j < basic; ++j) {\n\t\t\t// if it's not a basic code point\n\t\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\t\terror('not-basic');\n\t\t\t}\n\t\t\toutput.push(input.charCodeAt(j));\n\t\t}\n\n\t\t// Main decoding loop: start just after the last delimiter if any basic code\n\t\t// points were copied; start at the beginning otherwise.\n\n\t\tfor (index = basic > 0 ? basic + 1 : 0; index < inputLength;) /* no final expression */{\n\n\t\t\t// `index` is the index of the next character to be consumed.\n\t\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t\t// which gets added to `i`. The overflow checking is easier\n\t\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t\t// value at the end to obtain `delta`.\n\t\t\tfor (oldi = i, w = 1, k = base;; /* no condition */k += base) {\n\n\t\t\t\tif (index >= inputLength) {\n\t\t\t\t\terror('invalid-input');\n\t\t\t\t}\n\n\t\t\t\tdigit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\ti += digit * w;\n\t\t\t\tt = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;\n\n\t\t\t\tif (digit < t) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tbaseMinusT = base - t;\n\t\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tw *= baseMinusT;\n\t\t\t}\n\n\t\t\tout = output.length + 1;\n\t\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t\t// incrementing `n` each time, so we'll fix that now:\n\t\t\tif (floor(i / out) > maxInt - n) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tn += floor(i / out);\n\t\t\ti %= out;\n\n\t\t\t// Insert `n` at position `i` of the output\n\t\t\toutput.splice(i++, 0, n);\n\t\t}\n\n\t\treturn ucs2encode(output);\n\t}\n\n\t/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n * @memberOf punycode\n * @param {String} input The string of Unicode symbols.\n * @returns {String} The resulting Punycode string of ASCII-only symbols.\n */\n\tfunction encode(input) {\n\t\tvar n,\n\t\t delta,\n\t\t handledCPCount,\n\t\t basicLength,\n\t\t bias,\n\t\t j,\n\t\t m,\n\t\t q,\n\t\t k,\n\t\t t,\n\t\t currentValue,\n\t\t output = [],\n\n\t\t/** `inputLength` will hold the number of code points in `input`. */\n\t\tinputLength,\n\n\t\t/** Cached calculation results */\n\t\thandledCPCountPlusOne,\n\t\t baseMinusT,\n\t\t qMinusT;\n\n\t\t// Convert the input in UCS-2 to Unicode\n\t\tinput = ucs2decode(input);\n\n\t\t// Cache the length\n\t\tinputLength = input.length;\n\n\t\t// Initialize the state\n\t\tn = initialN;\n\t\tdelta = 0;\n\t\tbias = initialBias;\n\n\t\t// Handle the basic code points\n\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\tcurrentValue = input[j];\n\t\t\tif (currentValue < 0x80) {\n\t\t\t\toutput.push(stringFromCharCode(currentValue));\n\t\t\t}\n\t\t}\n\n\t\thandledCPCount = basicLength = output.length;\n\n\t\t// `handledCPCount` is the number of code points that have been handled;\n\t\t// `basicLength` is the number of basic code points.\n\n\t\t// Finish the basic string - if it is not empty - with a delimiter\n\t\tif (basicLength) {\n\t\t\toutput.push(delimiter);\n\t\t}\n\n\t\t// Main encoding loop:\n\t\twhile (handledCPCount < inputLength) {\n\n\t\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t\t// larger one:\n\t\t\tfor (m = maxInt, j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\t\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\t\tm = currentValue;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Increase `delta` enough to advance the decoder's <n,i> state to <m,0>,\n\t\t\t// but guard against overflow\n\t\t\thandledCPCountPlusOne = handledCPCount + 1;\n\t\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\t\tn = m;\n\n\t\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\n\t\t\t\tif (currentValue < n && ++delta > maxInt) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tif (currentValue == n) {\n\t\t\t\t\t// Represent delta as a generalized variable-length integer\n\t\t\t\t\tfor (q = delta, k = base;; /* no condition */k += base) {\n\t\t\t\t\t\tt = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;\n\t\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tqMinusT = q - t;\n\t\t\t\t\t\tbaseMinusT = base - t;\n\t\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)));\n\t\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t\t}\n\n\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\t\tdelta = 0;\n\t\t\t\t\t++handledCPCount;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t++delta;\n\t\t\t++n;\n\t\t}\n\t\treturn output.join('');\n\t}\n\n\t/**\n * Converts a Punycode string representing a domain name or an email address\n * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n * it doesn't matter if you call it on a string that has already been\n * converted to Unicode.\n * @memberOf punycode\n * @param {String} input The Punycoded domain name or email address to\n * convert to Unicode.\n * @returns {String} The Unicode representation of the given Punycode\n * string.\n */\n\tfunction toUnicode(input) {\n\t\treturn mapDomain(input, function (string) {\n\t\t\treturn regexPunycode.test(string) ? decode(string.slice(4).toLowerCase()) : string;\n\t\t});\n\t}\n\n\t/**\n * Converts a Unicode string representing a domain name or an email address to\n * Punycode. Only the non-ASCII parts of the domain name will be converted,\n * i.e. it doesn't matter if you call it with a domain that's already in\n * ASCII.\n * @memberOf punycode\n * @param {String} input The domain name or email address to convert, as a\n * Unicode string.\n * @returns {String} The Punycode representation of the given domain name or\n * email address.\n */\n\tfunction toASCII(input) {\n\t\treturn mapDomain(input, function (string) {\n\t\t\treturn regexNonASCII.test(string) ? 'xn--' + encode(string) : string;\n\t\t});\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/** Define the public API */\n\tpunycode = {\n\t\t/**\n * A string representing the current Punycode.js version number.\n * @memberOf punycode\n * @type String\n */\n\t\t'version': '1.4.1',\n\t\t/**\n * An object of methods to convert from JavaScript's internal character\n * representation (UCS-2) to Unicode code points, and back.\n * @see <https://mathiasbynens.be/notes/javascript-encoding>\n * @memberOf punycode\n * @type Object\n */\n\t\t'ucs2': {\n\t\t\t'decode': ucs2decode,\n\t\t\t'encode': ucs2encode\n\t\t},\n\t\t'decode': decode,\n\t\t'encode': encode,\n\t\t'toASCII': toASCII,\n\t\t'toUnicode': toUnicode\n\t};\n\n\t/** Expose `punycode` */\n\t// Some AMD build optimizers, like r.js, check for specific condition patterns\n\t// like the following:\n\tif (true) {\n\t\t!(__WEBPACK_AMD_DEFINE_RESULT__ = (function () {\n\t\t\treturn punycode;\n\t\t}).call(exports, __webpack_require__, exports, module),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else if (freeExports && freeModule) {\n\t\tif (module.exports == freeExports) {\n\t\t\t// in Node.js, io.js, or RingoJS v0.8.0+\n\t\t\tfreeModule.exports = punycode;\n\t\t} else {\n\t\t\t// in Narwhal or RingoJS v0.7.0-\n\t\t\tfor (key in punycode) {\n\t\t\t\tpunycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// in Rhino or a web browser\n\t\troot.punycode = punycode;\n\t}\n})(this);\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(73)(module), __webpack_require__(45)))\n\n/***/ }),\n\n/***/ 810:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Status; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_missing_indicator__ = __webpack_require__(843);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_detailed_status__ = __webpack_require__(962);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_action_bar__ = __webpack_require__(964);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__ui_components_column__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_interactions__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__actions_compose__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__actions_mutes__ = __webpack_require__(282);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__actions_reports__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__selectors__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20_react_router_scroll_4__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__components_column_back_button__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__components_column_header__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__containers_status_container__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_25_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27_react_hotkeys__ = __webpack_require__(156);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27_react_hotkeys___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_27_react_hotkeys__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_28__initial_state__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__ = __webpack_require__(153);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_25_react_intl__[\"f\" /* defineMessages */])({\n deleteConfirm: {\n 'id': 'confirmations.delete.confirm',\n 'defaultMessage': 'Delete'\n },\n deleteMessage: {\n 'id': 'confirmations.delete.message',\n 'defaultMessage': 'Are you sure you want to delete this status?'\n },\n blockConfirm: {\n 'id': 'confirmations.block.confirm',\n 'defaultMessage': 'Block'\n },\n revealAll: {\n 'id': 'status.show_more_all',\n 'defaultMessage': 'Show more for all'\n },\n hideAll: {\n 'id': 'status.show_less_all',\n 'defaultMessage': 'Show less for all'\n }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n var getStatus = Object(__WEBPACK_IMPORTED_MODULE_19__selectors__[\"e\" /* makeGetStatus */])();\n\n var mapStateToProps = function mapStateToProps(state, props) {\n return {\n status: getStatus(state, props.params.statusId),\n ancestorsIds: state.getIn(['contexts', 'ancestors', props.params.statusId]),\n descendantsIds: state.getIn(['contexts', 'descendants', props.params.statusId])\n };\n };\n\n return mapStateToProps;\n};\n\nvar Status = (_dec = Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(makeMapStateToProps), Object(__WEBPACK_IMPORTED_MODULE_25_react_intl__[\"g\" /* injectIntl */])(_class = _dec(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Status, _ImmutablePureCompone);\n\n function Status() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Status);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n fullscreen: false\n }, _this.handleFavouriteClick = function (status) {\n if (status.get('favourited')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_interactions__[\"m\" /* unfavourite */])(status));\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_interactions__[\"i\" /* favourite */])(status));\n }\n }, _this.handleReplyClick = function (status) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_15__actions_compose__[\"T\" /* replyCompose */])(status, _this.context.router.history));\n }, _this.handleModalReblog = function (status) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_interactions__[\"l\" /* reblog */])(status));\n }, _this.handleReblogClick = function (status, e) {\n if (status.get('reblogged')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_interactions__[\"n\" /* unreblog */])(status));\n } else {\n if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_28__initial_state__[\"b\" /* boostModal */]) {\n _this.handleModalReblog(status);\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: _this.handleModalReblog }));\n }\n }\n }, _this.handleDeleteClick = function (status) {\n var _this$props = _this.props,\n dispatch = _this$props.dispatch,\n intl = _this$props.intl;\n\n\n if (!__WEBPACK_IMPORTED_MODULE_28__initial_state__[\"e\" /* deleteModal */]) {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n } else {\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n }\n }));\n }\n }, _this.handleMentionClick = function (account, router) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_15__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n }, _this.handleOpenMedia = function (media, index) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n }, _this.handleOpenVideo = function (media, time) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n }, _this.handleMuteClick = function (account) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_17__actions_mutes__[\"a\" /* initMuteModal */])(account));\n }, _this.handleConversationMuteClick = function (status) {\n if (status.get('muted')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n }\n }, _this.handleToggleHidden = function (status) {\n if (status.get('hidden')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n }\n }, _this.handleToggleAll = function () {\n var _this$props2 = _this.props,\n status = _this$props2.status,\n ancestorsIds = _this$props2.ancestorsIds,\n descendantsIds = _this$props2.descendantsIds;\n\n var statusIds = [status.get('id')].concat(ancestorsIds.toJS(), descendantsIds.toJS());\n\n if (status.get('hidden')) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"j\" /* revealStatus */])(statusIds));\n } else {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"h\" /* hideStatus */])(statusIds));\n }\n }, _this.handleBlockClick = function (account) {\n var _this$props3 = _this.props,\n dispatch = _this$props3.dispatch,\n intl = _this$props3.intl;\n\n\n dispatch(Object(__WEBPACK_IMPORTED_MODULE_24__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_25_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'confirmations.block.message',\n defaultMessage: 'Are you sure you want to block {name}?',\n values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n }),\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: function onConfirm() {\n return dispatch(Object(__WEBPACK_IMPORTED_MODULE_16__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n }\n }));\n }, _this.handleReport = function (status) {\n _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_18__actions_reports__[\"a\" /* initReport */])(status.get('account'), status));\n }, _this.handleHotkeyMoveUp = function () {\n _this.handleMoveUp(_this.props.status.get('id'));\n }, _this.handleHotkeyMoveDown = function () {\n _this.handleMoveDown(_this.props.status.get('id'));\n }, _this.handleHotkeyReply = function (e) {\n e.preventDefault();\n _this.handleReplyClick(_this.props.status);\n }, _this.handleHotkeyFavourite = function () {\n _this.handleFavouriteClick(_this.props.status);\n }, _this.handleHotkeyBoost = function () {\n _this.handleReblogClick(_this.props.status);\n }, _this.handleHotkeyMention = function (e) {\n e.preventDefault();\n _this.handleMentionClick(_this.props.status);\n }, _this.handleHotkeyOpenProfile = function () {\n _this.context.router.history.push('/accounts/' + _this.props.status.getIn(['account', 'id']));\n }, _this.handleMoveUp = function (id) {\n var _this$props4 = _this.props,\n status = _this$props4.status,\n ancestorsIds = _this$props4.ancestorsIds,\n descendantsIds = _this$props4.descendantsIds;\n\n\n if (id === status.get('id')) {\n _this._selectChild(ancestorsIds.size - 1);\n } else {\n var index = ancestorsIds.indexOf(id);\n\n if (index === -1) {\n index = descendantsIds.indexOf(id);\n _this._selectChild(ancestorsIds.size + index);\n } else {\n _this._selectChild(index - 1);\n }\n }\n }, _this.handleMoveDown = function (id) {\n var _this$props5 = _this.props,\n status = _this$props5.status,\n ancestorsIds = _this$props5.ancestorsIds,\n descendantsIds = _this$props5.descendantsIds;\n\n\n if (id === status.get('id')) {\n _this._selectChild(ancestorsIds.size + 1);\n } else {\n var index = ancestorsIds.indexOf(id);\n\n if (index === -1) {\n index = descendantsIds.indexOf(id);\n _this._selectChild(ancestorsIds.size + index + 2);\n } else {\n _this._selectChild(index + 1);\n }\n }\n }, _this.setRef = function (c) {\n _this.node = c;\n }, _this.onFullScreenChange = function () {\n _this.setState({ fullscreen: Object(__WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__[\"d\" /* isFullscreen */])() });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n Status.prototype.componentWillMount = function componentWillMount() {\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"g\" /* fetchStatus */])(this.props.params.statusId));\n };\n\n Status.prototype.componentDidMount = function componentDidMount() {\n Object(__WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__[\"a\" /* attachFullscreenListener */])(this.onFullScreenChange);\n };\n\n Status.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this._scrolledIntoView = false;\n this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_statuses__[\"g\" /* fetchStatus */])(nextProps.params.statusId));\n }\n };\n\n Status.prototype._selectChild = function _selectChild(index) {\n var element = this.node.querySelectorAll('.focusable')[index];\n\n if (element) {\n element.focus();\n }\n };\n\n Status.prototype.renderChildren = function renderChildren(list) {\n var _this2 = this;\n\n return list.map(function (id) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_23__containers_status_container__[\"a\" /* default */], {\n id: id,\n onMoveUp: _this2.handleMoveUp,\n onMoveDown: _this2.handleMoveDown\n }, id);\n });\n };\n\n Status.prototype.componentDidUpdate = function componentDidUpdate() {\n if (this._scrolledIntoView) {\n return;\n }\n\n var _props = this.props,\n status = _props.status,\n ancestorsIds = _props.ancestorsIds;\n\n\n if (status && ancestorsIds && ancestorsIds.size > 0) {\n var element = this.node.querySelectorAll('.focusable')[ancestorsIds.size - 1];\n\n element.scrollIntoView(true);\n this._scrolledIntoView = true;\n }\n };\n\n Status.prototype.componentWillUnmount = function componentWillUnmount() {\n Object(__WEBPACK_IMPORTED_MODULE_29__features_ui_util_fullscreen__[\"b\" /* detachFullscreenListener */])(this.onFullScreenChange);\n };\n\n Status.prototype.render = function render() {\n var ancestors = void 0,\n descendants = void 0;\n var _props2 = this.props,\n status = _props2.status,\n ancestorsIds = _props2.ancestorsIds,\n descendantsIds = _props2.descendantsIds,\n intl = _props2.intl;\n var fullscreen = this.state.fullscreen;\n\n\n if (status === null) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_21__components_column_back_button__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_missing_indicator__[\"a\" /* default */], {}));\n }\n\n if (ancestorsIds && ancestorsIds.size > 0) {\n ancestors = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, this.renderChildren(ancestorsIds));\n }\n\n if (descendantsIds && descendantsIds.size > 0) {\n descendants = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, this.renderChildren(descendantsIds));\n }\n\n var handlers = {\n moveUp: this.handleHotkeyMoveUp,\n moveDown: this.handleHotkeyMoveDown,\n reply: this.handleHotkeyReply,\n favourite: this.handleHotkeyFavourite,\n boost: this.handleHotkeyBoost,\n mention: this.handleHotkeyMention,\n openProfile: this.handleHotkeyOpenProfile\n };\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__ui_components_column__[\"a\" /* default */], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_22__components_column_header__[\"a\" /* default */], {\n showBackButton: true,\n extraButton: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n className: 'column-header__button',\n title: intl.formatMessage(status.get('hidden') ? messages.revealAll : messages.hideAll),\n 'aria-label': intl.formatMessage(status.get('hidden') ? messages.revealAll : messages.hideAll),\n onClick: this.handleToggleAll,\n 'aria-pressed': status.get('hidden') ? 'false' : 'true'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-' + (status.get('hidden') ? 'eye-slash' : 'eye')\n }))\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_20_react_router_scroll_4__[\"a\" /* ScrollContainer */], {\n scrollKey: 'thread'\n }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n 'div',\n { className: __WEBPACK_IMPORTED_MODULE_7_classnames___default()('scrollable', 'detailed-status__wrapper', { fullscreen: fullscreen }), ref: this.setRef },\n ancestors,\n __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_27_react_hotkeys__[\"HotKeys\"], {\n handlers: handlers\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'focusable',\n tabIndex: '0'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_detailed_status__[\"a\" /* default */], {\n status: status,\n onOpenVideo: this.handleOpenVideo,\n onOpenMedia: this.handleOpenMedia,\n onToggleHidden: this.handleToggleHidden\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__components_action_bar__[\"a\" /* default */], {\n status: status,\n onReply: this.handleReplyClick,\n onFavourite: this.handleFavouriteClick,\n onReblog: this.handleReblogClick,\n onDelete: this.handleDeleteClick,\n onMention: this.handleMentionClick,\n onMute: this.handleMuteClick,\n onMuteConversation: this.handleConversationMuteClick,\n onBlock: this.handleBlockClick,\n onReport: this.handleReport\n }))),\n descendants\n )));\n };\n\n return Status;\n}(__WEBPACK_IMPORTED_MODULE_26_react_immutable_pure_component___default.a), _class2.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _class2.propTypes = {\n params: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n dispatch: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n status: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.map,\n ancestorsIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list,\n descendantsIds: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list,\n intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 843:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(6);\n\n\n\n\nvar MissingIndicator = function MissingIndicator() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator missing-indicator'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'regeneration-indicator__label'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.label',\n tagName: 'strong',\n defaultMessage: 'Not found'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"b\" /* FormattedMessage */], {\n id: 'missing_indicator.sublabel',\n defaultMessage: 'This resource could not be found'\n }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (MissingIndicator);\n\n/***/ }),\n\n/***/ 962:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return DetailedStatus; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_display_name__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_status_content__ = __webpack_require__(104);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_media_gallery__ = __webpack_require__(154);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_attachment_list__ = __webpack_require__(337);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_card_container__ = __webpack_require__(963);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__video__ = __webpack_require__(74);\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar DetailedStatus = (_temp2 = _class = function (_ImmutablePureCompone) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(DetailedStatus, _ImmutablePureCompone);\n\n function DetailedStatus() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, DetailedStatus);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleAccountClick = function (e) {\n if (e.button === 0) {\n e.preventDefault();\n _this.context.router.history.push('/accounts/' + _this.props.status.getIn(['account', 'id']));\n }\n\n e.stopPropagation();\n }, _this.handleOpenVideo = function (startTime) {\n _this.props.onOpenVideo(_this.props.status.getIn(['media_attachments', 0]), startTime);\n }, _this.handleExpandedToggle = function () {\n _this.props.onToggleHidden(_this.props.status);\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n DetailedStatus.prototype.render = function render() {\n var status = this.props.status.get('reblog') ? this.props.status.get('reblog') : this.props.status;\n\n var media = '';\n var applicationLink = '';\n var reblogLink = '';\n var reblogIcon = 'retweet';\n\n if (status.get('media_attachments').size > 0) {\n if (status.get('media_attachments').some(function (item) {\n return item.get('type') === 'unknown';\n })) {\n media = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__components_attachment_list__[\"a\" /* default */], {\n media: status.get('media_attachments')\n });\n } else if (status.getIn(['media_attachments', 0, 'type']) === 'video') {\n var video = status.getIn(['media_attachments', 0]);\n\n media = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__video__[\"default\"], {\n preview: video.get('preview_url'),\n src: video.get('url'),\n width: 300,\n height: 150,\n inline: true,\n onOpenVideo: this.handleOpenVideo,\n sensitive: status.get('sensitive')\n });\n } else {\n media = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_media_gallery__[\"default\"], {\n standalone: true,\n sensitive: status.get('sensitive'),\n media: status.get('media_attachments'),\n height: 300,\n onOpenMedia: this.props.onOpenMedia\n });\n }\n } else if (status.get('spoiler_text').length === 0) {\n media = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_card_container__[\"a\" /* default */], {\n onOpenMedia: this.props.onOpenMedia,\n statusId: status.get('id')\n });\n }\n\n if (status.get('application')) {\n applicationLink = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, ' \\xB7 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n className: 'detailed-status__application',\n href: status.getIn(['application', 'website']),\n target: '_blank',\n rel: 'noopener'\n }, void 0, status.getIn(['application', 'name'])));\n }\n\n if (status.get('visibility') === 'direct') {\n reblogIcon = 'envelope';\n } else if (status.get('visibility') === 'private') {\n reblogIcon = 'lock';\n }\n\n if (status.get('visibility') === 'private') {\n reblogLink = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-' + reblogIcon\n });\n } else {\n reblogLink = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_router_dom__[\"b\" /* Link */], {\n to: '/statuses/' + status.get('id') + '/reblogs',\n className: 'detailed-status__link'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-' + reblogIcon\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'detailed-status__reblogs'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"c\" /* FormattedNumber */], {\n value: status.get('reblogs_count')\n })));\n }\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n href: status.getIn(['account', 'url']),\n onClick: this.handleAccountClick,\n className: 'detailed-status__display-name'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__display-avatar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n account: status.get('account'),\n size: 48\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_display_name__[\"a\" /* default */], {\n account: status.get('account')\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_status_content__[\"a\" /* default */], {\n status: status,\n expanded: !status.get('hidden'),\n onExpandedToggle: this.handleExpandedToggle\n }), media, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__meta'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n className: 'detailed-status__datetime',\n href: status.get('url'),\n target: '_blank',\n rel: 'noopener'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"a\" /* FormattedDate */], {\n value: new Date(status.get('created_at')),\n hour12: false,\n year: 'numeric',\n month: 'short',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit'\n })), applicationLink, ' \\xB7 ', reblogLink, ' \\xB7 ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_router_dom__[\"b\" /* Link */], {\n to: '/statuses/' + status.get('id') + '/favourites',\n className: 'detailed-status__link'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n className: 'fa fa-star'\n }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n className: 'detailed-status__favorites'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13_react_intl__[\"c\" /* FormattedNumber */], {\n value: status.get('favourites_count')\n })))));\n };\n\n return DetailedStatus;\n}(__WEBPACK_IMPORTED_MODULE_15_react_immutable_pure_component___default.a), _class.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _class.propTypes = {\n status: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n onOpenMedia: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onOpenVideo: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired,\n onToggleHidden: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 963:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_card__ = __webpack_require__(332);\n\n\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n var statusId = _ref.statusId;\n return {\n card: state.getIn(['cards', statusId], null)\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_card__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 964:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__containers_dropdown_menu_container__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_intl__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(11);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"f\" /* defineMessages */])({\n delete: {\n 'id': 'status.delete',\n 'defaultMessage': 'Delete'\n },\n mention: {\n 'id': 'status.mention',\n 'defaultMessage': 'Mention @{name}'\n },\n reply: {\n 'id': 'status.reply',\n 'defaultMessage': 'Reply'\n },\n reblog: {\n 'id': 'status.reblog',\n 'defaultMessage': 'Boost'\n },\n cannot_reblog: {\n 'id': 'status.cannot_reblog',\n 'defaultMessage': 'This post cannot be boosted'\n },\n favourite: {\n 'id': 'status.favourite',\n 'defaultMessage': 'Favourite'\n },\n muteConversation: {\n 'id': 'status.mute_conversation',\n 'defaultMessage': 'Mute conversation'\n },\n unmuteConversation: {\n 'id': 'status.unmute_conversation',\n 'defaultMessage': 'Unmute conversation'\n },\n block: {\n 'id': 'status.block',\n 'defaultMessage': 'Block @{name}'\n },\n share: {\n 'id': 'status.share',\n 'defaultMessage': 'Share'\n }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_8_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_React$PureComponent) {\n __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n function ActionBar() {\n var _temp, _this, _ret;\n\n __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleReplyClick = function () {\n _this.props.onReply(_this.props.status);\n }, _this.handleReblogClick = function (e) {\n _this.props.onReblog(_this.props.status, e);\n }, _this.handleFavouriteClick = function () {\n _this.props.onFavourite(_this.props.status);\n }, _this.handleDeleteClick = function () {\n _this.props.onDelete(_this.props.status);\n }, _this.handleMentionClick = function () {\n _this.props.onMention(_this.props.status.get('account'), _this.context.router.history);\n }, _this.handleConversationMuteClick = function () {\n _this.props.onMuteConversation(_this.props.status);\n }, _this.handleBlockClick = function () {\n _this.props.onBlock(_this.props.status.get('account'));\n }, _this.handlePinClick = function () {\n _this.props.onPin(_this.props.status);\n }, _this.handleShare = function () {\n navigator.share({\n text: _this.props.status.get('search_index'),\n url: _this.props.status.get('url')\n });\n }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n }\n\n ActionBar.prototype.render = function render() {\n var _props = this.props,\n status = _props.status,\n intl = _props.intl;\n\n\n var publicStatus = ['public', 'unlisted'].includes(status.get('visibility'));\n var mutingConversation = status.get('muted');\n\n var menu = [];\n\n if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"g\" /* me */] === status.getIn(['account', 'id'])) {\n menu.push({ text: intl.formatMessage(mutingConversation ? messages.unmuteConversation : messages.muteConversation), action: this.handleConversationMuteClick });\n menu.push(null);\n menu.push({ text: intl.formatMessage(messages.delete), action: this.handleDeleteClick });\n } else {\n menu.push({ text: intl.formatMessage(messages.mention, { name: status.getIn(['account', 'username']) }), action: this.handleMentionClick });\n menu.push({ text: intl.formatMessage(messages.block, { name: status.getIn(['account', 'username']) }), action: this.handleBlockClick });\n }\n\n var shareButton = 'share' in navigator && status.get('visibility') === 'public' && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.share),\n icon: 'share-alt',\n onClick: this.handleShare\n }));\n\n var reblogIcon = 'retweet';\n if (status.get('visibility') === 'direct') reblogIcon = 'envelope';else if (status.get('visibility') === 'private') reblogIcon = 'lock';\n\n var reblog_disabled = status.get('visibility') === 'direct' || status.get('visibility') === 'private';\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__action-bar'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n title: intl.formatMessage(messages.reply),\n icon: status.get('in_reply_to_id', null) === null ? 'reply' : 'reply-all',\n onClick: this.handleReplyClick\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n disabled: reblog_disabled,\n active: status.get('reblogged'),\n title: reblog_disabled ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog),\n icon: reblogIcon,\n onClick: this.handleReblogClick\n })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__button'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n animate: true,\n active: status.get('favourited'),\n title: intl.formatMessage(messages.favourite),\n icon: 'star',\n onClick: this.handleFavouriteClick,\n activeStyle: { color: '#d8a070' }\n })), shareButton, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n className: 'detailed-status__action-bar-dropdown'\n }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_dropdown_menu_container__[\"a\" /* default */], {\n size: 18,\n icon: 'ellipsis-h',\n items: menu,\n direction: 'left',\n title: 'More'\n })));\n };\n\n return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class2.contextTypes = {\n router: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object\n}, _temp2)) || _class;\n\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/status.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nexport default class ColumnHeader extends React.PureComponent {\n\n static propTypes = {\n icon: PropTypes.string,\n type: PropTypes.string,\n active: PropTypes.bool,\n onClick: PropTypes.func,\n columnHeaderId: PropTypes.string,\n };\n\n handleClick = () => {\n this.props.onClick();\n }\n\n render () {\n const { icon, type, active, columnHeaderId } = this.props;\n let iconElement = '';\n\n if (icon) {\n iconElement = <i className={`fa fa-fw fa-${icon} column-header__icon`} />;\n }\n\n return (\n <h1 className={classNames('column-header', { active })} id={columnHeaderId || null}>\n <button onClick={this.handleClick}>\n {iconElement}\n {type}\n </button>\n </h1>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column_header.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { is } from 'immutable';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { isIOS } from '../is_mobile';\nimport classNames from 'classnames';\nimport { autoPlayGif, displaySensitiveMedia } from '../initial_state';\n\nconst messages = defineMessages({\n toggle_visible: { id: 'media_gallery.toggle_visible', defaultMessage: 'Toggle visibility' },\n});\n\nclass Item extends React.PureComponent {\n\n static propTypes = {\n attachment: ImmutablePropTypes.map.isRequired,\n standalone: PropTypes.bool,\n index: PropTypes.number.isRequired,\n size: PropTypes.number.isRequired,\n onClick: PropTypes.func.isRequired,\n };\n\n static defaultProps = {\n standalone: false,\n index: 0,\n size: 1,\n };\n\n handleMouseEnter = (e) => {\n if (this.hoverToPlay()) {\n e.target.play();\n }\n }\n\n handleMouseLeave = (e) => {\n if (this.hoverToPlay()) {\n e.target.pause();\n e.target.currentTime = 0;\n }\n }\n\n hoverToPlay () {\n const { attachment } = this.props;\n return !autoPlayGif && attachment.get('type') === 'gifv';\n }\n\n handleClick = (e) => {\n const { index, onClick } = this.props;\n\n if (e.button === 0) {\n e.preventDefault();\n onClick(index);\n }\n\n e.stopPropagation();\n }\n\n render () {\n const { attachment, index, size, standalone } = this.props;\n\n let width = 50;\n let height = 100;\n let top = 'auto';\n let left = 'auto';\n let bottom = 'auto';\n let right = 'auto';\n\n if (size === 1) {\n width = 100;\n }\n\n if (size === 4 || (size === 3 && index > 0)) {\n height = 50;\n }\n\n if (size === 2) {\n if (index === 0) {\n right = '2px';\n } else {\n left = '2px';\n }\n } else if (size === 3) {\n if (index === 0) {\n right = '2px';\n } else if (index > 0) {\n left = '2px';\n }\n\n if (index === 1) {\n bottom = '2px';\n } else if (index > 1) {\n top = '2px';\n }\n } else if (size === 4) {\n if (index === 0 || index === 2) {\n right = '2px';\n }\n\n if (index === 1 || index === 3) {\n left = '2px';\n }\n\n if (index < 2) {\n bottom = '2px';\n } else {\n top = '2px';\n }\n }\n\n let thumbnail = '';\n\n if (attachment.get('type') === 'image') {\n const previewUrl = attachment.get('preview_url');\n const previewWidth = attachment.getIn(['meta', 'small', 'width']);\n\n const originalUrl = attachment.get('url');\n const originalWidth = attachment.getIn(['meta', 'original', 'width']);\n\n const hasSize = typeof originalWidth === 'number' && typeof previewWidth === 'number';\n\n const srcSet = hasSize ? `${originalUrl} ${originalWidth}w, ${previewUrl} ${previewWidth}w` : null;\n const sizes = hasSize ? `(min-width: 1025px) ${320 * (width / 100)}px, ${width}vw` : null;\n\n const focusX = attachment.getIn(['meta', 'focus', 'x']) || 0;\n const focusY = attachment.getIn(['meta', 'focus', 'y']) || 0;\n const x = ((focusX / 2) + .5) * 100;\n const y = ((focusY / -2) + .5) * 100;\n\n thumbnail = (\n <a\n className='media-gallery__item-thumbnail'\n href={attachment.get('remote_url') || originalUrl}\n onClick={this.handleClick}\n target='_blank'\n >\n <img\n src={previewUrl}\n srcSet={srcSet}\n sizes={sizes}\n alt={attachment.get('description')}\n title={attachment.get('description')}\n style={{ objectPosition: `${x}% ${y}%` }}\n />\n </a>\n );\n } else if (attachment.get('type') === 'gifv') {\n const autoPlay = !isIOS() && autoPlayGif;\n\n thumbnail = (\n <div className={classNames('media-gallery__gifv', { autoplay: autoPlay })}>\n <video\n className='media-gallery__item-gifv-thumbnail'\n aria-label={attachment.get('description')}\n role='application'\n src={attachment.get('url')}\n onClick={this.handleClick}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n autoPlay={autoPlay}\n loop\n muted\n />\n\n <span className='media-gallery__gifv__label'>GIF</span>\n </div>\n );\n }\n\n return (\n <div className={classNames('media-gallery__item', { standalone })} key={attachment.get('id')} style={{ left: left, top: top, right: right, bottom: bottom, width: `${width}%`, height: `${height}%` }}>\n {thumbnail}\n </div>\n );\n }\n\n}\n\n@injectIntl\nexport default class MediaGallery extends React.PureComponent {\n\n static propTypes = {\n sensitive: PropTypes.bool,\n standalone: PropTypes.bool,\n media: ImmutablePropTypes.list.isRequired,\n size: PropTypes.object,\n height: PropTypes.number.isRequired,\n onOpenMedia: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n static defaultProps = {\n standalone: false,\n };\n\n state = {\n visible: !this.props.sensitive || displaySensitiveMedia,\n };\n\n componentWillReceiveProps (nextProps) {\n if (!is(nextProps.media, this.props.media)) {\n this.setState({ visible: !nextProps.sensitive });\n }\n }\n\n handleOpen = () => {\n this.setState({ visible: !this.state.visible });\n }\n\n handleClick = (index) => {\n this.props.onOpenMedia(this.props.media, index);\n }\n\n handleRef = (node) => {\n if (node /*&& this.isStandaloneEligible()*/) {\n // offsetWidth triggers a layout, so only calculate when we need to\n this.setState({\n width: node.offsetWidth,\n });\n }\n }\n\n isStandaloneEligible() {\n const { media, standalone } = this.props;\n return standalone && media.size === 1 && media.getIn([0, 'meta', 'small', 'aspect']);\n }\n\n render () {\n const { media, intl, sensitive, height } = this.props;\n const { width, visible } = this.state;\n\n let children;\n\n const style = {};\n\n if (this.isStandaloneEligible()) {\n if (width) {\n style.height = width / this.props.media.getIn([0, 'meta', 'small', 'aspect']);\n }\n } else if (width) {\n style.height = width / (16/9);\n } else {\n style.height = height;\n }\n\n if (!visible) {\n let warning;\n\n if (sensitive) {\n warning = <FormattedMessage id='status.sensitive_warning' defaultMessage='Sensitive content' />;\n } else {\n warning = <FormattedMessage id='status.media_hidden' defaultMessage='Media hidden' />;\n }\n\n children = (\n <button type='button' className='media-spoiler' onClick={this.handleOpen} style={style} ref={this.handleRef}>\n <span className='media-spoiler__warning'>{warning}</span>\n <span className='media-spoiler__trigger'><FormattedMessage id='status.sensitive_toggle' defaultMessage='Click to view' /></span>\n </button>\n );\n } else {\n const size = media.take(4).size;\n\n if (this.isStandaloneEligible()) {\n children = <Item standalone onClick={this.handleClick} attachment={media.get(0)} />;\n } else {\n children = media.take(4).map((attachment, i) => <Item key={attachment.get('id')} onClick={this.handleClick} attachment={attachment} index={i} size={size} />);\n }\n }\n\n return (\n <div className='media-gallery' style={style} ref={this.handleRef}>\n <div className={classNames('spoiler-button', { 'spoiler-button--visible': visible })}>\n <IconButton title={intl.formatMessage(messages.toggle_visible)} icon={visible ? 'eye' : 'eye-slash'} overlay onClick={this.handleOpen} />\n </div>\n\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/media_gallery.js","import api, { getLinks } from '../api';\nimport { fetchRelationships } from './accounts';\nimport { importFetchedAccounts } from './importer';\nimport { openModal } from './modal';\n\nexport const MUTES_FETCH_REQUEST = 'MUTES_FETCH_REQUEST';\nexport const MUTES_FETCH_SUCCESS = 'MUTES_FETCH_SUCCESS';\nexport const MUTES_FETCH_FAIL = 'MUTES_FETCH_FAIL';\n\nexport const MUTES_EXPAND_REQUEST = 'MUTES_EXPAND_REQUEST';\nexport const MUTES_EXPAND_SUCCESS = 'MUTES_EXPAND_SUCCESS';\nexport const MUTES_EXPAND_FAIL = 'MUTES_EXPAND_FAIL';\n\nexport const MUTES_INIT_MODAL = 'MUTES_INIT_MODAL';\nexport const MUTES_TOGGLE_HIDE_NOTIFICATIONS = 'MUTES_TOGGLE_HIDE_NOTIFICATIONS';\n\nexport function fetchMutes() {\n return (dispatch, getState) => {\n dispatch(fetchMutesRequest());\n\n api(getState).get('/api/v1/mutes').then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(fetchMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(fetchMutesFail(error)));\n };\n};\n\nexport function fetchMutesRequest() {\n return {\n type: MUTES_FETCH_REQUEST,\n };\n};\n\nexport function fetchMutesSuccess(accounts, next) {\n return {\n type: MUTES_FETCH_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function fetchMutesFail(error) {\n return {\n type: MUTES_FETCH_FAIL,\n error,\n };\n};\n\nexport function expandMutes() {\n return (dispatch, getState) => {\n const url = getState().getIn(['user_lists', 'mutes', 'next']);\n\n if (url === null) {\n return;\n }\n\n dispatch(expandMutesRequest());\n\n api(getState).get(url).then(response => {\n const next = getLinks(response).refs.find(link => link.rel === 'next');\n dispatch(importFetchedAccounts(response.data));\n dispatch(expandMutesSuccess(response.data, next ? next.uri : null));\n dispatch(fetchRelationships(response.data.map(item => item.id)));\n }).catch(error => dispatch(expandMutesFail(error)));\n };\n};\n\nexport function expandMutesRequest() {\n return {\n type: MUTES_EXPAND_REQUEST,\n };\n};\n\nexport function expandMutesSuccess(accounts, next) {\n return {\n type: MUTES_EXPAND_SUCCESS,\n accounts,\n next,\n };\n};\n\nexport function expandMutesFail(error) {\n return {\n type: MUTES_EXPAND_FAIL,\n error,\n };\n};\n\nexport function initMuteModal(account) {\n return dispatch => {\n dispatch({\n type: MUTES_INIT_MODAL,\n account,\n });\n\n dispatch(openModal('MUTE'));\n };\n}\n\nexport function toggleHideNotifications() {\n return dispatch => {\n dispatch({ type: MUTES_TOGGLE_HIDE_NOTIFICATIONS });\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/mutes.js","import React from 'react';\nimport ColumnHeader from './column_header';\nimport PropTypes from 'prop-types';\nimport { debounce } from 'lodash';\nimport { scrollTop } from '../../../scroll';\nimport { isMobile } from '../../../is_mobile';\n\nexport default class Column extends React.PureComponent {\n\n static propTypes = {\n heading: PropTypes.string,\n icon: PropTypes.string,\n children: PropTypes.node,\n active: PropTypes.bool,\n hideHeadingOnMobile: PropTypes.bool,\n };\n\n handleHeaderClick = () => {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n scrollTop () {\n const scrollable = this.node.querySelector('.scrollable');\n\n if (!scrollable) {\n return;\n }\n\n this._interruptScrollAnimation = scrollTop(scrollable);\n }\n\n\n handleScroll = debounce(() => {\n if (typeof this._interruptScrollAnimation !== 'undefined') {\n this._interruptScrollAnimation();\n }\n }, 200)\n\n setRef = (c) => {\n this.node = c;\n }\n\n render () {\n const { heading, icon, children, active, hideHeadingOnMobile } = this.props;\n\n const showHeading = heading && (!hideHeadingOnMobile || (hideHeadingOnMobile && !isMobile(window.innerWidth)));\n\n const columnHeaderId = showHeading && heading.replace(/ /g, '-');\n const header = showHeading && (\n <ColumnHeader icon={icon} active={active} type={heading} onClick={this.handleHeaderClick} columnHeaderId={columnHeaderId} />\n );\n return (\n <div\n ref={this.setRef}\n role='region'\n aria-labelledby={columnHeaderId}\n className='column'\n onScroll={this.handleScroll}\n >\n {header}\n {children}\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/ui/components/column.js","import api from '../api';\nimport { openModal, closeModal } from './modal';\n\nexport const REPORT_INIT = 'REPORT_INIT';\nexport const REPORT_CANCEL = 'REPORT_CANCEL';\n\nexport const REPORT_SUBMIT_REQUEST = 'REPORT_SUBMIT_REQUEST';\nexport const REPORT_SUBMIT_SUCCESS = 'REPORT_SUBMIT_SUCCESS';\nexport const REPORT_SUBMIT_FAIL = 'REPORT_SUBMIT_FAIL';\n\nexport const REPORT_STATUS_TOGGLE = 'REPORT_STATUS_TOGGLE';\nexport const REPORT_COMMENT_CHANGE = 'REPORT_COMMENT_CHANGE';\nexport const REPORT_FORWARD_CHANGE = 'REPORT_FORWARD_CHANGE';\n\nexport function initReport(account, status) {\n return dispatch => {\n dispatch({\n type: REPORT_INIT,\n account,\n status,\n });\n\n dispatch(openModal('REPORT'));\n };\n};\n\nexport function cancelReport() {\n return {\n type: REPORT_CANCEL,\n };\n};\n\nexport function toggleStatusReport(statusId, checked) {\n return {\n type: REPORT_STATUS_TOGGLE,\n statusId,\n checked,\n };\n};\n\nexport function submitReport() {\n return (dispatch, getState) => {\n dispatch(submitReportRequest());\n\n api(getState).post('/api/v1/reports', {\n account_id: getState().getIn(['reports', 'new', 'account_id']),\n status_ids: getState().getIn(['reports', 'new', 'status_ids']),\n comment: getState().getIn(['reports', 'new', 'comment']),\n forward: getState().getIn(['reports', 'new', 'forward']),\n }).then(response => {\n dispatch(closeModal());\n dispatch(submitReportSuccess(response.data));\n }).catch(error => dispatch(submitReportFail(error)));\n };\n};\n\nexport function submitReportRequest() {\n return {\n type: REPORT_SUBMIT_REQUEST,\n };\n};\n\nexport function submitReportSuccess(report) {\n return {\n type: REPORT_SUBMIT_SUCCESS,\n report,\n };\n};\n\nexport function submitReportFail(error) {\n return {\n type: REPORT_SUBMIT_FAIL,\n error,\n };\n};\n\nexport function changeReportComment(comment) {\n return {\n type: REPORT_COMMENT_CHANGE,\n comment,\n };\n};\n\nexport function changeReportForward(forward) {\n return {\n type: REPORT_FORWARD_CHANGE,\n forward,\n };\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/actions/reports.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n replyCompose,\n mentionCompose,\n} from '../actions/compose';\nimport {\n reblog,\n favourite,\n unreblog,\n unfavourite,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.id),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n onReply (status, router) {\n dispatch(replyCompose(status, router));\n },\n\n onModalReblog (status) {\n dispatch(reblog(status));\n },\n\n onReblog (status, e) {\n if (status.get('reblogged')) {\n dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.onModalReblog(status);\n } else {\n dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n }\n }\n },\n\n onFavourite (status) {\n if (status.get('favourited')) {\n dispatch(unfavourite(status));\n } else {\n dispatch(favourite(status));\n }\n },\n\n onDelete (status) {\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n },\n\n onMention (account, router) {\n dispatch(mentionCompose(account, router));\n },\n\n onOpenMedia (media, index) {\n dispatch(openModal('MEDIA', { media, index }));\n },\n\n onOpenVideo (media, time) {\n dispatch(openModal('VIDEO', { media, time }));\n },\n\n onBlock (account) {\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n },\n\n onReport (status) {\n dispatch(initReport(status.get('account'), status));\n },\n\n onMute (account) {\n dispatch(initMuteModal(account));\n },\n\n onMuteConversation (status) {\n if (status.get('muted')) {\n dispatch(unmuteStatus(status.get('id')));\n } else {\n dispatch(muteStatus(status.get('id')));\n }\n },\n\n onToggleHidden (status) {\n if (status.get('hidden')) {\n dispatch(revealStatus(status.get('id')));\n } else {\n dispatch(hideStatus(status.get('id')));\n }\n },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport PropTypes from 'prop-types';\n\nexport default class ColumnBackButton extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n handleClick = () => {\n if (window.history && window.history.length === 1) {\n this.context.router.history.push('/');\n } else {\n this.context.router.history.goBack();\n }\n }\n\n render () {\n return (\n <button onClick={this.handleClick} className='column-back-button'>\n <i className='fa fa-fw fa-chevron-left column-back-button__icon' />\n <FormattedMessage id='column_back_button.label' defaultMessage='Back' />\n </button>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/column_back_button.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Immutable from 'immutable';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport punycode from 'punycode';\nimport classnames from 'classnames';\n\nconst IDNA_PREFIX = 'xn--';\n\nconst decodeIDNA = domain => {\n return domain\n .split('.')\n .map(part => part.indexOf(IDNA_PREFIX) === 0 ? punycode.decode(part.slice(IDNA_PREFIX.length)) : part)\n .join('.');\n};\n\nconst getHostname = url => {\n const parser = document.createElement('a');\n parser.href = url;\n return parser.hostname;\n};\n\nconst trim = (text, len) => {\n const cut = text.indexOf(' ', len);\n\n if (cut === -1) {\n return text;\n }\n\n return text.substring(0, cut) + (text.length > len ? '…' : '');\n};\n\nconst domParser = new DOMParser();\n\nconst addAutoPlay = html => {\n const document = domParser.parseFromString(html, 'text/html').documentElement;\n const iframe = document.querySelector('iframe');\n\n if (iframe) {\n if (iframe.src.indexOf('?') !== -1) {\n iframe.src += '&';\n } else {\n iframe.src += '?';\n }\n\n iframe.src += 'autoplay=1&auto_play=1';\n\n // DOM parser creates html/body elements around original HTML fragment,\n // so we need to get innerHTML out of the body and not the entire document\n return document.querySelector('body').innerHTML;\n }\n\n return html;\n};\n\nexport default class Card extends React.PureComponent {\n\n static propTypes = {\n card: ImmutablePropTypes.map,\n maxDescription: PropTypes.number,\n onOpenMedia: PropTypes.func.isRequired,\n };\n\n static defaultProps = {\n maxDescription: 50,\n };\n\n state = {\n width: 280,\n embedded: false,\n };\n\n componentWillReceiveProps (nextProps) {\n if (this.props.card !== nextProps.card) {\n this.setState({ embedded: false });\n }\n }\n\n handlePhotoClick = () => {\n const { card, onOpenMedia } = this.props;\n\n onOpenMedia(\n Immutable.fromJS([\n {\n type: 'image',\n url: card.get('embed_url'),\n description: card.get('title'),\n meta: {\n original: {\n width: card.get('width'),\n height: card.get('height'),\n },\n },\n },\n ]),\n 0\n );\n };\n\n handleEmbedClick = () => {\n const { card } = this.props;\n\n if (card.get('type') === 'photo') {\n this.handlePhotoClick();\n } else {\n this.setState({ embedded: true });\n }\n }\n\n setRef = c => {\n if (c) {\n this.setState({ width: c.offsetWidth });\n }\n }\n\n renderVideo () {\n const { card } = this.props;\n const content = { __html: addAutoPlay(card.get('html')) };\n const { width } = this.state;\n const ratio = card.get('width') / card.get('height');\n const height = card.get('width') > card.get('height') ? (width / ratio) : (width * ratio);\n\n return (\n <div\n ref={this.setRef}\n className='status-card__image status-card-video'\n dangerouslySetInnerHTML={content}\n style={{ height }}\n />\n );\n }\n\n render () {\n const { card, maxDescription } = this.props;\n const { width, embedded } = this.state;\n\n if (card === null) {\n return null;\n }\n\n const provider = card.get('provider_name').length === 0 ? decodeIDNA(getHostname(card.get('url'))) : card.get('provider_name');\n const horizontal = card.get('width') > card.get('height') && (card.get('width') + 100 >= width) || card.get('type') !== 'link';\n const className = classnames('status-card', { horizontal });\n const interactive = card.get('type') !== 'link';\n const title = interactive ? <a className='status-card__title' href={card.get('url')} title={card.get('title')} rel='noopener' target='_blank'><strong>{card.get('title')}</strong></a> : <strong className='status-card__title' title={card.get('title')}>{card.get('title')}</strong>;\n const ratio = card.get('width') / card.get('height');\n const height = card.get('width') > card.get('height') ? (width / ratio) : (width * ratio);\n\n const description = (\n <div className='status-card__content'>\n {title}\n {!horizontal && <p className='status-card__description'>{trim(card.get('description') || '', maxDescription)}</p>}\n <span className='status-card__host'>{provider}</span>\n </div>\n );\n\n let embed = '';\n let thumbnail = <div style={{ backgroundImage: `url(${card.get('image')})`, width: horizontal ? width : null, height: horizontal ? height : null }} className='status-card__image-image' />;\n\n if (interactive) {\n if (embedded) {\n embed = this.renderVideo();\n } else {\n let iconVariant = 'play';\n\n if (card.get('type') === 'photo') {\n iconVariant = 'search-plus';\n }\n\n embed = (\n <div className='status-card__image'>\n {thumbnail}\n\n <div className='status-card__actions'>\n <div>\n <button onClick={this.handleEmbedClick}><i className={`fa fa-${iconVariant}`} /></button>\n <a href={card.get('url')} target='_blank' rel='noopener'><i className='fa fa-external-link' /></a>\n </div>\n </div>\n </div>\n );\n }\n\n return (\n <div className={className} ref={this.setRef}>\n {embed}\n {description}\n </div>\n );\n } else if (card.get('image')) {\n embed = (\n <div className='status-card__image'>\n {thumbnail}\n </div>\n );\n }\n\n return (\n <a href={card.get('url')} className={className} target='_blank' rel='noopener' ref={this.setRef}>\n {embed}\n {description}\n </a>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/components/card.js","/*! https://mths.be/punycode v1.4.1 by @mathias */\n;(function(root) {\n\n\t/** Detect free variables */\n\tvar freeExports = typeof exports == 'object' && exports &&\n\t\t!exports.nodeType && exports;\n\tvar freeModule = typeof module == 'object' && module &&\n\t\t!module.nodeType && module;\n\tvar freeGlobal = typeof global == 'object' && global;\n\tif (\n\t\tfreeGlobal.global === freeGlobal ||\n\t\tfreeGlobal.window === freeGlobal ||\n\t\tfreeGlobal.self === freeGlobal\n\t) {\n\t\troot = freeGlobal;\n\t}\n\n\t/**\n\t * The `punycode` object.\n\t * @name punycode\n\t * @type Object\n\t */\n\tvar punycode,\n\n\t/** Highest positive signed 32-bit float value */\n\tmaxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1\n\n\t/** Bootstring parameters */\n\tbase = 36,\n\ttMin = 1,\n\ttMax = 26,\n\tskew = 38,\n\tdamp = 700,\n\tinitialBias = 72,\n\tinitialN = 128, // 0x80\n\tdelimiter = '-', // '\\x2D'\n\n\t/** Regular expressions */\n\tregexPunycode = /^xn--/,\n\tregexNonASCII = /[^\\x20-\\x7E]/, // unprintable ASCII chars + non-ASCII chars\n\tregexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g, // RFC 3490 separators\n\n\t/** Error messages */\n\terrors = {\n\t\t'overflow': 'Overflow: input needs wider integers to process',\n\t\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t\t'invalid-input': 'Invalid input'\n\t},\n\n\t/** Convenience shortcuts */\n\tbaseMinusTMin = base - tMin,\n\tfloor = Math.floor,\n\tstringFromCharCode = String.fromCharCode,\n\n\t/** Temporary variable */\n\tkey;\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/**\n\t * A generic error utility function.\n\t * @private\n\t * @param {String} type The error type.\n\t * @returns {Error} Throws a `RangeError` with the applicable error message.\n\t */\n\tfunction error(type) {\n\t\tthrow new RangeError(errors[type]);\n\t}\n\n\t/**\n\t * A generic `Array#map` utility function.\n\t * @private\n\t * @param {Array} array The array to iterate over.\n\t * @param {Function} callback The function that gets called for every array\n\t * item.\n\t * @returns {Array} A new array of values returned by the callback function.\n\t */\n\tfunction map(array, fn) {\n\t\tvar length = array.length;\n\t\tvar result = [];\n\t\twhile (length--) {\n\t\t\tresult[length] = fn(array[length]);\n\t\t}\n\t\treturn result;\n\t}\n\n\t/**\n\t * A simple `Array#map`-like wrapper to work with domain name strings or email\n\t * addresses.\n\t * @private\n\t * @param {String} domain The domain name or email address.\n\t * @param {Function} callback The function that gets called for every\n\t * character.\n\t * @returns {Array} A new string of characters returned by the callback\n\t * function.\n\t */\n\tfunction mapDomain(string, fn) {\n\t\tvar parts = string.split('@');\n\t\tvar result = '';\n\t\tif (parts.length > 1) {\n\t\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t\t// the local part (i.e. everything up to `@`) intact.\n\t\t\tresult = parts[0] + '@';\n\t\t\tstring = parts[1];\n\t\t}\n\t\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\t\tstring = string.replace(regexSeparators, '\\x2E');\n\t\tvar labels = string.split('.');\n\t\tvar encoded = map(labels, fn).join('.');\n\t\treturn result + encoded;\n\t}\n\n\t/**\n\t * Creates an array containing the numeric code points of each Unicode\n\t * character in the string. While JavaScript uses UCS-2 internally,\n\t * this function will convert a pair of surrogate halves (each of which\n\t * UCS-2 exposes as separate characters) into a single code point,\n\t * matching UTF-16.\n\t * @see `punycode.ucs2.encode`\n\t * @see <https://mathiasbynens.be/notes/javascript-encoding>\n\t * @memberOf punycode.ucs2\n\t * @name decode\n\t * @param {String} string The Unicode input string (UCS-2).\n\t * @returns {Array} The new array of code points.\n\t */\n\tfunction ucs2decode(string) {\n\t\tvar output = [],\n\t\t counter = 0,\n\t\t length = string.length,\n\t\t value,\n\t\t extra;\n\t\twhile (counter < length) {\n\t\t\tvalue = string.charCodeAt(counter++);\n\t\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t\t// high surrogate, and there is a next character\n\t\t\t\textra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) { // low surrogate\n\t\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t\t} else {\n\t\t\t\t\t// unmatched surrogate; only append this code unit, in case the next\n\t\t\t\t\t// code unit is the high surrogate of a surrogate pair\n\t\t\t\t\toutput.push(value);\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toutput.push(value);\n\t\t\t}\n\t\t}\n\t\treturn output;\n\t}\n\n\t/**\n\t * Creates a string based on an array of numeric code points.\n\t * @see `punycode.ucs2.decode`\n\t * @memberOf punycode.ucs2\n\t * @name encode\n\t * @param {Array} codePoints The array of numeric code points.\n\t * @returns {String} The new Unicode string (UCS-2).\n\t */\n\tfunction ucs2encode(array) {\n\t\treturn map(array, function(value) {\n\t\t\tvar output = '';\n\t\t\tif (value > 0xFFFF) {\n\t\t\t\tvalue -= 0x10000;\n\t\t\t\toutput += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);\n\t\t\t\tvalue = 0xDC00 | value & 0x3FF;\n\t\t\t}\n\t\t\toutput += stringFromCharCode(value);\n\t\t\treturn output;\n\t\t}).join('');\n\t}\n\n\t/**\n\t * Converts a basic code point into a digit/integer.\n\t * @see `digitToBasic()`\n\t * @private\n\t * @param {Number} codePoint The basic numeric code point value.\n\t * @returns {Number} The numeric value of a basic code point (for use in\n\t * representing integers) in the range `0` to `base - 1`, or `base` if\n\t * the code point does not represent a value.\n\t */\n\tfunction basicToDigit(codePoint) {\n\t\tif (codePoint - 48 < 10) {\n\t\t\treturn codePoint - 22;\n\t\t}\n\t\tif (codePoint - 65 < 26) {\n\t\t\treturn codePoint - 65;\n\t\t}\n\t\tif (codePoint - 97 < 26) {\n\t\t\treturn codePoint - 97;\n\t\t}\n\t\treturn base;\n\t}\n\n\t/**\n\t * Converts a digit/integer into a basic code point.\n\t * @see `basicToDigit()`\n\t * @private\n\t * @param {Number} digit The numeric value of a basic code point.\n\t * @returns {Number} The basic code point whose value (when used for\n\t * representing integers) is `digit`, which needs to be in the range\n\t * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n\t * used; else, the lowercase form is used. The behavior is undefined\n\t * if `flag` is non-zero and `digit` has no uppercase form.\n\t */\n\tfunction digitToBasic(digit, flag) {\n\t\t// 0..25 map to ASCII a..z or A..Z\n\t\t// 26..35 map to ASCII 0..9\n\t\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n\t}\n\n\t/**\n\t * Bias adaptation function as per section 3.4 of RFC 3492.\n\t * https://tools.ietf.org/html/rfc3492#section-3.4\n\t * @private\n\t */\n\tfunction adapt(delta, numPoints, firstTime) {\n\t\tvar k = 0;\n\t\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\t\tdelta += floor(delta / numPoints);\n\t\tfor (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\t\tdelta = floor(delta / baseMinusTMin);\n\t\t}\n\t\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n\t}\n\n\t/**\n\t * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n\t * symbols.\n\t * @memberOf punycode\n\t * @param {String} input The Punycode string of ASCII-only symbols.\n\t * @returns {String} The resulting string of Unicode symbols.\n\t */\n\tfunction decode(input) {\n\t\t// Don't use UCS-2\n\t\tvar output = [],\n\t\t inputLength = input.length,\n\t\t out,\n\t\t i = 0,\n\t\t n = initialN,\n\t\t bias = initialBias,\n\t\t basic,\n\t\t j,\n\t\t index,\n\t\t oldi,\n\t\t w,\n\t\t k,\n\t\t digit,\n\t\t t,\n\t\t /** Cached calculation results */\n\t\t baseMinusT;\n\n\t\t// Handle the basic code points: let `basic` be the number of input code\n\t\t// points before the last delimiter, or `0` if there is none, then copy\n\t\t// the first basic code points to the output.\n\n\t\tbasic = input.lastIndexOf(delimiter);\n\t\tif (basic < 0) {\n\t\t\tbasic = 0;\n\t\t}\n\n\t\tfor (j = 0; j < basic; ++j) {\n\t\t\t// if it's not a basic code point\n\t\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\t\terror('not-basic');\n\t\t\t}\n\t\t\toutput.push(input.charCodeAt(j));\n\t\t}\n\n\t\t// Main decoding loop: start just after the last delimiter if any basic code\n\t\t// points were copied; start at the beginning otherwise.\n\n\t\tfor (index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) {\n\n\t\t\t// `index` is the index of the next character to be consumed.\n\t\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t\t// which gets added to `i`. The overflow checking is easier\n\t\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t\t// value at the end to obtain `delta`.\n\t\t\tfor (oldi = i, w = 1, k = base; /* no condition */; k += base) {\n\n\t\t\t\tif (index >= inputLength) {\n\t\t\t\t\terror('invalid-input');\n\t\t\t\t}\n\n\t\t\t\tdigit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\ti += digit * w;\n\t\t\t\tt = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\n\t\t\t\tif (digit < t) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tbaseMinusT = base - t;\n\t\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tw *= baseMinusT;\n\n\t\t\t}\n\n\t\t\tout = output.length + 1;\n\t\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t\t// incrementing `n` each time, so we'll fix that now:\n\t\t\tif (floor(i / out) > maxInt - n) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tn += floor(i / out);\n\t\t\ti %= out;\n\n\t\t\t// Insert `n` at position `i` of the output\n\t\t\toutput.splice(i++, 0, n);\n\n\t\t}\n\n\t\treturn ucs2encode(output);\n\t}\n\n\t/**\n\t * Converts a string of Unicode symbols (e.g. a domain name label) to a\n\t * Punycode string of ASCII-only symbols.\n\t * @memberOf punycode\n\t * @param {String} input The string of Unicode symbols.\n\t * @returns {String} The resulting Punycode string of ASCII-only symbols.\n\t */\n\tfunction encode(input) {\n\t\tvar n,\n\t\t delta,\n\t\t handledCPCount,\n\t\t basicLength,\n\t\t bias,\n\t\t j,\n\t\t m,\n\t\t q,\n\t\t k,\n\t\t t,\n\t\t currentValue,\n\t\t output = [],\n\t\t /** `inputLength` will hold the number of code points in `input`. */\n\t\t inputLength,\n\t\t /** Cached calculation results */\n\t\t handledCPCountPlusOne,\n\t\t baseMinusT,\n\t\t qMinusT;\n\n\t\t// Convert the input in UCS-2 to Unicode\n\t\tinput = ucs2decode(input);\n\n\t\t// Cache the length\n\t\tinputLength = input.length;\n\n\t\t// Initialize the state\n\t\tn = initialN;\n\t\tdelta = 0;\n\t\tbias = initialBias;\n\n\t\t// Handle the basic code points\n\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\tcurrentValue = input[j];\n\t\t\tif (currentValue < 0x80) {\n\t\t\t\toutput.push(stringFromCharCode(currentValue));\n\t\t\t}\n\t\t}\n\n\t\thandledCPCount = basicLength = output.length;\n\n\t\t// `handledCPCount` is the number of code points that have been handled;\n\t\t// `basicLength` is the number of basic code points.\n\n\t\t// Finish the basic string - if it is not empty - with a delimiter\n\t\tif (basicLength) {\n\t\t\toutput.push(delimiter);\n\t\t}\n\n\t\t// Main encoding loop:\n\t\twhile (handledCPCount < inputLength) {\n\n\t\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t\t// larger one:\n\t\t\tfor (m = maxInt, j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\t\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\t\tm = currentValue;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Increase `delta` enough to advance the decoder's <n,i> state to <m,0>,\n\t\t\t// but guard against overflow\n\t\t\thandledCPCountPlusOne = handledCPCount + 1;\n\t\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\t\tn = m;\n\n\t\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\n\t\t\t\tif (currentValue < n && ++delta > maxInt) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tif (currentValue == n) {\n\t\t\t\t\t// Represent delta as a generalized variable-length integer\n\t\t\t\t\tfor (q = delta, k = base; /* no condition */; k += base) {\n\t\t\t\t\t\tt = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\t\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tqMinusT = q - t;\n\t\t\t\t\t\tbaseMinusT = base - t;\n\t\t\t\t\t\toutput.push(\n\t\t\t\t\t\t\tstringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0))\n\t\t\t\t\t\t);\n\t\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t\t}\n\n\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\t\tdelta = 0;\n\t\t\t\t\t++handledCPCount;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t++delta;\n\t\t\t++n;\n\n\t\t}\n\t\treturn output.join('');\n\t}\n\n\t/**\n\t * Converts a Punycode string representing a domain name or an email address\n\t * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n\t * it doesn't matter if you call it on a string that has already been\n\t * converted to Unicode.\n\t * @memberOf punycode\n\t * @param {String} input The Punycoded domain name or email address to\n\t * convert to Unicode.\n\t * @returns {String} The Unicode representation of the given Punycode\n\t * string.\n\t */\n\tfunction toUnicode(input) {\n\t\treturn mapDomain(input, function(string) {\n\t\t\treturn regexPunycode.test(string)\n\t\t\t\t? decode(string.slice(4).toLowerCase())\n\t\t\t\t: string;\n\t\t});\n\t}\n\n\t/**\n\t * Converts a Unicode string representing a domain name or an email address to\n\t * Punycode. Only the non-ASCII parts of the domain name will be converted,\n\t * i.e. it doesn't matter if you call it with a domain that's already in\n\t * ASCII.\n\t * @memberOf punycode\n\t * @param {String} input The domain name or email address to convert, as a\n\t * Unicode string.\n\t * @returns {String} The Punycode representation of the given domain name or\n\t * email address.\n\t */\n\tfunction toASCII(input) {\n\t\treturn mapDomain(input, function(string) {\n\t\t\treturn regexNonASCII.test(string)\n\t\t\t\t? 'xn--' + encode(string)\n\t\t\t\t: string;\n\t\t});\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/** Define the public API */\n\tpunycode = {\n\t\t/**\n\t\t * A string representing the current Punycode.js version number.\n\t\t * @memberOf punycode\n\t\t * @type String\n\t\t */\n\t\t'version': '1.4.1',\n\t\t/**\n\t\t * An object of methods to convert from JavaScript's internal character\n\t\t * representation (UCS-2) to Unicode code points, and back.\n\t\t * @see <https://mathiasbynens.be/notes/javascript-encoding>\n\t\t * @memberOf punycode\n\t\t * @type Object\n\t\t */\n\t\t'ucs2': {\n\t\t\t'decode': ucs2decode,\n\t\t\t'encode': ucs2encode\n\t\t},\n\t\t'decode': decode,\n\t\t'encode': encode,\n\t\t'toASCII': toASCII,\n\t\t'toUnicode': toUnicode\n\t};\n\n\t/** Expose `punycode` */\n\t// Some AMD build optimizers, like r.js, check for specific condition patterns\n\t// like the following:\n\tif (\n\t\ttypeof define == 'function' &&\n\t\ttypeof define.amd == 'object' &&\n\t\tdefine.amd\n\t) {\n\t\tdefine('punycode', function() {\n\t\t\treturn punycode;\n\t\t});\n\t} else if (freeExports && freeModule) {\n\t\tif (module.exports == freeExports) {\n\t\t\t// in Node.js, io.js, or RingoJS v0.8.0+\n\t\t\tfreeModule.exports = punycode;\n\t\t} else {\n\t\t\t// in Narwhal or RingoJS v0.7.0-\n\t\t\tfor (key in punycode) {\n\t\t\t\tpunycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// in Rhino or a web browser\n\t\troot.punycode = punycode;\n\t}\n\n}(this));\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/node-libs-browser/node_modules/punycode/punycode.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { fetchStatus } from '../../actions/statuses';\nimport MissingIndicator from '../../components/missing_indicator';\nimport DetailedStatus from './components/detailed_status';\nimport ActionBar from './components/action_bar';\nimport Column from '../ui/components/column';\nimport {\n favourite,\n unfavourite,\n reblog,\n unreblog,\n} from '../../actions/interactions';\nimport {\n replyCompose,\n mentionCompose,\n} from '../../actions/compose';\nimport { blockAccount } from '../../actions/accounts';\nimport {\n muteStatus,\n unmuteStatus,\n deleteStatus,\n hideStatus,\n revealStatus,\n} from '../../actions/statuses';\nimport { initMuteModal } from '../../actions/mutes';\nimport { initReport } from '../../actions/reports';\nimport { makeGetStatus } from '../../selectors';\nimport { ScrollContainer } from 'react-router-scroll-4';\nimport ColumnBackButton from '../../components/column_back_button';\nimport ColumnHeader from '../../components/column_header';\nimport StatusContainer from '../../containers/status_container';\nimport { openModal } from '../../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { HotKeys } from 'react-hotkeys';\nimport { boostModal, deleteModal } from '../../initial_state';\nimport { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../../features/ui/util/fullscreen';\n\nconst messages = defineMessages({\n deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n revealAll: { id: 'status.show_more_all', defaultMessage: 'Show more for all' },\n hideAll: { id: 'status.show_less_all', defaultMessage: 'Show less for all' },\n});\n\nconst makeMapStateToProps = () => {\n const getStatus = makeGetStatus();\n\n const mapStateToProps = (state, props) => ({\n status: getStatus(state, props.params.statusId),\n ancestorsIds: state.getIn(['contexts', 'ancestors', props.params.statusId]),\n descendantsIds: state.getIn(['contexts', 'descendants', props.params.statusId]),\n });\n\n return mapStateToProps;\n};\n\n@injectIntl\n@connect(makeMapStateToProps)\nexport default class Status extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n status: ImmutablePropTypes.map,\n ancestorsIds: ImmutablePropTypes.list,\n descendantsIds: ImmutablePropTypes.list,\n intl: PropTypes.object.isRequired,\n };\n\n state = {\n fullscreen: false,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchStatus(this.props.params.statusId));\n }\n\n componentDidMount () {\n attachFullscreenListener(this.onFullScreenChange);\n }\n\n componentWillReceiveProps (nextProps) {\n if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {\n this._scrolledIntoView = false;\n this.props.dispatch(fetchStatus(nextProps.params.statusId));\n }\n }\n\n handleFavouriteClick = (status) => {\n if (status.get('favourited')) {\n this.props.dispatch(unfavourite(status));\n } else {\n this.props.dispatch(favourite(status));\n }\n }\n\n handleReplyClick = (status) => {\n this.props.dispatch(replyCompose(status, this.context.router.history));\n }\n\n handleModalReblog = (status) => {\n this.props.dispatch(reblog(status));\n }\n\n handleReblogClick = (status, e) => {\n if (status.get('reblogged')) {\n this.props.dispatch(unreblog(status));\n } else {\n if (e.shiftKey || !boostModal) {\n this.handleModalReblog(status);\n } else {\n this.props.dispatch(openModal('BOOST', { status, onReblog: this.handleModalReblog }));\n }\n }\n }\n\n handleDeleteClick = (status) => {\n const { dispatch, intl } = this.props;\n\n if (!deleteModal) {\n dispatch(deleteStatus(status.get('id')));\n } else {\n dispatch(openModal('CONFIRM', {\n message: intl.formatMessage(messages.deleteMessage),\n confirm: intl.formatMessage(messages.deleteConfirm),\n onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n }));\n }\n }\n\n handleMentionClick = (account, router) => {\n this.props.dispatch(mentionCompose(account, router));\n }\n\n handleOpenMedia = (media, index) => {\n this.props.dispatch(openModal('MEDIA', { media, index }));\n }\n\n handleOpenVideo = (media, time) => {\n this.props.dispatch(openModal('VIDEO', { media, time }));\n }\n\n handleMuteClick = (account) => {\n this.props.dispatch(initMuteModal(account));\n }\n\n handleConversationMuteClick = (status) => {\n if (status.get('muted')) {\n this.props.dispatch(unmuteStatus(status.get('id')));\n } else {\n this.props.dispatch(muteStatus(status.get('id')));\n }\n }\n\n handleToggleHidden = (status) => {\n if (status.get('hidden')) {\n this.props.dispatch(revealStatus(status.get('id')));\n } else {\n this.props.dispatch(hideStatus(status.get('id')));\n }\n }\n\n handleToggleAll = () => {\n const { status, ancestorsIds, descendantsIds } = this.props;\n const statusIds = [status.get('id')].concat(ancestorsIds.toJS(), descendantsIds.toJS());\n\n if (status.get('hidden')) {\n this.props.dispatch(revealStatus(statusIds));\n } else {\n this.props.dispatch(hideStatus(statusIds));\n }\n }\n\n handleBlockClick = (account) => {\n const { dispatch, intl } = this.props;\n\n dispatch(openModal('CONFIRM', {\n message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n confirm: intl.formatMessage(messages.blockConfirm),\n onConfirm: () => dispatch(blockAccount(account.get('id'))),\n }));\n }\n\n handleReport = (status) => {\n this.props.dispatch(initReport(status.get('account'), status));\n }\n\n handleHotkeyMoveUp = () => {\n this.handleMoveUp(this.props.status.get('id'));\n }\n\n handleHotkeyMoveDown = () => {\n this.handleMoveDown(this.props.status.get('id'));\n }\n\n handleHotkeyReply = e => {\n e.preventDefault();\n this.handleReplyClick(this.props.status);\n }\n\n handleHotkeyFavourite = () => {\n this.handleFavouriteClick(this.props.status);\n }\n\n handleHotkeyBoost = () => {\n this.handleReblogClick(this.props.status);\n }\n\n handleHotkeyMention = e => {\n e.preventDefault();\n this.handleMentionClick(this.props.status);\n }\n\n handleHotkeyOpenProfile = () => {\n this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`);\n }\n\n handleMoveUp = id => {\n const { status, ancestorsIds, descendantsIds } = this.props;\n\n if (id === status.get('id')) {\n this._selectChild(ancestorsIds.size - 1);\n } else {\n let index = ancestorsIds.indexOf(id);\n\n if (index === -1) {\n index = descendantsIds.indexOf(id);\n this._selectChild(ancestorsIds.size + index);\n } else {\n this._selectChild(index - 1);\n }\n }\n }\n\n handleMoveDown = id => {\n const { status, ancestorsIds, descendantsIds } = this.props;\n\n if (id === status.get('id')) {\n this._selectChild(ancestorsIds.size + 1);\n } else {\n let index = ancestorsIds.indexOf(id);\n\n if (index === -1) {\n index = descendantsIds.indexOf(id);\n this._selectChild(ancestorsIds.size + index + 2);\n } else {\n this._selectChild(index + 1);\n }\n }\n }\n\n _selectChild (index) {\n const element = this.node.querySelectorAll('.focusable')[index];\n\n if (element) {\n element.focus();\n }\n }\n\n renderChildren (list) {\n return list.map(id => (\n <StatusContainer\n key={id}\n id={id}\n onMoveUp={this.handleMoveUp}\n onMoveDown={this.handleMoveDown}\n />\n ));\n }\n\n setRef = c => {\n this.node = c;\n }\n\n componentDidUpdate () {\n if (this._scrolledIntoView) {\n return;\n }\n\n const { status, ancestorsIds } = this.props;\n\n if (status && ancestorsIds && ancestorsIds.size > 0) {\n const element = this.node.querySelectorAll('.focusable')[ancestorsIds.size - 1];\n\n element.scrollIntoView(true);\n this._scrolledIntoView = true;\n }\n }\n\n componentWillUnmount () {\n detachFullscreenListener(this.onFullScreenChange);\n }\n\n onFullScreenChange = () => {\n this.setState({ fullscreen: isFullscreen() });\n }\n\n render () {\n let ancestors, descendants;\n const { status, ancestorsIds, descendantsIds, intl } = this.props;\n const { fullscreen } = this.state;\n\n if (status === null) {\n return (\n <Column>\n <ColumnBackButton />\n <MissingIndicator />\n </Column>\n );\n }\n\n if (ancestorsIds && ancestorsIds.size > 0) {\n ancestors = <div>{this.renderChildren(ancestorsIds)}</div>;\n }\n\n if (descendantsIds && descendantsIds.size > 0) {\n descendants = <div>{this.renderChildren(descendantsIds)}</div>;\n }\n\n const handlers = {\n moveUp: this.handleHotkeyMoveUp,\n moveDown: this.handleHotkeyMoveDown,\n reply: this.handleHotkeyReply,\n favourite: this.handleHotkeyFavourite,\n boost: this.handleHotkeyBoost,\n mention: this.handleHotkeyMention,\n openProfile: this.handleHotkeyOpenProfile,\n };\n\n return (\n <Column>\n <ColumnHeader\n showBackButton\n extraButton={(\n <button className='column-header__button' title={intl.formatMessage(status.get('hidden') ? messages.revealAll : messages.hideAll)} aria-label={intl.formatMessage(status.get('hidden') ? messages.revealAll : messages.hideAll)} onClick={this.handleToggleAll} aria-pressed={status.get('hidden') ? 'false' : 'true'}><i className={`fa fa-${status.get('hidden') ? 'eye-slash' : 'eye'}`} /></button>\n )}\n />\n\n <ScrollContainer scrollKey='thread'>\n <div className={classNames('scrollable', 'detailed-status__wrapper', { fullscreen })} ref={this.setRef}>\n {ancestors}\n\n <HotKeys handlers={handlers}>\n <div className='focusable' tabIndex='0'>\n <DetailedStatus\n status={status}\n onOpenVideo={this.handleOpenVideo}\n onOpenMedia={this.handleOpenMedia}\n onToggleHidden={this.handleToggleHidden}\n />\n\n <ActionBar\n status={status}\n onReply={this.handleReplyClick}\n onFavourite={this.handleFavouriteClick}\n onReblog={this.handleReblogClick}\n onDelete={this.handleDeleteClick}\n onMention={this.handleMentionClick}\n onMute={this.handleMuteClick}\n onMuteConversation={this.handleConversationMuteClick}\n onBlock={this.handleBlockClick}\n onReport={this.handleReport}\n />\n </div>\n </HotKeys>\n\n {descendants}\n </div>\n </ScrollContainer>\n </Column>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/index.js","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nconst MissingIndicator = () => (\n <div className='regeneration-indicator missing-indicator'>\n <div>\n <div className='regeneration-indicator__label'>\n <FormattedMessage id='missing_indicator.label' tagName='strong' defaultMessage='Not found' />\n <FormattedMessage id='missing_indicator.sublabel' defaultMessage='This resource could not be found' />\n </div>\n </div>\n </div>\n);\n\nexport default MissingIndicator;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/missing_indicator.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport StatusContent from '../../../components/status_content';\nimport MediaGallery from '../../../components/media_gallery';\nimport AttachmentList from '../../../components/attachment_list';\nimport { Link } from 'react-router-dom';\nimport { FormattedDate, FormattedNumber } from 'react-intl';\nimport CardContainer from '../containers/card_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Video from '../../video';\n\nexport default class DetailedStatus extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n status: ImmutablePropTypes.map.isRequired,\n onOpenMedia: PropTypes.func.isRequired,\n onOpenVideo: PropTypes.func.isRequired,\n onToggleHidden: PropTypes.func.isRequired,\n };\n\n handleAccountClick = (e) => {\n if (e.button === 0) {\n e.preventDefault();\n this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`);\n }\n\n e.stopPropagation();\n }\n\n handleOpenVideo = startTime => {\n this.props.onOpenVideo(this.props.status.getIn(['media_attachments', 0]), startTime);\n }\n\n handleExpandedToggle = () => {\n this.props.onToggleHidden(this.props.status);\n }\n\n render () {\n const status = this.props.status.get('reblog') ? this.props.status.get('reblog') : this.props.status;\n\n let media = '';\n let applicationLink = '';\n let reblogLink = '';\n let reblogIcon = 'retweet';\n\n if (status.get('media_attachments').size > 0) {\n if (status.get('media_attachments').some(item => item.get('type') === 'unknown')) {\n media = <AttachmentList media={status.get('media_attachments')} />;\n } else if (status.getIn(['media_attachments', 0, 'type']) === 'video') {\n const video = status.getIn(['media_attachments', 0]);\n\n media = (\n <Video\n preview={video.get('preview_url')}\n src={video.get('url')}\n width={300}\n height={150}\n inline\n onOpenVideo={this.handleOpenVideo}\n sensitive={status.get('sensitive')}\n />\n );\n } else {\n media = (\n <MediaGallery\n standalone\n sensitive={status.get('sensitive')}\n media={status.get('media_attachments')}\n height={300}\n onOpenMedia={this.props.onOpenMedia}\n />\n );\n }\n } else if (status.get('spoiler_text').length === 0) {\n media = <CardContainer onOpenMedia={this.props.onOpenMedia} statusId={status.get('id')} />;\n }\n\n if (status.get('application')) {\n applicationLink = <span> · <a className='detailed-status__application' href={status.getIn(['application', 'website'])} target='_blank' rel='noopener'>{status.getIn(['application', 'name'])}</a></span>;\n }\n\n if (status.get('visibility') === 'direct') {\n reblogIcon = 'envelope';\n } else if (status.get('visibility') === 'private') {\n reblogIcon = 'lock';\n }\n\n if (status.get('visibility') === 'private') {\n reblogLink = <i className={`fa fa-${reblogIcon}`} />;\n } else {\n reblogLink = (<Link to={`/statuses/${status.get('id')}/reblogs`} className='detailed-status__link'>\n <i className={`fa fa-${reblogIcon}`} />\n <span className='detailed-status__reblogs'>\n <FormattedNumber value={status.get('reblogs_count')} />\n </span>\n </Link>);\n }\n\n return (\n <div className='detailed-status'>\n <a href={status.getIn(['account', 'url'])} onClick={this.handleAccountClick} className='detailed-status__display-name'>\n <div className='detailed-status__display-avatar'><Avatar account={status.get('account')} size={48} /></div>\n <DisplayName account={status.get('account')} />\n </a>\n\n <StatusContent status={status} expanded={!status.get('hidden')} onExpandedToggle={this.handleExpandedToggle} />\n\n {media}\n\n <div className='detailed-status__meta'>\n <a className='detailed-status__datetime' href={status.get('url')} target='_blank' rel='noopener'>\n <FormattedDate value={new Date(status.get('created_at'))} hour12={false} year='numeric' month='short' day='2-digit' hour='2-digit' minute='2-digit' />\n </a>{applicationLink} · {reblogLink} · <Link to={`/statuses/${status.get('id')}/favourites`} className='detailed-status__link'>\n <i className='fa fa-star' />\n <span className='detailed-status__favorites'>\n <FormattedNumber value={status.get('favourites_count')} />\n </span>\n </Link>\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/components/detailed_status.js","import { connect } from 'react-redux';\nimport Card from '../components/card';\n\nconst mapStateToProps = (state, { statusId }) => ({\n card: state.getIn(['cards', statusId], null),\n});\n\nexport default connect(mapStateToProps)(Card);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/containers/card_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport IconButton from '../../../components/icon_button';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst messages = defineMessages({\n delete: { id: 'status.delete', defaultMessage: 'Delete' },\n mention: { id: 'status.mention', defaultMessage: 'Mention @{name}' },\n reply: { id: 'status.reply', defaultMessage: 'Reply' },\n reblog: { id: 'status.reblog', defaultMessage: 'Boost' },\n cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' },\n favourite: { id: 'status.favourite', defaultMessage: 'Favourite' },\n muteConversation: { id: 'status.mute_conversation', defaultMessage: 'Mute conversation' },\n unmuteConversation: { id: 'status.unmute_conversation', defaultMessage: 'Unmute conversation' },\n block: { id: 'status.block', defaultMessage: 'Block @{name}' },\n share: { id: 'status.share', defaultMessage: 'Share' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n static contextTypes = {\n router: PropTypes.object,\n };\n\n static propTypes = {\n status: ImmutablePropTypes.map.isRequired,\n onReply: PropTypes.func.isRequired,\n onReblog: PropTypes.func.isRequired,\n onFavourite: PropTypes.func.isRequired,\n onDelete: PropTypes.func.isRequired,\n onMention: PropTypes.func.isRequired,\n onMuteConversation: PropTypes.func,\n onBlock: PropTypes.func,\n onPin: PropTypes.func,\n intl: PropTypes.object.isRequired,\n };\n\n handleReplyClick = () => {\n this.props.onReply(this.props.status);\n }\n\n handleReblogClick = (e) => {\n this.props.onReblog(this.props.status, e);\n }\n\n handleFavouriteClick = () => {\n this.props.onFavourite(this.props.status);\n }\n\n handleDeleteClick = () => {\n this.props.onDelete(this.props.status);\n }\n\n handleMentionClick = () => {\n this.props.onMention(this.props.status.get('account'), this.context.router.history);\n }\n\n handleConversationMuteClick = () => {\n this.props.onMuteConversation(this.props.status);\n }\n\n handleBlockClick = () => {\n this.props.onBlock(this.props.status.get('account'));\n }\n\n handlePinClick = () => {\n this.props.onPin(this.props.status);\n }\n\n handleShare = () => {\n navigator.share({\n text: this.props.status.get('search_index'),\n url: this.props.status.get('url'),\n });\n }\n\n render () {\n const { status, intl } = this.props;\n\n const publicStatus = ['public', 'unlisted'].includes(status.get('visibility'));\n const mutingConversation = status.get('muted');\n\n let menu = [];\n\n if (me === status.getIn(['account', 'id'])) {\n menu.push({ text: intl.formatMessage(mutingConversation ? messages.unmuteConversation : messages.muteConversation), action: this.handleConversationMuteClick });\n menu.push(null);\n menu.push({ text: intl.formatMessage(messages.delete), action: this.handleDeleteClick });\n } else {\n menu.push({ text: intl.formatMessage(messages.mention, { name: status.getIn(['account', 'username']) }), action: this.handleMentionClick });\n menu.push({ text: intl.formatMessage(messages.block, { name: status.getIn(['account', 'username']) }), action: this.handleBlockClick });\n }\n\n const shareButton = ('share' in navigator) && status.get('visibility') === 'public' && (\n <div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.share)} icon='share-alt' onClick={this.handleShare} /></div>\n );\n\n let reblogIcon = 'retweet';\n if (status.get('visibility') === 'direct') reblogIcon = 'envelope';\n else if (status.get('visibility') === 'private') reblogIcon = 'lock';\n\n let reblog_disabled = (status.get('visibility') === 'direct' || status.get('visibility') === 'private');\n\n return (\n <div className='detailed-status__action-bar'>\n <div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.reply)} icon={status.get('in_reply_to_id', null) === null ? 'reply' : 'reply-all'} onClick={this.handleReplyClick} /></div>\n <div className='detailed-status__button'><IconButton disabled={reblog_disabled} active={status.get('reblogged')} title={reblog_disabled ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog)} icon={reblogIcon} onClick={this.handleReblogClick} /></div>\n <div className='detailed-status__button'><IconButton animate active={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='star' onClick={this.handleFavouriteClick} activeStyle={{ color: '#d8a070' }} /></div>\n {shareButton}\n\n <div className='detailed-status__action-bar-dropdown'>\n <DropdownMenuContainer size={18} icon='ellipsis-h' items={menu} direction='left' title='More' />\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/status/components/action_bar.js"],"sourceRoot":""}
\ No newline at end of file |