Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: implement
MovePointShapeAnimator
and `ChangeLineOffsetsShapeA…
…nimator` (#3281) * Fix invalid return and property errors * Re-add layout metric prop * Fix invalid return and property errors * Re-add layout metric prop * Fix invalid return and property errors * Finish move-point implementation and refactor common animator * Add animator type * Fix duration unit and rename variables for clarity * Add new animated point with animator example * Remove log * Always start new animation from current position * Fix accidental rename * Re-add getShape and override it * Rename arg * Update lockfiles * Fix prop * Move interface to module index file * Provide timestamp instead of delta for comparisons * Fix import * Implement line-offset animator * Implement end offset animation * Choose random offsets based on line length * Add reset button and improve copy * Move global duration into function arg * Rename coordinate arg for consistency * Undo delete * Expose method for updating entire line * Revert instant shape update * Add and update reject calls on error * Clean up * Avoid syntax warnings * Implement move-point animator * Implement line-offsets animator on Android * Add checks to avoid illegal turf measurements * Restart animator if stopped when setting new target values * Fix whitespace * Provide default return value for getShape() like on Android * Clean up passthrough function * Return empty feature collection to avoid crash-on-render 0-length line * Switch to sliders and allow offsets to sum greater than line length * Refactor offset overflow handling * Update generated files * Increase padding * Fix divide-by-zero and refactor * Clean up imports * Remove second element from getAnimatedShape return value * Fix name * Unsubscribe consumer on removal from map * Conditionally start and stop timer based on animation progress * Remove unneeded null check * Port timer start/stop logic to point animator * Abstract out animatable value helper class * Rename directory * Fix timestamp arg * Remove unneeded start method from JS interface * Add padding * Clean up imports * Port new logic to iOS implementation * Enable randomizing line * Abstract out single-refresh logic and make public * Add refresh to protocol * Implement single-refresh functionality * Fix timer lifespan calculation * Keep randomized line centered * Switch from Timer to CADisplayLink * Switch unit entirely to seconds on native side * Set completion ratio to 1 if duration is 0 * Accept optional offsets when setting new line * Port optional offsets when updating line to Android * Rename timestamp for clarity * Fix syntax bug * Simplify literal declarations * Correctly handle zero duration for moving point * Prevent asymmetrical animator consumer removal * Augment log * Port animator subscriber removal bug to iOS * Refactor * Refactor and allow setting duration * Test don't unsubscribe for any remove reason * Re-enable unsubscribe on style change * Add alert log for source remove reason * Unsubscribe only on view removal * Upgrade package to avoid new-arch error * Ignore .cxx (generated during new-arch build) * Remove unused start method * Update lockfile * Refactor logger to enable tag and deprecate quasi-duplicate functions * Remove log Co-authored-by: Miklós Fazekas <mfazekas@szemafor.com> * Remove Page component Co-authored-by: Miklós Fazekas <mfazekas@szemafor.com> * Remove Page component Co-authored-by: Miklós Fazekas <mfazekas@szemafor.com> * Remove log Co-authored-by: Miklós Fazekas <mfazekas@szemafor.com> * Fix component removal * Unusbscribe on new shape input in case of changed animator * Remove logs * Re-add v11 compat import and clean up imports * Allow setting line offsets with zero duration * Re-add example and fix references * Remove ruby version lock * Update lockfile * Make error enum public * Add animator stub * Specify Swift version in action * Make Swift version unspecified * Revert CI action to use Swift 5.1 * Add explicit returns * Remove empty swift version lock * Remove swift version * Switch to rnmbx logger * Re-add Swift version specifier --------- Co-authored-by: Miklós Fazekas <mfazekas@szemafor.com>
- Loading branch information