@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.
54 lines (40 loc) • 1.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _styledComponents = require("styled-components");
var _getDesktopSpacing = _interopRequireDefault(require("./getDesktopSpacing"));
var _rtl = require("../../utils/rtl");
var _consts = require("../consts");
var _isMobileViewport = _interopRequireDefault(require("./isMobileViewport"));
var _getMobileSpacing = _interopRequireDefault(require("./getMobileSpacing"));
var _getProperty = _interopRequireDefault(require("./getProperty"));
var _consts2 = require("../../utils/mediaQuery/consts");
var _getDirectionSpacingTemplate = _interopRequireDefault(require("./getDirectionSpacingTemplate"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var getChildrenMargin = function getChildrenMargin(_ref) {
var viewport = _ref.viewport,
index = _ref.index,
devices = _ref.devices;
return function (props) {
if (props[viewport] || viewport === _consts2.QUERIES.DESKTOP) {
var spacing = (0, _getProperty.default)("spacing", {
index: index,
devices: devices
}, props);
if (spacing === _consts.SPACINGS.NONE) return false;
var isMobile = (0, _isMobileViewport.default)(viewport);
var spacingTokens = isMobile ? (0, _getMobileSpacing.default)() : (0, _getDesktopSpacing.default)();
var direction = (0, _getProperty.default)("direction", {
index: index,
devices: devices
}, props);
var margin = spacing && direction && String((0, _getDirectionSpacingTemplate.default)(direction)).replace("__spacing__", spacingTokens[spacing]);
return (0, _styledComponents.css)(["& > *{margin:", "!important;", ";}"], margin && (0, _rtl.rtlSpacing)(margin), isMobile && (0, _styledComponents.css)(["&:last-child{margin:0 !important;}"]));
}
return false;
};
};
var _default = getChildrenMargin;
exports.default = _default;