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/list_editor/components/search.js | |
parent | f0e1b12c101e0dd0ddaaef8bdcc166624dba62d5 (diff) |
Rename JSX files with proper `.jsx` extension (#23733)
Diffstat (limited to 'app/javascript/mastodon/features/list_editor/components/search.js')
-rw-r--r-- | app/javascript/mastodon/features/list_editor/components/search.js | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/app/javascript/mastodon/features/list_editor/components/search.js b/app/javascript/mastodon/features/list_editor/components/search.js deleted file mode 100644 index 3ee26c8eb..000000000 --- a/app/javascript/mastodon/features/list_editor/components/search.js +++ /dev/null @@ -1,76 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; -import { connect } from 'react-redux'; -import { defineMessages, injectIntl } from 'react-intl'; -import { fetchListSuggestions, clearListSuggestions, changeListSuggestions } from '../../../actions/lists'; -import classNames from 'classnames'; -import Icon from 'mastodon/components/icon'; - -const messages = defineMessages({ - search: { id: 'lists.search', defaultMessage: 'Search among people you follow' }, -}); - -const mapStateToProps = state => ({ - value: state.getIn(['listEditor', 'suggestions', 'value']), -}); - -const mapDispatchToProps = dispatch => ({ - onSubmit: value => dispatch(fetchListSuggestions(value)), - onClear: () => dispatch(clearListSuggestions()), - onChange: value => dispatch(changeListSuggestions(value)), -}); - -export default @connect(mapStateToProps, mapDispatchToProps) -@injectIntl -class Search extends React.PureComponent { - - static propTypes = { - intl: PropTypes.object.isRequired, - value: PropTypes.string.isRequired, - onChange: PropTypes.func.isRequired, - onSubmit: PropTypes.func.isRequired, - onClear: PropTypes.func.isRequired, - }; - - handleChange = e => { - this.props.onChange(e.target.value); - }; - - handleKeyUp = e => { - if (e.keyCode === 13) { - this.props.onSubmit(this.props.value); - } - }; - - handleClear = () => { - this.props.onClear(); - }; - - render () { - const { value, intl } = this.props; - const hasValue = value.length > 0; - - return ( - <div className='list-editor__search search'> - <label> - <span style={{ display: 'none' }}>{intl.formatMessage(messages.search)}</span> - - <input - className='search__input' - type='text' - value={value} - onChange={this.handleChange} - onKeyUp={this.handleKeyUp} - placeholder={intl.formatMessage(messages.search)} - /> - </label> - - <div role='button' tabIndex='0' className='search__icon' onClick={this.handleClear}> - <Icon id='search' className={classNames({ active: !hasValue })} /> - <Icon id='times-circle' aria-label={intl.formatMessage(messages.search)} className={classNames({ active: hasValue })} /> - </div> - </div> - ); - } - -} |