--- /dev/null
+import { connect } from 'react-redux';
+import {
+ changeSearch,
+ clearSearch,
+ submitSearch,
+ showSearch,
+} from 'flavours/glitch/actions/search';
+import Search from '../components/search';
+
+const mapStateToProps = state => ({
+ value: state.getIn(['search', 'value']),
+ submitted: state.getIn(['search', 'submitted']),
+});
+
+const mapDispatchToProps = dispatch => ({
+
+ onChange (value) {
+ dispatch(changeSearch(value));
+ },
+
+ onClear () {
+ dispatch(clearSearch());
+ },
+
+ onSubmit () {
+ dispatch(submitSearch());
+ },
+
+ onShow () {
+ dispatch(showSearch());
+ },
+
+});
+
+export default connect(mapStateToProps, mapDispatchToProps)(Search);
// Actions.
import { openModal } from 'flavours/glitch/actions/modal';
-import {
- changeSearch,
- clearSearch,
- showSearch,
- submitSearch,
-} from 'flavours/glitch/actions/search';
import { cycleElefriendCompose } from 'flavours/glitch/actions/compose';
// Components.
import DrawerAccount from './account';
import DrawerHeader from './header';
import DrawerResults from './results';
-import DrawerSearch from './search';
+import SearchContainer from './containers/search_container';
// Utils.
import { me, mascot } from 'flavours/glitch/util/initial_state';
elefriend: state.getIn(['compose', 'elefriend']),
results: state.getIn(['search', 'results']),
searchHidden: state.getIn(['search', 'hidden']),
- searchValue: state.getIn(['search', 'value']),
submitted: state.getIn(['search', 'submitted']),
unreadNotifications: state.getIn(['notifications', 'unread']),
showNotificationsBadge: state.getIn(['local_settings', 'notifications', 'tab_badge']),
// Dispatch mapping.
const mapDispatchToProps = (dispatch, { intl }) => ({
- onChange (value) {
- dispatch(changeSearch(value));
- },
- onClear () {
- dispatch(clearSearch());
- },
onClickElefriend () {
dispatch(cycleElefriendCompose());
},
- onShow () {
- dispatch(showSearch());
- },
- onSubmit () {
- dispatch(submitSearch());
- },
onOpenSettings (e) {
e.preventDefault();
e.stopPropagation();
results: ImmutablePropTypes.map,
elefriend: PropTypes.number,
searchHidden: PropTypes.bool,
- searchValue: PropTypes.string,
submitted: PropTypes.bool,
unreadNotifications: PropTypes.number,
showNotificationsBadge: PropTypes.bool,
// Dispatch props.
- onChange: PropTypes.func,
- onClear: PropTypes.func,
onClickElefriend: PropTypes.func,
- onShow: PropTypes.func,
- onSubmit: PropTypes.func,
onOpenSettings: PropTypes.func,
};
elefriend,
intl,
multiColumn,
- onChange,
- onClear,
onClickElefriend,
onOpenSettings,
- onShow,
- onSubmit,
results,
searchHidden,
- searchValue,
submitted,
isSearchPage,
unreadNotifications,
onSettingsClick={onOpenSettings}
/>
)}
- {(multiColumn || isSearchPage) && <DrawerSearch
- intl={intl}
- onChange={onChange}
- onClear={onClear}
- onShow={onShow}
- onSubmit={onSubmit}
- submitted={submitted}
- value={searchValue}
- /> }
+ {(multiColumn || isSearchPage) && <SearchContainer /> }
<div className='drawer__pager'>
{!isSearchPage && <div className='drawer__inner'>
<DrawerAccount account={account} />
import Permalink from 'flavours/glitch/components/permalink';
import { WrappedComponent as RawComposer } from 'flavours/glitch/features/composer';
import DrawerAccount from 'flavours/glitch/features/compose/account';
-import DrawerSearch from 'flavours/glitch/features/compose/search';
+import Search from 'flavours/glitch/features/compose/components/search';
import ColumnHeader from './column_header';
import { me } from 'flavours/glitch/util/initial_state';
+const noop = () => { };
+
const messages = defineMessages({
home_title: { id: 'column.home', defaultMessage: 'Home' },
notifications_title: { id: 'column.notifications', defaultMessage: 'Notifications' },
const PageThree = ({ intl, myAccount }) => (
<div className='onboarding-modal__page onboarding-modal__page-three'>
<div className='figure non-interactive'>
- <DrawerSearch intl={intl} />
+ <Search
+ value=''
+ onChange={noop}
+ onSubmit={noop}
+ onClear={noop}
+ onShow={noop}
+ />
<div className='pseudo-drawer'>
<DrawerAccount account={myAccount} />