Socket
Socket
Sign inDemoInstall

reselect

Package Overview
Dependencies
Maintainers
6
Versions
53
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

reselect - npm Package Versions

1
45

1.0.0-alpha

Diff

Changelog

Source

v1.0.0-alpha - 2015/09/01

Breaking Changes

createSelectorCreator takes a user specified memoize function instead of a custom valueEqualsFunc.

Before
import { isEqual } from 'lodash'
import { createSelectorCreator } from 'reselect'

const deepEqualsSelectorCreator = createSelectorCreator(isEqual)
After
import { isEqual } from 'lodash'
import { createSelectorCreator, defaultMemoize } from 'reselect'

const deepEqualsSelectorCreator = createSelectorCreator(defaultMemoize, isEqual)

New features

Variadic Dependencies

Selector creators can receive a variadic number of dependencies as well as an array of dependencies.

Before
const selector = createSelector(
  [state => state.a, state => state.b],
  (a, b) => a * b
)
After
const selector = createSelector(
  state => state.a,
  state => state.b,
  (a, b) => a * b
)
Access ownProps in Selector

Selector dependencies can receive a variadic number of parameters allowing a selector to receive ownProps passed from mapToProps in connect.

const selector = createSelector(
  state => state.a,
  (state, props) => state.b * props.c,
  (_, props) => props.d,
  (a, bc, d) => a + bc + d
)
Configurable Memoize Function
import { createSelectorCreator } from 'reselect'
import memoize from 'lodash.memoize'

let called = 0
const customSelectorCreator = createSelectorCreator(memoize, JSON.stringify)
const selector = customSelectorCreator(
  state => state.a,
  state => state.b,
  (a, b) => {
    called++
    return a + b
  }
)
assert.equal(selector({ a: 1, b: 2 }), 3)
assert.equal(selector({ a: 1, b: 2 }), 3)
assert.equal(called, 1)
assert.equal(selector({ a: 2, b: 3 }), 5)
assert.equal(called, 2)
faassen
published 0.0.2 •

faassen
published 0.0.1 •

1
45
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc