@react-native-aria/interactions
Version:
20 lines • 996 B
JavaScript
import { useEffect } from 'react';
export function useBackHandler({
enabled,
callback
}) {
useEffect(() => {
var _document, _document$addEventLis;
const handleEscape = e => {
if (e.key === 'Escape') {
callback();
}
};
(_document = document) === null || _document === void 0 || (_document = _document.body) === null || _document === void 0 || (_document$addEventLis = _document.addEventListener) === null || _document$addEventLis === void 0 || _document$addEventLis.call(_document, 'keyup', handleEscape);
return () => {
var _document2, _document2$removeEven;
(_document2 = document) === null || _document2 === void 0 || (_document2 = _document2.body) === null || _document2 === void 0 || (_document2$removeEven = _document2.removeEventListener) === null || _document2$removeEven === void 0 || _document2$removeEven.call(_document2, 'keyup', handleEscape);
};
}, [enabled, callback]);
}
//# sourceMappingURL=useBackHandler.web.js.map