import api from '../../data/applications-api'; export const RECEIVE_ALL_APPLICATIONS = 'RECEIVE_ALL_APPLICATIONS'; export const ERROR_RECEIVE_ALL_APPLICATIONS = 'ERROR_RECEIVE_ALL_APPLICATIONS'; export const ERROR_UPDATING_APPLICATION_DATA = 'ERROR_UPDATING_APPLICATION_DATA'; export const RECEIVE_APPLICATION = 'RECEIVE_APPLICATION'; const recieveAllApplications = (json) => ({ type: RECEIVE_ALL_APPLICATIONS, value: json, }); const recieveApplication = (json) => ({ type: RECEIVE_APPLICATION, value: json, }); const errorReceiveApplications = (statusCode, type = ERROR_RECEIVE_ALL_APPLICATIONS) => ({ type, statusCode, }); export function fetchAll () { return dispatch => api.fetchAll() .then(json => dispatch(recieveAllApplications(json))) .catch(error => dispatch(errorReceiveApplications(error))); } export function storeApplicationMetaData (appName, key, value) { return dispatch => api.storeApplicationMetaData(appName, key, value) .catch(error => dispatch(errorReceiveApplications(error, ERROR_UPDATING_APPLICATION_DATA))); } export function fetchApplication (appName) { return dispatch => api.fetchApplication(appName) .then(json => dispatch(recieveApplication(json))) .catch(error => dispatch(errorReceiveApplications(error))); }