1.0.2 • Published 5 years ago

@synapsestudios/fetch-client-goalie v1.0.2

Weekly downloads
337
License
MIT
Repository
github
Last release
5 years ago

fetch-client-goalie

CircleCI

These are helpers that allow a frontend using redux and fetch-client to respond to the 412 error returned by a server using goalie, and to prompt users to reload their app.

Installation

First add the package

npm i --save @synapsestudios/fetch-client-goalie

Next register the fetch-client plugin. You must pass your redux store in to the plugin.

import Client from '@synapsestudios/fetch-client';
import { createPlugin } from '@synapsestudios/fetch-client-goalie';
import store from '../redux-store';

const client = new Client({ url:  'http://api.com' });

client.addPlugin(createPlugin('1.0.0', store));

Finally register the reducer

import { shouldUpdateReducer } from '@synapsestudios/fetch-client-goalie';

const reducers = combineReducers({
  //... your other reducers
  shouldUpdate: shouldUpdateReducer,
});

Usage

If the "shouldUpdate" value in your reducer is ever true then you know that the api is returning 412 errors and you should prompt your user to update. Here's an example using react:

import React from 'react';
import { connect } from 'react-redux';

const Component = ({shouldUpdate}) => {
  if (shouldUpdate) {
    return <div>You have to refresh now</div>
  }

  return <div>You're all up to date!</div>
}

export default connect(state => ({
  shouldUpdate: state.shouldUpdate
}))(Component);
1.0.2

5 years ago

1.0.2-rc1

5 years ago

1.0.1

6 years ago

1.0.0

6 years ago

0.0.3

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago