mirror of
https://github.com/astuto/astuto.git
synced 2025-12-15 11:17:49 +01:00
40 lines
1.0 KiB
TypeScript
40 lines
1.0 KiB
TypeScript
import { connect } from 'react-redux';
|
|
|
|
import { requestPosts } from '../actions/requestPosts';
|
|
import { requestPostStatuses } from '../actions/requestPostStatuses';
|
|
import {
|
|
setSearchFilter,
|
|
setPostStatusFilter,
|
|
} from '../actions/changeFilters';
|
|
|
|
import { State } from '../reducers/rootReducer';
|
|
|
|
import BoardP from '../components/Board/BoardP';
|
|
|
|
const mapStateToProps = (state: State) => ({
|
|
posts: state.posts,
|
|
postStatuses: state.postStatuses,
|
|
});
|
|
|
|
const mapDispatchToProps = (dispatch: any) => ({
|
|
requestPosts(boardId: number, page: number = 1, searchQuery: string = '', postStatusId: number = null) {
|
|
dispatch(requestPosts(boardId, page, searchQuery, postStatusId));
|
|
},
|
|
|
|
requestPostStatuses() {
|
|
dispatch(requestPostStatuses());
|
|
},
|
|
|
|
handleSearchFilterChange(searchQuery: string) {
|
|
dispatch(setSearchFilter(searchQuery));
|
|
},
|
|
|
|
handlePostStatusFilterChange(postStatusId: number) {
|
|
dispatch(setPostStatusFilter(postStatusId));
|
|
},
|
|
});
|
|
|
|
export default connect(
|
|
mapStateToProps,
|
|
mapDispatchToProps,
|
|
)(BoardP); |