Client State Package
All client(cache) state management will be done in this package. It not includes
Redux-Epics or anything that is used for managing the state.
Redux npm package includes actions, action-types and reducers
- TypeScript and Redux: getting started
- TypeScript and Redux: async actions
- TypeScript and Redux: unit testing with Jest
- Integrating TypeScript and redux-thunk
What does it include:
1. exported reducers 2. exported actions 3. exported graphql queries 4. Typescript 2.0.0 => ES6 5. unit testing with jest
This package can be installable in front-end webserver to use the reducers and actions.
The goal is to make a isolated and reusable module that is self-contained. In order to avoid name conflicts, following rules need to be abide.
- MUST export a function call reducer()
- MUST export its action creators as functions
- MUST have action types in the form
- MUST have reducer in the form
What's not included
- It does not have any client UI components such as React
- It does not configure Redux Store
npm run build - build the library files npm run test - run tests once npm run test:watch - run tests in watchmode (Useful for development)
src - directory is used for typescript code that is part of the project index.ts - Index file of the package. Consists of exported reducers and actions index.spec.ts - Tests file for main actions - Contains Actions to transform the state tree index.ts - References all the exported actions reducers - Contains reducers, pure function with (state, action) => state signature. index.ts - References all the exported reducers. package.json - file is used to describe the library and packages that are required added under peer-dependencies section tsconfig.json - configuration file for the library compilation webpack.config.js - configuration file of the compilation automation process for the library