UNPKG

@momentum-ui/react-collaboration

Version:

Cisco Momentum UI Framework for React Collaboration Applications

22 lines (19 loc) 722 B
import { AriaAttributes, useEffect } from 'react'; import { RequireOneOf } from './types'; export type AriaLabelRequired = RequireOneOf<AriaAttributes, ['aria-label', 'aria-labelledby']>; /** * Check if `aria-label` or `aria-labelledby` are defined and are truthy * * @param componentName The name of the component * @param props The object of props passed to the component */ export function useCheckAriaLabel( componentName: string, props: { 'aria-label'?: string; 'aria-labelledby'?: string } ): void { useEffect(() => { if (!props['aria-label'] && !props['aria-labelledby']) { console.warn(`MRV2: ${componentName} requires aria-label or aria-labelledby.`); } }, [componentName, props]); }