@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.
56 lines (52 loc) • 2.17 kB
JavaScript
import React, { forwardRef } from "react";
import styled, { css } from "styled-components";
import mq from "../../../utils/mediaQuery";
import defaultTheme from "../../../defaultTheme";
var getPadding = function getPadding(_ref) {
var noPadding = _ref.noPadding,
useMargins = _ref.useMargins,
theme = _ref.theme;
if (noPadding) return null;
if (!useMargins) {
return css(["padding:", ";", ""], theme.orbit.spaceMedium, mq.largeMobile(css(["padding:", ";"], theme.orbit.spaceLarge)));
}
return css(["padding:", " 0;margin:0 ", ";", ""], theme.orbit.spaceMedium, theme.orbit.spaceMedium, mq.largeMobile(css(["padding:", " 0;margin:0 ", ";"], theme.orbit.spaceLarge, theme.orbit.spaceLarge)));
};
var StyledTileContent = styled.div.withConfig({
displayName: "TileContent__StyledTileContent",
componentId: "o2si0o-0"
})(["font-size:", ";line-height:", ";", ";", ";", ";"], function (_ref2) {
var theme = _ref2.theme;
return theme.orbit.fontSizeTextNormal;
}, function (_ref3) {
var theme = _ref3.theme;
return theme.orbit.lineHeightTextNormal;
}, function (_ref4) {
var withPointer = _ref4.withPointer;
return withPointer && css(["cursor:pointer;"]);
}, function (_ref5) {
var withBorder = _ref5.withBorder,
theme = _ref5.theme;
return withBorder && css(["border-top:1px solid ", ";"], theme.orbit.paletteCloudNormal);
}, getPadding);
StyledTileContent.defaultProps = {
theme: defaultTheme
};
var TileContent = /*#__PURE__*/forwardRef(function (_ref6, ref) {
var children = _ref6.children,
noPadding = _ref6.noPadding,
_ref6$withPointer = _ref6.withPointer,
withPointer = _ref6$withPointer === void 0 ? false : _ref6$withPointer,
_ref6$withBorder = _ref6.withBorder,
withBorder = _ref6$withBorder === void 0 ? false : _ref6$withBorder,
_ref6$useMargins = _ref6.useMargins,
useMargins = _ref6$useMargins === void 0 ? true : _ref6$useMargins;
return /*#__PURE__*/React.createElement(StyledTileContent, {
noPadding: noPadding,
ref: ref,
withPointer: withPointer,
withBorder: withBorder,
useMargins: useMargins
}, children);
});
export default TileContent;