SIGN IN SIGN UP

feat: expose `onEndVisible` callback from `KeyboardChatScrollView` (#1450)

## 📜 Description

Added `onEndVisible` callback for `KeyboardChatScrollView`.

## 💡 Motivation and Context

<!-- Why is this change required? What problem does it solve? -->
<!-- If it fixes an open issue, please link to the issue here. -->

Originally these changes were requested in
https://github.com/kirillzyusko/react-native-keyboard-controller/issues/1430
for implementing functionality like "jump-to-end". I kind of agree, that
we were computing the `isAtEnd` internally, so technically it's really
not so difficult to expose it outside and it's really useful to have a
logic for controlling lift behavior and end detection
unified/reusable/the same.

So in this PR I'm adding this callback. It has support for both worklet
and plain JS function.

Closes
https://github.com/kirillzyusko/react-native-keyboard-controller/pull/1431
https://github.com/kirillzyusko/react-native-keyboard-controller/issues/1430

## 📢 Changelog

<!-- High level overview of important changes -->
<!-- For example: fixed status bar manipulation; added new types
declarations; -->
<!-- If your changes don't affect one of platform/language below - then
remove this platform/language -->

### JS

- added `onEndVisible` callback to `KeyboardChatScrollView`;

### Docs

- added documentation about `onEndVisible` callback;

## 🤔 How Has This Been Tested?

Tested on iPhone 17 Pro (iOS 26.2).

## 📸 Screenshots (if appropriate):

<img width="1158" height="89" alt="image"
src="https://github.com/user-attachments/assets/b6ed7c35-39a9-420d-ad7c-914787dfe7f0"
/>

## 📝 Checklist

- [x] CI successfully passed
- [x] I added new mocks and corresponding unit-tests if library API was
changed
K
Kirill Zyusko committed
5dc56430d7b7d7fd67ffb3ab2fb4189dbd74916f
Parent: 21a939f
Committed by GitHub <noreply@github.com> on 5/4/2026, 8:00:01 AM