Releases: n8jadams/smoothr
Major Stability Refactor
This update is a big refactor with stability around animation ending, took out some hacky things, some optimization but not a lot, and extra debugging and testing.
We now enforce animation-fill-mode: forwards
on animations, and the Animation.onfinish
callback to prevent flashing and bad timeouts. Unfortunately, the best way to perform CSS class animations is still setTimeout
, but repeat renders (setting state when unnecessary) is prevented.
Breaking changes:
Renamed the <Smoothr>
configAnimationSetDuration
to beforeAnimation
.
Renamed the <Route>
pathMask
property to pathResolve
.
Slight tweak of timing, prevent flash
Also, some debugging of the demo.
Unique key on <Route>s, Removed extra render on animate
Also, I put in a delay that hopefully adds stability and removes flashing on navigation.
Demo on Netlify, Max visited history, animation stability
- Updated Demo URL, now hosting on Netlify
- Set max visited history size, fixed flashing on animation end (hopefully)
Added Hash Routing
v0.3.6 Fixed occational flashing, rerendering on uninterrupted animation. Re…
Handle interrupted animation on navigation.
Fixed buggy behavior when animation is interrupted. Now the app just snaps to the next app if animation transition is interrupted. Also minor cleanup in demo.
Visited + Current Link logic revamped
- Handle visited paths/routes in Local Storage
- Use
data-smoothr-current-link
anddata-smoothr-visited-link
attribute instead of disabled on Links. - Links are current at beginning of animation, not at the end.
- Rename
fuzzyDisable
tofuzzyCurrent
, leave thedisabled
attribute alone - Disable all inputs while animating in demo
- Update if statement that adds WAAPI polyfill in demo
Add `pathMask` prop to `<Route>`, + IE11 support
This release adds the pathMask
prop to <Route>
s, which adds the ability to validate parameters the url and redirect, either to the notFound
<Route>
, or to a composed validated path.
I also realized that there was a bug with a hash algorithm used in this library on IE11, so that was fixed.
Initial Release
v0.1.8 Updated README