Rev 1018 | Rev 6360 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import { axios } from '../../utils'
import { feedActionTypes } from './feed.types'
export const setTimelineUrl = (url) => {
return {
type: feedActionTypes.SET_TIMELINE_URL,
payload: url
}
}
export const loadFeeds = () => {
return {
type: feedActionTypes.LOAD_FEEDS
}
}
export const loadFeedsSuccess = (feeds, currentPage, pages) => {
return {
type: feedActionTypes.LOAD_FEEDS_SUCCESS,
payload: { feeds, currentPage, pages }
}
}
export const addFeed = (feed, feedSharedId = '') => ({
type: feedActionTypes.ADD_FEED,
payload: { feed, feedSharedId }
})
export const deleteFeed = (feedId) => ({
type: feedActionTypes.DELETE_FEED,
payload: feedId
})
export const setCurrentPage = (page) => ({
type: feedActionTypes.SET_CURRENT_PAGE,
payload: page
})
export const fetchFeeds = (url, page) => {
return (dispatch) => {
dispatch(loadFeeds())
axios
.get(url + '?page=' + page)
.then((res) => {
const resData = res.data
const feeds = resData.data.current.items
const currentPage = resData.data.current.page
const pages = resData.data.total.pages
if (resData.success) {
dispatch(loadFeedsSuccess(feeds, currentPage, pages))
}
})
.catch((error) => {
// dispatch(fetchFeedsFailure());
throw Error(error.message)
})
}
}