@onaio/superset-reducer
TypeScript icon, indicating that this package has built-in type declarations

0.0.1 • Public • Published

superset reducer

This is a reducer module that helps handle superset information in the redux store

The store

the store, currently, looks like this

/** interface for Superset state */
interface SupersetState {
  authorized: boolean | null;
}

Action creators

The following action creators are provided:

  • authorizeSuperset: set authorized property of state object to a boolean value(true or false)
  • resetSuperset: reset the authorized property of the state object to null

Sample code to use these selectors

import { authorizeSuperset, resetSuperset } from '@onaio/superset-reducer';

/**  authorizeSuperset action creator expects the following argument
 * @param {boolean} authorizedOrNot - whether the superset is authorized or not
 */
authorizeSuperset(authorizedOrNot);//example usage

/** resetSuperset takes no params */
resetSuperset()//example usage

Selectors

The following selector is provided:

  • isAuthorized: check if superset is authorized

Sample code to use selectors

import { isAuthorized } from '@onaio/superset-reducer';

// we assume you have a state object defined somewhere
let state;

const authorized = isAuthorized(state);

Usage

Using this reducer is quite simple and can be done in one of two ways:

  1. Use combineReducers to ensure that the superset reducer is loaded into your Redux store

OR

  1. Register the superset reducer so that it is added to your Redux store dynamically. You would do this in the case that you are using the Reducer Registry.

sample code to register the reducer

import supersetReducer, { reducerName as supersetReducerName } from '@onaio/superset-reducer';
import reducerRegistry from '@onaio/redux-reducer-registry';

// /** register the superset reducer */
reducerRegistry.register(supersetReducerName, supersetReducer);

Readme

Keywords

none

Package Sidebar

Install

npm i @onaio/superset-reducer

Weekly Downloads

0

Version

0.0.1

License

Apache-2.0

Unpacked Size

17.3 kB

Total Files

6

Last publish

Collaborators

  • onaio