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.

36 lines (33 loc) 1.15 kB
import * as React from "react"; import { css } from "styled-components"; import getViewportIEGridStyles from "./getViewportIEGridStyles"; import getDisplay from "./getDisplay"; /* We need to get gap, rowGap and columnGap recursively because someone can change row or columns in some mediaQuery, so we need to render IE compatible format once again and we need to know to gaps Also we want to render only own gaps into CSS */ const getViewportGridStyles = ({ viewport, index, devices }) => props => { if (props[viewport]) { const { inline, maxWidth, gap, columnGap, rowGap, rows, columns } = props[viewport]; const compatibleIE = getViewportIEGridStyles(props[viewport], React.Children.count(props.children), { index, devices }, props); return css(["", ";max-width:", ";grid-template-columns:", ";grid-template-rows:", ";grid-column-gap:", ";grid-row-gap:", ";grid-gap:", ";", ";"], getDisplay(inline, viewport === "smallMobile"), maxWidth, columns, rows, columnGap, rowGap, gap, compatibleIE); } return false; }; export default getViewportGridStyles;