From 9c9d1a5f79a9f6b67d61781d1710dd79149ac7f8 Mon Sep 17 00:00:00 2001 From: Yogesh Choudhary Paliyal Date: Tue, 15 Apr 2025 10:45:31 +0530 Subject: [PATCH] Fix: animation lag --- src/core/components/wrapper/BaseAnimationWrapper.tsx | 8 ++++++-- src/core/components/wrapper/JsonAnimationWrapper.tsx | 8 ++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/core/components/wrapper/BaseAnimationWrapper.tsx b/src/core/components/wrapper/BaseAnimationWrapper.tsx index 09097c2..4f22172 100644 --- a/src/core/components/wrapper/BaseAnimationWrapper.tsx +++ b/src/core/components/wrapper/BaseAnimationWrapper.tsx @@ -7,12 +7,16 @@ export abstract class BaseAnimationWrapper

exte public abstract finishAnimation(): void; protected abstract renderAnimation(content: React.ReactNode): React.ReactNode; - protected abstract updateCompositeAnimation(): void; + protected abstract updateCompositeAnimation(nextProps?: AnimationWrapperProps): void; protected _compositeAnimation: Animated.CompositeAnimation | undefined; public shouldComponentUpdate(nextProps: Readonly, _: any): boolean { - return nextProps.animationConfig !== this.props.animationConfig; + const shouldUpdate = nextProps.animationConfig !== this.props.animationConfig; + if (shouldUpdate) { + this.updateCompositeAnimation(nextProps); + } + return shouldUpdate; } public componentDidMount(): void { diff --git a/src/core/components/wrapper/JsonAnimationWrapper.tsx b/src/core/components/wrapper/JsonAnimationWrapper.tsx index 75ec494..bd980bd 100644 --- a/src/core/components/wrapper/JsonAnimationWrapper.tsx +++ b/src/core/components/wrapper/JsonAnimationWrapper.tsx @@ -56,10 +56,10 @@ export class JsonAnimationWrapper extends BaseAnimationWrapper