From 3a570b5d396c7c74a08e11a9ed325ad117cae447 Mon Sep 17 00:00:00 2001 From: Sergey Markov Date: Sat, 7 Sep 2024 11:55:44 +0200 Subject: [PATCH 1/2] Fixed disapiaring animation time control Signed-off-by: Sergey Markov --- src/components/src/layer-animation-controller.tsx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/components/src/layer-animation-controller.tsx b/src/components/src/layer-animation-controller.tsx index 0bc2a28bc2..b1cd60bd71 100644 --- a/src/components/src/layer-animation-controller.tsx +++ b/src/components/src/layer-animation-controller.tsx @@ -33,13 +33,14 @@ function LayerAnimationControllerFactory( const {timeSteps, domain} = animationConfig; const setTimelineValue = useCallback( - (value: number) => { + (value: number | number[]) => { + const timelineValue = toArray(value)[0]; if (Array.isArray(timeSteps)) { - setLayerAnimationTime(snapToMarks(toArray(value)[0], timeSteps)); + setLayerAnimationTime(snapToMarks(timelineValue, timeSteps)); // TODO: merge slider in to avoid this step - } else if (domain && value >= domain[0] && value <= domain[1]) { - setLayerAnimationTime(value); + } else if (domain && timelineValue >= domain[0] && timelineValue <= domain[1]) { + setLayerAnimationTime(timelineValue); } }, [domain, setLayerAnimationTime, timeSteps] From 3845250a384be66e601ef245ffc8648dc9ad87e3 Mon Sep 17 00:00:00 2001 From: Sergey Markov Date: Mon, 9 Sep 2024 16:53:37 +0200 Subject: [PATCH 2/2] Added missed type definitions for setTimelineValue Signed-off-by: Sergey Markov --- .../src/common/animation-control/animation-controller.ts | 2 +- src/components/src/layer-animation-controller.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/src/common/animation-control/animation-controller.ts b/src/components/src/common/animation-control/animation-controller.ts index f56fe8d4d6..ae7bc184a4 100644 --- a/src/components/src/common/animation-control/animation-controller.ts +++ b/src/components/src/common/animation-control/animation-controller.ts @@ -25,7 +25,7 @@ interface AnimationControllerProps { pauseAnimation: () => void, resetAnimation: () => void, timeline: Timeline | undefined, - setTimelineValue: (x: any) => void + setTimelineValue: (x: T) => void ) => React.ReactElement | null; } diff --git a/src/components/src/layer-animation-controller.tsx b/src/components/src/layer-animation-controller.tsx index b1cd60bd71..57c37def01 100644 --- a/src/components/src/layer-animation-controller.tsx +++ b/src/components/src/layer-animation-controller.tsx @@ -16,7 +16,7 @@ interface LayerAnimationControllerProps { pauseAnimation: () => void, resetAnimation: () => void, timeline: Timeline | undefined, - setTimelineValue: (x: any) => void + setTimelineValue: (x: number | number[]) => void ) => React.ReactElement | null; }