@kubit-ui-web/react-components
Version:
Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience
28 lines • 1.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.computeCoordsFromPlacement = void 0;
const tooltipAlign_1 = require("../../types/tooltipAlign");
const computeCoordsFromPlacement = ({ reference, floating }, placement) => {
const commonX = reference.x + reference.width / 2 - floating.width / 2;
const commonY = reference.y + reference.height / 2 - floating.height / 2;
let coords;
switch (placement) {
case tooltipAlign_1.TooltipAlignType.TOP:
coords = { x: commonX, y: reference.y - floating.height };
break;
case tooltipAlign_1.TooltipAlignType.BOTTOM:
coords = { x: commonX, y: reference.y + reference.height };
break;
case tooltipAlign_1.TooltipAlignType.RIGHT:
coords = { x: reference.x + reference.width, y: commonY };
break;
case tooltipAlign_1.TooltipAlignType.LEFT:
coords = { x: reference.x - floating.width, y: commonY };
break;
default:
coords = { x: reference.x, y: reference.y };
}
return coords;
};
exports.computeCoordsFromPlacement = computeCoordsFromPlacement;
//# sourceMappingURL=computeCoordsFromPlacement.js.map