@progress/kendo-react-tooltip
Version:
React Tooltips library represents popups with information that is related to a UI element. KendoReact Tooltips package
59 lines (58 loc) • 2.1 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
const u = (i, o, r, s, t) => {
switch (t) {
case "bottom":
return s === "pointer" ? i - o / 2 : r.left - o / 2 + r.width / 2;
case "left":
return s === "pointer" ? i - o - 10 : r.left - o - 10;
case "right":
return s === "pointer" ? i + 10 : r.right + 10;
case "top":
return s === "pointer" ? i - o / 2 : r.left - o / 2 + r.width / 2;
default:
return s === "pointer" ? i < window.screen.availWidth / 2 ? i - 10 : i - o + 10 : i < window.screen.availWidth / 2 ? r.left : r.right - o;
}
}, c = (i, o, r, s, t) => {
switch (t) {
case "bottom":
return s === "pointer" ? i + 10 : o.bottom + 10;
case "left":
return s === "pointer" ? i - r / 2 : o.top - r / 2 + o.height / 2;
case "right":
return s === "pointer" ? i - r / 2 : o.top - r / 2 + o.height / 2;
case "top":
return s === "pointer" ? i - r - 10 : o.top - r - 10;
default:
return s === "pointer" ? i < window.innerHeight / 2 ? i + 10 : i - r - 10 : i < window.innerHeight / 2 ? o.bottom + 10 : o.top - r - 10;
}
}, n = (i) => i !== null ? i.getBoundingClientRect() : document.body.getBoundingClientRect(), w = [
"k-tooltip-content",
"k-animation-container",
"k-tooltip",
"k-tooltip-title",
"k-tooltip k-tooltip-closable",
"k-icon k-i-close"
], p = (i) => {
if (i === null)
return !1;
let o = i;
for (; o; ) {
if (o !== null && o.classList && o.classList.contains("k-tooltip"))
return !0;
o.parentNode !== null ? o = o.parentNode : o = !1;
}
return w.filter((r) => r === i.className).length > 0;
};
export {
n as getDomRect,
u as getLeftPosition,
c as getTopPosition,
p as isTooltipElement,
w as toolTipSelectors
};