UNPKG

@itwin/itwinui-react

Version:

A react component library for iTwinUI

22 lines (21 loc) 659 B
import * as React from 'react'; import { VisuallyHidden } from '../../core/VisuallyHidden/VisuallyHidden.js'; import { getWindow } from '../functions/index.js'; export const AutoclearingHiddenLiveRegion = ({ text, ...props }) => { let [maybeText, setMaybeText] = React.useState(text); React.useEffect(() => { setMaybeText(text); let timeout = getWindow()?.setTimeout(() => setMaybeText(''), 5000); return () => void getWindow()?.clearTimeout(timeout); }, [text]); return React.createElement( VisuallyHidden, { as: 'div', 'aria-live': 'polite', 'aria-atomic': 'true', ...props, }, maybeText, ); };