UNPKG

wix-style-react

Version:
49 lines (43 loc) 1.39 kB
import { circularProgressBarDriverFactory as coreCircularProgressBarDriverFactory, tooltipDriverFactory as coreTooltipDriverFactory, } from 'wix-ui-core/drivers/vanilla'; import { dataHooks } from './constants'; const circularProgressBarDriverFactory = ({ element, eventTrigger, wrapper, }) => { const getElementByDataHook = dataHook => element.querySelector(`[data-hook='${dataHook}']`); const createTooltipDriver = () => coreTooltipDriverFactory({ element: getElementByDataHook(dataHooks.tooltip), wrapper, eventTrigger, }); const coreProgressBarDriver = coreCircularProgressBarDriverFactory({ element, wrapper, eventTrigger, }); return { ...coreProgressBarDriver, isErrorIconShown: () => !!getElementByDataHook(dataHooks.errorIcon), isSuccessIconShown: () => !!getElementByDataHook(dataHooks.successIcon), getSize: () => getElementByDataHook(dataHooks.circularProgressBar).getAttribute( 'data-size', ), getTooltipErrorMessage: () => { const tooltipDriver = createTooltipDriver(); tooltipDriver.mouseEnter(); return tooltipDriver.getContentElement().textContent; }, hasSkin: skinName => getElementByDataHook(dataHooks.circularProgressBar).getAttribute( 'data-skin', ) === skinName, }; }; export default circularProgressBarDriverFactory;