From b7508940b7614a81df0b1271deb2bcbf65c6ddd5 Mon Sep 17 00:00:00 2001 From: Thibaut Girka Date: Sun, 27 May 2018 17:06:13 +0200 Subject: [Glitch] Add option to show only local toots in timeline preview Port missing changes from 4e4f1b0dcb386464d653fcce765ca775e566a03c to glitch-soc --- .../standalone/community_timeline/index.js | 74 ++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 app/javascript/flavours/glitch/features/standalone/community_timeline/index.js (limited to 'app/javascript/flavours/glitch/features/standalone') diff --git a/app/javascript/flavours/glitch/features/standalone/community_timeline/index.js b/app/javascript/flavours/glitch/features/standalone/community_timeline/index.js new file mode 100644 index 000000000..ff464b390 --- /dev/null +++ b/app/javascript/flavours/glitch/features/standalone/community_timeline/index.js @@ -0,0 +1,74 @@ +import React from 'react'; +import { connect } from 'react-redux'; +import PropTypes from 'prop-types'; +import StatusListContainer from 'flavours/glitch/features/ui/containers/status_list_container'; +import { + refreshCommunityTimeline, + expandCommunityTimeline, +} from 'flavours/glitch/actions/timelines'; +import Column from 'flavours/glitch/components/column'; +import ColumnHeader from 'flavours/glitch/components/column_header'; +import { defineMessages, injectIntl } from 'react-intl'; +import { connectCommunityStream } from 'flavours/glitch/actions/streaming'; + +const messages = defineMessages({ + title: { id: 'standalone.public_title', defaultMessage: 'A look inside...' }, +}); + +@connect() +@injectIntl +export default class CommunityTimeline extends React.PureComponent { + + static propTypes = { + dispatch: PropTypes.func.isRequired, + intl: PropTypes.object.isRequired, + }; + + handleHeaderClick = () => { + this.column.scrollTop(); + } + + setRef = c => { + this.column = c; + } + + componentDidMount () { + const { dispatch } = this.props; + + dispatch(refreshCommunityTimeline()); + this.disconnect = dispatch(connectCommunityStream()); + } + + componentWillUnmount () { + if (this.disconnect) { + this.disconnect(); + this.disconnect = null; + } + } + + handleLoadMore = () => { + this.props.dispatch(expandCommunityTimeline()); + } + + render () { + const { intl } = this.props; + + return ( + + + + + + ); + } + +} -- cgit