lbry-desktop/src/renderer/redux/selectors/availability.js
2017-12-13 18:36:30 -03:00

23 lines
626 B
JavaScript

import { createSelector } from "reselect";
const _selectState = state => state.availability;
export const selectAvailabilityByUri = createSelector(
_selectState,
state => state.byUri || {}
);
export const makeSelectIsAvailableForUri = uri =>
createSelector(
selectAvailabilityByUri,
byUri => (!byUri || byUri[uri] === undefined ? undefined : byUri[uri] > 0)
);
export const selectFetchingAvailability = createSelector(
_selectState,
state => state.fetching || {}
);
export const makeSelectFetchingAvailabilityForUri = uri =>
createSelector(selectFetchingAvailability, byUri => byUri && byUri[uri]);