@fluentui/react-tabster
Version:
Utilities for focus management and facade for tabster
20 lines (19 loc) • 684 B
JavaScript
'use client';
import { getTabsterAttribute, TABSTER_ATTRIBUTE_NAME } from 'tabster';
import { useTabster } from './useTabster';
import * as React from 'react';
/**
* Hook that returns tabster attributes while ensuring tabster exists
*
* @internal
*/ export const useTabsterAttributes = (props)=>{
// A tabster instance is not necessary to generate tabster attributes
// but calling the hook will ensure that a tabster instance exists internally and avoids consumers doing the same
useTabster();
const strAttr = getTabsterAttribute(props, true);
return React.useMemo(()=>({
[TABSTER_ATTRIBUTE_NAME]: strAttr
}), [
strAttr
]);
};