Skip to content

Commit

Permalink
Merge branch 'patch-v1.5.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
troberts-28 committed Feb 5, 2024
2 parents 858945a + 73b3d1f commit 9c504e2
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 11 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"url": "https://github.com/troberts-28"
},
"license": "MIT",
"version": "1.5.1",
"version": "1.5.2",
"main": "dist/commonjs/index.js",
"types": "dist/typescript/src/index.d.ts",
"scripts": {
Expand Down
29 changes: 19 additions & 10 deletions src/components/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import React, {
MutableRefObject,
forwardRef,
useCallback,
useEffect,
useImperativeHandle,
useRef,
useState,
Expand Down Expand Up @@ -121,6 +122,23 @@ const TimerPickerModal = forwardRef<TimerPickerModalRef, TimerPickerModalProps>(
seconds: initialSeconds,
});

const reset = (options?: { animated?: boolean }) => {
const initialDuration = {
hours: initialHours,
minutes: initialMinutes,
seconds: initialSeconds,
};
setSelectedDuration(initialDuration);
setConfirmedDuration(initialDuration);
timerPickerRef.current?.reset(options);
};

// reset state if the initial times change
useEffect(() => {
reset();
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [initialHours, initialMinutes, initialSeconds]);

const hideModalHandler = () => {
setSelectedDuration({
hours: confirmedDuration.hours,
Expand Down Expand Up @@ -161,16 +179,7 @@ const TimerPickerModal = forwardRef<TimerPickerModalRef, TimerPickerModalProps>(
);

useImperativeHandle(ref, () => ({
reset: (options) => {
const initialDuration = {
hours: initialHours,
minutes: initialMinutes,
seconds: initialSeconds,
};
setSelectedDuration(initialDuration);
setConfirmedDuration(initialDuration);
timerPickerRef.current?.reset(options);
},
reset,
setValue: (value, options) => {
setSelectedDuration(value);
setConfirmedDuration(value);
Expand Down

0 comments on commit 9c504e2

Please sign in to comment.