UNPKG

@carbon/ibm-products

Version:

Carbon for IBM Products

31 lines (27 loc) 962 B
/** * Copyright IBM Corp. 2020, 2025 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ import { useEffect } from 'react'; import { pkg } from '../../../settings.js'; const useResetSpreadsheetFocus = _ref => { let { blockClass = `${pkg.prefix}--data-spreadsheet`, focusedElement, removeActiveCell, setContainerHasFocus } = _ref; // Reset everything when spreadsheet loses focus useEffect(() => { if (!focusedElement.classList.contains(`${blockClass}--interactive-cell-element`)) { setContainerHasFocus(false); removeActiveCell(); } if (focusedElement.classList.contains(blockClass) || focusedElement.classList.contains(`${blockClass}--interactive-cell-element`)) { setContainerHasFocus(true); } }, [focusedElement, removeActiveCell, blockClass, setContainerHasFocus]); }; export { useResetSpreadsheetFocus };