()
| 364 | }; |
| 365 | |
| 366 | const onEnd = () => { |
| 367 | startYRef.current = 0; |
| 368 | currentYRef.current = 0; |
| 369 | draggingRef.current = false; |
| 370 | |
| 371 | setPullToRefreshThresholdBreached((breached) => { |
| 372 | if (breached) { |
| 373 | // Read via ref — refreshFunction identity changes don't re-register listeners |
| 374 | refreshFunctionRef.current?.(); |
| 375 | } |
| 376 | return false; |
| 377 | }); |
| 378 | |
| 379 | requestAnimationFrame(() => { |
| 380 | if (infScrollRef.current) { |
| 381 | infScrollRef.current.style.overflow = 'auto'; |
| 382 | infScrollRef.current.style.transform = 'none'; |
| 383 | infScrollRef.current.style.willChange = 'unset'; |
| 384 | } |
| 385 | }); |
| 386 | }; |
| 387 | |
| 388 | scrollEl.addEventListener('touchstart', onStart as EventListener); |
| 389 | scrollEl.addEventListener('touchmove', onMove as EventListener); |
nothing calls this directly
no outgoing calls
no test coverage detected
searching dependent graphs…