@redocly/theme
Version:
Shared UI components lib
26 lines • 963 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useFeedbackTooltip = useFeedbackTooltip;
const react_1 = require("react");
const use_control_1 = require("../use-control");
const DEFAULT_TOOLTIP_DURATION = 1500;
function useFeedbackTooltip() {
const [closeTooltipTimeout, setCloseTooltipTimeout] = (0, react_1.useState)(null);
const tooltipControl = (0, use_control_1.useControl)();
const showTooltip = () => {
tooltipControl.handleOpen();
if (closeTooltipTimeout) {
clearTimeout(closeTooltipTimeout);
}
const newCloseTooltipTimeout = setTimeout(() => {
tooltipControl.handleClose();
setCloseTooltipTimeout(null);
}, DEFAULT_TOOLTIP_DURATION);
setCloseTooltipTimeout(newCloseTooltipTimeout);
};
return {
isOpen: tooltipControl.isOpened,
showTooltip,
};
}
//# sourceMappingURL=use-feedback-tooltip.js.map