diff options
author | Renaud Chaput <renchap@gmail.com> | 2023-02-20 03:20:59 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-20 03:20:59 +0100 |
commit | 44a7d87cb1f5df953b6c14c16c59e2e4ead1bcb9 (patch) | |
tree | 71b60ccd9b23ec8f8d72fa3562f0bc343c6e456e /app/javascript/mastodon/features/lists/index.js | |
parent | f0e1b12c101e0dd0ddaaef8bdcc166624dba62d5 (diff) |
Rename JSX files with proper `.jsx` extension (#23733)
Diffstat (limited to 'app/javascript/mastodon/features/lists/index.js')
-rw-r--r-- | app/javascript/mastodon/features/lists/index.js | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/app/javascript/mastodon/features/lists/index.js b/app/javascript/mastodon/features/lists/index.js deleted file mode 100644 index 3a0b1373a..000000000 --- a/app/javascript/mastodon/features/lists/index.js +++ /dev/null @@ -1,89 +0,0 @@ -import PropTypes from 'prop-types'; -import React from 'react'; -import { Helmet } from 'react-helmet'; -import ImmutablePropTypes from 'react-immutable-proptypes'; -import ImmutablePureComponent from 'react-immutable-pure-component'; -import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; -import { connect } from 'react-redux'; -import { createSelector } from 'reselect'; -import { fetchLists } from 'mastodon/actions/lists'; -import LoadingIndicator from 'mastodon/components/loading_indicator'; -import ScrollableList from 'mastodon/components/scrollable_list'; -import Column from 'mastodon/components/column'; -import ColumnHeader from 'mastodon/components/column_header'; -import ColumnLink from 'mastodon/features/ui/components/column_link'; -import ColumnSubheading from 'mastodon/features/ui/components/column_subheading'; -import NewListForm from './components/new_list_form'; - -const messages = defineMessages({ - heading: { id: 'column.lists', defaultMessage: 'Lists' }, - subheading: { id: 'lists.subheading', defaultMessage: 'Your lists' }, -}); - -const getOrderedLists = createSelector([state => state.get('lists')], lists => { - if (!lists) { - return lists; - } - - return lists.toList().filter(item => !!item).sort((a, b) => a.get('title').localeCompare(b.get('title'))); -}); - -const mapStateToProps = state => ({ - lists: getOrderedLists(state), -}); - -export default @connect(mapStateToProps) -@injectIntl -class Lists extends ImmutablePureComponent { - - static propTypes = { - params: PropTypes.object.isRequired, - dispatch: PropTypes.func.isRequired, - lists: ImmutablePropTypes.list, - intl: PropTypes.object.isRequired, - multiColumn: PropTypes.bool, - }; - - componentWillMount () { - this.props.dispatch(fetchLists()); - } - - render () { - const { intl, lists, multiColumn } = this.props; - - if (!lists) { - return ( - <Column> - <LoadingIndicator /> - </Column> - ); - } - - const emptyMessage = <FormattedMessage id='empty_column.lists' defaultMessage="You don't have any lists yet. When you create one, it will show up here." />; - - return ( - <Column bindToDocument={!multiColumn} label={intl.formatMessage(messages.heading)}> - <ColumnHeader title={intl.formatMessage(messages.heading)} icon='list-ul' multiColumn={multiColumn} showBackButton /> - - <NewListForm /> - - <ScrollableList - scrollKey='lists' - emptyMessage={emptyMessage} - prepend={<ColumnSubheading text={intl.formatMessage(messages.subheading)} />} - bindToDocument={!multiColumn} - > - {lists.map(list => - <ColumnLink key={list.get('id')} to={`/lists/${list.get('id')}`} icon='list-ul' text={list.get('title')} />, - )} - </ScrollableList> - - <Helmet> - <title>{intl.formatMessage(messages.heading)}</title> - <meta name='robots' content='noindex' /> - </Helmet> - </Column> - ); - } - -} |