@kiwicom/orbit-components
Version:
Orbit-components is a React component library which provides developers with the easiest possible way of building Kiwi.com’s products.
60 lines (46 loc) • 2.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _styledComponents = require("styled-components");
var _isPosition = require("./isPosition");
var _isAlign = require("./isAlign");
var _consts = require("../consts");
var resolveContainerAlign = function resolveContainerAlign(_ref) {
var align = _ref.align,
position = _ref.position,
containerTop = _ref.containerTop,
containerLeft = _ref.containerLeft,
containerHeight = _ref.containerHeight,
containerWidth = _ref.containerWidth,
tooltipHeight = _ref.tooltipHeight,
tooltipWidth = _ref.tooltipWidth;
if ((0, _isAlign.isAlignCenter)(align)) {
if ((0, _isPosition.isHorizontal)(position)) {
return (0, _styledComponents.css)(["top:", "px;"], Math.floor(containerTop + containerHeight / 2 - tooltipHeight / 2));
}
if ((0, _isPosition.isVertical)(position)) {
return (0, _styledComponents.css)(["left:", "px;"], Math.floor(containerLeft + containerWidth / 2 - tooltipWidth / 2));
}
return null;
}
if ((0, _isAlign.isAlignStart)(align)) {
if ((0, _isPosition.isHorizontal)(position)) {
return (0, _styledComponents.css)(["top:", "px;"], Math.floor(containerTop - parseFloat(_consts.TOOLTIP_ARROW_SIZE)));
}
if ((0, _isPosition.isVertical)(position)) {
return (0, _styledComponents.css)(["left:", "px;"], Math.floor(containerLeft + containerWidth / 2 - parseFloat(_consts.TOOLTIP_PADDING) - parseFloat(_consts.TOOLTIP_ARROW_SIZE)));
}
} else if ((0, _isAlign.isAlignEnd)(align)) {
if ((0, _isPosition.isHorizontal)(position)) {
return (0, _styledComponents.css)(["top:", "px;"], Math.floor(containerTop - tooltipHeight + containerHeight + parseFloat(_consts.TOOLTIP_ARROW_SIZE)));
}
if ((0, _isPosition.isVertical)(position)) {
return (0, _styledComponents.css)(["left:", "px;"], Math.floor(containerLeft + containerWidth - tooltipWidth + parseFloat(_consts.TOOLTIP_ARROW_SIZE)));
}
}
return null;
};
var _default = resolveContainerAlign;
exports.default = _default;