@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.
28 lines • 1.03 kB
JavaScript
import { css } from "styled-components";
import getSpacing from "./getSpacing";
import { rtlSpacing } from "../../utils/rtl";
import { SPACINGS } from "../../utils/layout/consts";
import getProperty from "./getProperty";
import { QUERIES } from "../../utils/mediaQuery/consts";
import getDirectionSpacingTemplate from "./getDirectionSpacingTemplate";
const getChildrenMargin = ({
viewport,
index,
devices
}) => props => {
if (props[viewport] || viewport === QUERIES.DESKTOP) {
const spacing = getProperty("spacing", {
index,
devices
}, props);
if (spacing === SPACINGS.NONE) return null;
const direction = getProperty("direction", {
index,
devices
}, props);
const margin = spacing && direction && String(getDirectionSpacingTemplate(direction)).replace("__spacing__", getSpacing(props.theme)[spacing]);
return css(["& > *{margin:", "!important;&:last-child{margin:0 !important;}}"], margin && rtlSpacing(margin));
}
return null;
};
export default getChildrenMargin;