UNPKG

@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
"use strict"; 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;