Something went wrong. Try again.
This repository has no description
Something went wrong. Try again.
1.0 kB · 45 lines
JavaScript
at main
12345678910111213141516171819202122232425262728293031323334353637383940414243444546import React from 'react';
import styles from './VisuallyHidden.module.css';
const VisuallyHidden = ({ children, className = '', ...delegated}) => { const [forceShow, setForceShow] = React.useState(false);
React.useEffect(() => { if (process.env.NODE_ENV !== 'production') { const handleKeyDown = (ev) => { if (ev.key === 'Alt') { setForceShow(true); } };
const handleKeyUp = () => { setForceShow(false); };
window.addEventListener('keydown', handleKeyDown); window.addEventListener('keyup', handleKeyUp);
return () => { window.removeEventListener('keydown', handleKeyDown); window.removeEventListener('keyup', handleKeyUp); }; } }, []);
if (forceShow) { return <span className={styles.showWrapper}>{children}</span>; }
return ( <span className={`${className} ${styles.wrapper}`} {...delegated}> {children} </span> );};
export default VisuallyHidden;