From 1007d4fc6e0eda3f7e876064d62301a5dea2964c Mon Sep 17 00:00:00 2001 From: wo-o29 Date: Fri, 12 Sep 2025 17:42:27 +0900 Subject: [PATCH 1/3] fix(useImpressionRef): add type annotation for impressed parameter in debounced callback --- src/hooks/useImpressionRef/useImpressionRef.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hooks/useImpressionRef/useImpressionRef.ts b/src/hooks/useImpressionRef/useImpressionRef.ts index 8ff2b407..93cf8f02 100644 --- a/src/hooks/useImpressionRef/useImpressionRef.ts +++ b/src/hooks/useImpressionRef/useImpressionRef.ts @@ -54,7 +54,7 @@ export function useImpressionRef({ const isIntersectingRef = useRef(false); const impressionEventHandler = useDebouncedCallback({ timeThreshold, - onChange: impressed => { + onChange: (impressed: boolean) => { (impressed ? impressionStartHandler : impressionEndHandler)(); }, leading: true, From 773febd7a1f4dee1f2babc416c620144c684c671 Mon Sep 17 00:00:00 2001 From: wo-o29 Date: Fri, 12 Sep 2025 17:42:34 +0900 Subject: [PATCH 2/3] test(useImpressionRef): update expectation for onImpressionEnd to be called once --- src/hooks/useImpressionRef/useImpressionRef.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hooks/useImpressionRef/useImpressionRef.spec.ts b/src/hooks/useImpressionRef/useImpressionRef.spec.ts index 26de0ad7..3d73fcb4 100644 --- a/src/hooks/useImpressionRef/useImpressionRef.spec.ts +++ b/src/hooks/useImpressionRef/useImpressionRef.spec.ts @@ -140,6 +140,6 @@ describe('useImpressionRef', () => { act(() => document.dispatchEvent(new Event('visibilitychange'))); expect(mockOnImpressionStart).not.toHaveBeenCalled(); - expect(mockOnImpressionEnd).not.toHaveBeenCalled(); + expect(mockOnImpressionEnd).toHaveBeenCalledOnce(); }); }); From 21da9d301920a99903cc91e5bb7a888a4e5e02ee Mon Sep 17 00:00:00 2001 From: wo-o29 Date: Fri, 12 Sep 2025 17:57:34 +0900 Subject: [PATCH 3/3] fix(useImpressionRef): update expectation to ensure onImpressionEnd is not called when document is hidden --- src/hooks/useImpressionRef/useImpressionRef.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hooks/useImpressionRef/useImpressionRef.spec.ts b/src/hooks/useImpressionRef/useImpressionRef.spec.ts index 3d73fcb4..26de0ad7 100644 --- a/src/hooks/useImpressionRef/useImpressionRef.spec.ts +++ b/src/hooks/useImpressionRef/useImpressionRef.spec.ts @@ -140,6 +140,6 @@ describe('useImpressionRef', () => { act(() => document.dispatchEvent(new Event('visibilitychange'))); expect(mockOnImpressionStart).not.toHaveBeenCalled(); - expect(mockOnImpressionEnd).toHaveBeenCalledOnce(); + expect(mockOnImpressionEnd).not.toHaveBeenCalled(); }); });