@gechiui/components
Version:
UI components for GeChiUI.
49 lines (45 loc) • 1.38 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import { createElement } from "@gechiui/element";
/**
* Internal dependencies
*/
import { useContextSystem, contextConnect } from '../ui/context';
import { visuallyHidden } from './styles';
import { View } from '../view';
/**
* @param {import('../ui/context').GeChiUIComponentProps<{ children: import('react').ReactNode }, 'div'>} props
* @param {import('react').Ref<any>} forwardedRef
*/
function VisuallyHidden(props, forwardedRef) {
const {
style: styleProp,
...contextProps
} = useContextSystem(props, 'VisuallyHidden');
return createElement(View, _extends({
ref: forwardedRef
}, contextProps, {
style: { ...visuallyHidden,
...(styleProp || {})
}
}));
}
/**
* `VisuallyHidden` is a component used to render text intended to be visually
* hidden, but will show for alternate devices, for example a screen reader.
*
* @example
* ```jsx
* import { VisuallyHidden } from `@gechiui/components`;
*
* function Example() {
* return (
* <VisuallyHidden>
* <label>Code is Poetry</label>
* </VisuallyHidden>
* );
* }
* ```
*/
const ConnectedVisuallyHidden = contextConnect(VisuallyHidden, 'VisuallyHidden');
export default ConnectedVisuallyHidden;
//# sourceMappingURL=component.js.map