Releases: OutOfBears/react-flow
Releases · OutOfBears/react-flow
v0.5.0
- Luau migration — renamed every
.luafile to.luauand switched the toolchain fromaftman.tomltorokit.toml, with a.luaurcfor the new Luau-native config. - String require paths — converted every internal
require(script.Parent.Foo)to string-based requires (e.g.require("@self/Hooks/useFoo")), matching the modern Luau / Lune workflow. - Quaternion-based CFrame interpolation — new
Utility/Quaternionmodule (fromMatrix+canonicalize) drives CFrame lerping inLinearValue, so spring/tween CFrame animations now follow the shortest-arc rotation instead of interpolating raw rotation-matrix entries. Addedtest/CFrameValues.story.luauexercising under/critically/overdamped CFrame springs alongside aLinearValueCFrame lerp. useSpringValue/useTweenValuehooks — declarative counterparts touseSpringanduseTween(closes #14). Passtarget(andspeed/damper) directly in the hook props and the animation re-targets on prop change — noupdate({ target = … })calls needed. The imperative hooks are unchanged; pick whichever fits the callsite.startis mount-only so re-renders smoothly retarget from the current value instead of snapping back.useTransparencyModifierhook — new hook for composing transparency values (numbers,NumberSequences, and bindings) through a multiplier, with epsilon clamping at the 0/1 endpoints.- Shared
PooledConnectionutility — extracted theRenderSteppedpooling logic previously duplicated inSpringValueandTweenintoUtility/PooledConnection, keyed by source signal so multiple consumers share a single connection. Fixes the multi-instance render loop leak (closes #16): the pooled connection now correctly disconnects when its callback set drains, so running multiplereact-flowinstances (or repeatedly mounting/unmounting) no longer leaves orphaned render-step subscribers running in the background. - Centralized
Typesmodule — moved shared type definitions (LinearValueType,SpringProperties,TweenProperties,Binding,TransparencyValue, etc.) intosrc/Types.luauso animations, utilities, and hooks all reference the same source of truth. - camelCase API — animation and value objects (
LinearValue,SpringValue,Spring,Tween,BaseAnimation) moved from PascalCase metatable methods to camelCase methods on plain tables (Play/Stop/SetGoal→play/stop/setGoal, etc.). Hooks updated to match. Note: this is a breaking change for callers using the value/animation classes directly. LinearValueTypetrimmed — droppedRect,Ray,Region3, andRegion3int16; the new constructor/deconstructor table only covers types we actually interpolate.
v0.2.0
What's Changed
- Fix playTween2 completion condition for overshooting easing functions by @KreeganTrimtroddler in #6
- Fix pooledUpdate creating multiple connections, speeding up tweens by @KreeganTrimtroddler in #9
- Refactor DynamicList and ReactUtil by @RBXTyler in #10
New Contributors
- @KreeganTrimtroddler made their first contribution in #6
- @RBXTyler made their first contribution in #10
Full Changelog: v0.1.7...v0.2.0
v0.1.7
What's Changed
- Implement feature/group-animations by @OutOfBears in #2
- Update React-Flow to optimize memory usage, fix test cases, fix binding subscriptions, and clean-up code by @OutOfBears in #3
- Call spring stop instead of Destroy method by @OutOfBears in #4
- Implement intermediate animation by @OutOfBears in #5
New Contributors
- @OutOfBears made their first contribution in #2
Full Changelog: https://github.com/OutOfBears/react-flow/commits/v0.1.7