import { connect } from 'react-redux'; import { doResolveUris } from 'redux/actions/claims'; import { doSetMentionSearchResults } from 'redux/actions/search'; import { makeSelectWinningUriForQuery } from 'redux/selectors/search'; import { MAX_LIVESTREAM_COMMENTS } from 'constants/livestream'; import { selectChannelMentionData } from 'redux/selectors/comments'; import { withRouter } from 'react-router'; import TextareaWithSuggestions from './view'; const select = (state, props) => { const { uri } = props; const maxComments = props.isLivestream ? MAX_LIVESTREAM_COMMENTS : -1; const data = selectChannelMentionData(state, uri, maxComments); const { canonicalCommentors, canonicalCreatorUri, canonicalSearch, canonicalSubscriptions, commentorUris, hasNewResolvedResults, query, } = data; return { canonicalCommentors, canonicalCreatorUri, canonicalSearch, canonicalSubscriptions, canonicalTop: makeSelectWinningUriForQuery(query)(state), commentorUris, hasNewResolvedResults, searchQuery: query, }; }; const perform = { doResolveUris, doSetMentionSearchResults, }; export default withRouter(connect(select, perform)(TextareaWithSuggestions));