lbry-desktop/ui/page/fileListPublished/index.js

38 lines
1.3 KiB
JavaScript
Raw Normal View History

import { connect } from 'react-redux';
import {
selectIsFetchingClaimListMine,
selectMyClaimsPage,
selectMyClaimsPageItemCount,
selectFetchingMyClaimsPageError,
} from 'redux/selectors/claims';
import { doFetchClaimListMine, doCheckPendingClaims } from 'redux/actions/claims';
import { doClearPublish } from 'redux/actions/publish';
import FileListPublished from './view';
2019-09-23 19:32:38 +02:00
import { withRouter } from 'react-router';
import { MY_CLAIMS_PAGE_SIZE, PAGE_PARAM, PAGE_SIZE_PARAM } from 'constants/claim';
2019-09-23 19:32:38 +02:00
const select = (state, props) => {
const { search } = props.location;
const urlParams = new URLSearchParams(search);
const page = Number(urlParams.get(PAGE_PARAM)) || '1';
const pageSize = urlParams.get(PAGE_SIZE_PARAM) || String(MY_CLAIMS_PAGE_SIZE);
2019-09-23 19:32:38 +02:00
return {
page,
pageSize,
2019-09-23 19:32:38 +02:00
fetching: selectIsFetchingClaimListMine(state),
urls: selectMyClaimsPage(state),
urlTotal: selectMyClaimsPageItemCount(state),
error: selectFetchingMyClaimsPageError(state),
2019-09-23 19:32:38 +02:00
};
};
const perform = (dispatch) => ({
2020-07-23 16:22:57 +02:00
checkPendingPublishes: () => dispatch(doCheckPendingClaims()),
fetchClaimListMine: (page, pageSize, resolve, filterBy) =>
dispatch(doFetchClaimListMine(page, pageSize, resolve, filterBy)),
clearPublish: () => dispatch(doClearPublish()),
2017-06-06 06:21:55 +02:00
});
export default withRouter(connect(select, perform)(FileListPublished));