lbry-desktop/ui/js/selectors/content.js

40 lines
970 B
JavaScript
Raw Normal View History

2017-06-06 17:19:12 -04:00
import { createSelector } from "reselect";
2017-04-23 16:56:50 +07:00
2017-06-05 21:21:55 -07:00
export const _selectState = state => state.content || {};
2017-04-23 16:56:50 +07:00
2017-05-03 23:44:08 -04:00
export const selectFeaturedUris = createSelector(
2017-04-23 16:56:50 +07:00
_selectState,
2017-06-06 17:19:12 -04:00
state => state.featuredUris
2017-06-05 21:21:55 -07:00
);
2017-04-23 16:56:50 +07:00
2017-05-03 23:44:08 -04:00
export const selectFetchingFeaturedUris = createSelector(
2017-04-23 16:56:50 +07:00
_selectState,
2017-06-06 17:19:12 -04:00
state => !!state.fetchingFeaturedContent
2017-06-05 21:21:55 -07:00
);
2017-04-23 16:56:50 +07:00
2017-05-15 12:34:33 -04:00
export const selectResolvingUris = createSelector(
2017-05-02 11:48:16 +07:00
_selectState,
2017-06-06 17:19:12 -04:00
state => state.resolvingUris || []
2017-06-05 21:21:55 -07:00
);
2017-05-02 11:48:16 +07:00
2017-09-07 23:15:05 -04:00
export const makeSelectIsUriResolving = uri => {
return createSelector(
selectResolvingUris,
resolvingUris => resolvingUris && resolvingUris.indexOf(uri) != -1
);
2017-06-05 21:21:55 -07:00
};
2017-07-17 13:06:04 +07:00
export const selectChannelPages = createSelector(
_selectState,
state => state.channelPages || {}
);
2017-09-07 23:15:05 -04:00
export const makeSelectTotalPagesForChannel = uri => {
return createSelector(selectChannelPages, byUri => byUri && byUri[uri]);
2017-07-17 13:06:04 +07:00
};
2017-07-29 18:56:08 -04:00
export const selectRewardContentClaimIds = createSelector(
_selectState,
2017-07-29 18:56:08 -04:00
state => state.rewardedContentClaimIds
);