stream-chat-react-native-core
Version:
The official React Native and Expo components for Stream Chat, a service for building chat applications
21 lines • 1.15 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useKeyboardVisibility = void 0;
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _react = require("react");
var _reactNative = require("react-native");
var useKeyboardVisibility = () => {
var _useState = (0, _react.useState)(false),
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
isKeyboardVisible = _useState2[0],
setIsKeyboardVisible = _useState2[1];
(0, _react.useEffect)(() => {
var listeners = [_reactNative.Keyboard.addListener(_reactNative.Platform.OS === 'ios' ? 'keyboardWillShow' : 'keyboardDidShow', () => setIsKeyboardVisible(true)), _reactNative.Keyboard.addListener(_reactNative.Platform.OS === 'ios' ? 'keyboardWillHide' : 'keyboardDidHide', () => setIsKeyboardVisible(false))];
return () => listeners.forEach(listener => listener.remove());
}, []);
return isKeyboardVisible;
};
exports.useKeyboardVisibility = useKeyboardVisibility;
//# sourceMappingURL=useKeyboardVisibility.js.map