From 655be4404630a20ae4ca40c4af84afcc2e63557b Mon Sep 17 00:00:00 2001
From: Armand Philippot <git@armandphilippot.com>
Date: Thu, 2 Nov 2023 15:36:21 +0100
Subject: refactor(hooks): replace useInputAutofocus with useAutofocus hook

* extract setTimeout logic using useTimeout
* change condition to be a function
* return a ref
---
 src/utils/hooks/use-input-autofocus.tsx | 37 ---------------------------------
 1 file changed, 37 deletions(-)
 delete mode 100644 src/utils/hooks/use-input-autofocus.tsx

(limited to 'src/utils/hooks/use-input-autofocus.tsx')

diff --git a/src/utils/hooks/use-input-autofocus.tsx b/src/utils/hooks/use-input-autofocus.tsx
deleted file mode 100644
index d0fcd06..0000000
--- a/src/utils/hooks/use-input-autofocus.tsx
+++ /dev/null
@@ -1,37 +0,0 @@
-import { RefObject, useEffect } from 'react';
-
-export type UseInputAutofocusProps = {
-  /**
-   * The focus condition. True give focus to the input.
-   */
-  condition: boolean;
-  /**
-   * An optional delay. Default: 0.
-   */
-  delay?: number;
-  /**
-   * A reference to the input element.
-   */
-  ref: RefObject<HTMLInputElement>;
-};
-
-/**
- * Set focus on an input with an optional delay.
- */
-export const useInputAutofocus = ({
-  condition,
-  delay = 0,
-  ref,
-}: UseInputAutofocusProps) => {
-  useEffect(() => {
-    const timer = setTimeout(() => {
-      if (ref.current && condition) {
-        ref.current.focus();
-      }
-    }, delay);
-
-    return () => {
-      clearTimeout(timer);
-    };
-  }, [condition, delay, ref]);
-};
-- 
cgit v1.2.3

