npm.io
3.0.0 • Published 1 year ago

state-middleware-manager

Licence
MIT
Version
3.0.0
Deps
1
Size
62 kB
Vulns
0
Weekly
0

state-middleware-manager

State accumulating and reducing middleware manager

NPM Version License

Installation

npm install state-middleware-manager

Example

import { compose, Middleware } from 'state-middleware-manager'

const middleware1: Middleware<{}, { foo: string }> = (state, next) => {
  expect(state).toEqual({})
  return next({ foo: 'bar' })
}

const middleware2: Middleware<{ foo: string }, { mung: string }> = (state, next) => {
  expect(state).toEqual({ foo: 'bar ' })
  return next({ mung: 'face' })
}

compose({}, middleware1, middleware2).then((state) => {
  expect(state).toEqual({
    mung: 'face',
  })
})