-
Notifications
You must be signed in to change notification settings - Fork 375
Expand file tree
/
Copy pathSettingsToggleContainer.js
More file actions
27 lines (25 loc) · 964 Bytes
/
SettingsToggleContainer.js
File metadata and controls
27 lines (25 loc) · 964 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import React from 'react';
import PropTypes from 'prop-types';
import { connect } from '../utils/griddleConnect';
import compose from 'recompose/compose';
import getContext from 'recompose/getContext';
import { textSelector, classNamesForComponentSelector, stylesForComponentSelector } from '../selectors/dataSelectors';
import { toggleSettings as toggleSettingsAction } from '../actions';
const enhancedSettingsToggle = OriginalComponent => compose(
getContext({
selectors: PropTypes.object
}),
connect((state, props) => ({
text: props.selectors.textSelector(state, { key: 'settingsToggle' }),
className: props.selectors.classNamesForComponentSelector(state, 'SettingsToggle'),
style: props.selectors.stylesForComponentSelector(state, 'SettingsToggle'),
}),
{
toggleSettings: toggleSettingsAction
}
),
)(props => <OriginalComponent
{...props}
onClick={props.toggleSettings}
/>);
export default enhancedSettingsToggle;