- Make params, query and route array immutable between transitions, i.e. modifying those directly on the transition only affects that transition
- Replace
paramNames
withparams
in the route descriptor - Drop the
ancestors
attribute from the route descriptor - Drop out of the box support for ES3 environments (IE8), to use Cherrytree - es5 polyfills for native
map
,reduce
andforEach
need to be used now. This was possible always the case since usage of babel requires an es5 environment.
- BYOP - Cherrytree now requires a global Promise implementation to be available or a Promise constructor passed in as an option
- Add
transition.redirectTo
so that middleware could initiate redirects without having the router
- Log errors by default (i.e. options.logError: true by default)
- Fix router.destroy() - DOM click events for link interception are now cleaned up when router.destroy() is called
- Add server side support
- events.js now exports an {} object on the server instead of crashing due to missing
window
- MemoryLocation correctly handles option flags and can be instantiated with a starting
path
- events.js now exports an {} object on the server instead of crashing due to missing
- Add a server-side-react example
- When transition is rejected with a
TransitionRedirected
error - theerr.nextPath
is now available)
- Fix dependencies - lodash was declared as a devDependency
- Fix the URL generation when
pushState: true
and root !== '/'
A brand new and improved cherrytree!
See https://github.com/QubitProducts/cherrytree/tree/677f2c915780d712968023b8d24306ff787a426d