UNPKG

cluedin-widget

Version:

This is the project for creating and managing widgets in CluedIn.

50 lines (38 loc) 1.3 kB
import constants from '../constants'; import { unauthorized } from './generic'; import { getLastGenericIssues } from '../data/issue'; import fake from '../../iso/entity/fake'; var requestGenericLastIssues = () => { return { type: constants.issue.REQUEST_GENERIC_LAST_ISSUES }; }; var receiveGenericLastIssues = ( issues, page, isFake ) => { if ( !page ) { page = 0; } return { type: constants.issue.RECEIVE_GENERIC_LAST_ISSUES, data: { issues: issues, isFake: isFake, nextPage: (page + 1 ) } }; }; var invalidGenericLastIssues = () => { return { type: constants.issue.INVALID_GENERIC_LAST_ISSUES }; }; export function fetchGenericLastIssues( pageNumber, id ) { return function( dispatch ) { dispatch( requestGenericLastIssues() ); return getLastGenericIssues( pageNumber || 0, id ).then( function( resp ) { if ( !resp || resp.length === 0 && ( !pageNumber || pageNumber === 0 ) ) { return dispatch( receiveGenericLastIssues( fake.issue, pageNumber, true ) ); } dispatch( receiveGenericLastIssues( resp, pageNumber ) ); } ).catch( unauthorized( dispatch, invalidGenericLastIssues ) ); }; }