UNPKG

@fluentui/react

Version:

Reusable React components for building web experiences.

40 lines 1.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getIsChecked = getIsChecked; exports.hasSubmenu = hasSubmenu; exports.isItemDisabled = isItemDisabled; exports.getMenuItemAriaRole = getMenuItemAriaRole; /** * Determines the effective checked state of a menu item. * * @param item {IContextualMenuItem} to get the check state of. * @returns {true} if the item is checked. * @returns {false} if the item is unchecked. * @returns {null} if the item is not checkable. */ function getIsChecked(item) { if (item.canCheck) { return !!(item.isChecked || item.checked); } if (typeof item.isChecked === 'boolean') { return item.isChecked; } if (typeof item.checked === 'boolean') { return item.checked; } // Item is not checkable. return null; } function hasSubmenu(item) { // eslint-disable-next-line @typescript-eslint/no-deprecated return !!(item.subMenuProps || item.items); } function isItemDisabled(item) { return !!(item.isDisabled || item.disabled); } function getMenuItemAriaRole(item) { var isChecked = getIsChecked(item); var canCheck = isChecked !== null; return canCheck ? 'menuitemcheckbox' : 'menuitem'; } //# sourceMappingURL=contextualMenuUtility.js.map