- Accept an
options
param inmutateGlobal
, as introduced for other functions in v1.1.0.
- Include
tideOptions
asthis.props.tide.options
in tide-wrapped components.
- Add a new special property
tideOptions
onTideComponent
. ThetideOptions
prop is an object that is supplied as the second argument to keypath functions. See #29.
- Replace
react-pure-render/shallowEqual
withshallowequal
- React 15.5 support
- Nicer api for the logging plugin
- Major internal re-write to improve modularity and enable extensions.
- Breaking:
Base
is renamed toTide
- Breaking: Changed the API for adding actions:
Tide.addActions
is remove in favor ofinitActions
- Breaking: Changed api for logging. Logging is now separated into different and need to be enabled one by one.
- Breaking: Removed magic 'toJS()' handling in Component.
- New feature: Added namespaces for actions.
- New feature:
wrap
takes a third argument, a map of transform functions that props are passed through when they are updated. - New feature:
Tide.addMiddleWare
, a hook to add middleware that intercepts state changes. - New feature:
Tide.addProp
, a hook to safely monkey patch props onto a tide instance. - New feature:
Tide.addComponentProp
, a hook to add properties to the props ofTideComponent
. - Upgrade guide
- Fix breaking bug introduced in 1.2.0 when trying to access
tide
from context inTideComponent
- Fix breaking bug when trying to directly nest multiple
TideComponent
s
- Add support for defining a key path as a function in a Tide component. The function receives the current state as its only argument, and should return the key path in one of the other supported forms.
- Add a parameter
{immediate: true}
tosetState
,updateState
andmutate
to make the change event emit immediately instead of deferring it. Seehttps://github.com/tictail/tide/issues/11
.
- Move package to
tide
on npm
- Only bumping version to re-publish to NPM.
- Add description in
package.json
.
- Remove duplicates of
eslint-plugin-mocha
andeslint-plugin-react
inpackage.json
.
- Rename package to
tictail-tide
- Public release
- Defer state updates
- Re-written in es6
- TideComponent uses setState instead of forceUpdate()
- Component logging removed
- Only use
console.group
for logging when available in the browser.
- Only use
console.group
for logging when available in the browser.
- If there is no set state in a given
keyPath
,TideComponent
should not passundefined
to the wrapped component as a prop. Therefore, the wrapped component'sdefaultProps
will be available
- Update React to 0.14
- Components created with
wrap
now re-render when given new properties from the parent.
enableLogging
should no longer automatically bind all action methods to their instance.
Tide.wrap
has been moved to its own module. The function is now accessible throughimport {wrap} from 'tictail-tide'