-
Notifications
You must be signed in to change notification settings - Fork 375
Expand file tree
/
Copy pathPageDropdownContainer.js
More file actions
28 lines (26 loc) · 1.01 KB
/
PageDropdownContainer.js
File metadata and controls
28 lines (26 loc) · 1.01 KB
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
28
import React from 'react';
import PropTypes from 'prop-types';
import { connect } from '../utils/griddleConnect';
import compose from 'recompose/compose';
import mapProps from 'recompose/mapProps';
import getContext from 'recompose/getContext';
//import { currentPageSelector, maxPageSelector, classNamesForComponentSelector, stylesForComponentSelector } from '../selectors/dataSelectors';
const enhance = OriginalComponent => compose(
getContext({
events: PropTypes.object,
selectors: PropTypes.object
}),
connect(
(state, props) => ({
maxPages: props.selectors.maxPageSelector(state, props),
currentPage: props.selectors.currentPageSelector(state, props),
className: props.selectors.classNamesForComponentSelector(state, 'PageDropdown'),
style: props.selectors.stylesForComponentSelector(state, 'PageDropdown'),
})
),
mapProps(({ events: { onGetPage: setPage }, ...props }) => ({
...props,
setPage,
}))
)((props) => <OriginalComponent {...props} />);
export default enhance;