@material-ui/lab
Version:
Material-UI Lab - Incubator for Material-UI React components.
23 lines (21 loc) • 690 B
JavaScript
import * as React from 'react';
export const CanAutoFocusContext = /*#__PURE__*/React.createContext(true);
export const useCanAutoFocus = () => React.useContext(CanAutoFocusContext);
export function useAutoFocusControl(open) {
const [canAutoFocus, setCanAutoFocus] = React.useState(false);
React.useEffect(() => {
if (!open) {
setCanAutoFocus(false);
}
}, [open]); // TODO rething approach. It is a temporal fix to allow tests that are rendering Popper to update the state using
if (process.env.NODE_ENV === 'test') {
return {
canAutoFocus: true,
onOpen: () => {}
};
}
return {
canAutoFocus,
onOpen: () => setCanAutoFocus(true)
};
}