-
Alexandru Munteanu authored3a17e030
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
import { get } from 'lodash'
import { create, update } from 'pubsweet-client/src/helpers/api'
// #region Selectors
export const selectRecommendations = (state, fragmentId) =>
get(state, `fragments.${fragmentId}.recommendations`, [])
export const selectEditorialRecommendations = (state, fragmentId) =>
selectRecommendations(state, fragmentId).filter(
r => r.recommendationType === 'editorRecommendation' && r.comments,
)
export const selectReviewRecommendations = (state, fragmentId) =>
selectRecommendations(state, fragmentId).filter(
r => r.recommendationType === 'review',
)
// #endregion
// #region Actions
// error handling and fetching is handled by the autosave reducer
export const createRecommendation = (
collId,
fragId,
recommendation,
) => dispatch =>
create(
`/collections/${collId}/fragments/${fragId}/recommendations`,
recommendation,
)
export const updateRecommendation = (
collId,
fragId,
recommendation,
) => dispatch =>
update(
`/collections/${collId}/fragments/${fragId}/recommendations/${
recommendation.id
}`,
recommendation,
)
// #endregion