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.

72 lines (54 loc) 3.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "LayoutColumn", { enumerable: true, get: function get() { return _LayoutColumn.default; } }); exports.default = void 0; var React = _interopRequireWildcard(require("react")); var _styledComponents = _interopRequireWildcard(require("styled-components")); var _defaultTheme = _interopRequireDefault(require("../defaultTheme")); var _Grid = _interopRequireDefault(require("../utils/Grid")); var _consts = require("./consts"); var _mediaQuery = _interopRequireDefault(require("../utils/mediaQuery")); var _LayoutColumn = _interopRequireDefault(require("./LayoutColumn")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var getChildrenProps = function getChildrenProps(type, key) { if (_consts.LAYOUT_SETTINGS[type].layoutColumns && _consts.LAYOUT_SETTINGS[type].layoutColumns[key]) { return _consts.LAYOUT_SETTINGS[type].layoutColumns[key]; } return null; }; var StyledLayout = (0, _styledComponents.default)(_Grid.default).withConfig({ displayName: "Layout__StyledLayout", componentId: "vx9wse-0" })(["box-sizing:border-box;margin:0 auto;width:100%;padding:0 ", ";", ";"], function (_ref) { var theme = _ref.theme; return theme.orbit.spaceMedium; }, _mediaQuery.default.desktop((0, _styledComponents.css)(["padding:", ";"], function (_ref2) { var theme = _ref2.theme; return theme.orbit.spaceLarge; }))); StyledLayout.defaultProps = { theme: _defaultTheme.default }; var Layout = function Layout(_ref3) { var children = _ref3.children, type = _ref3.type, dataTest = _ref3.dataTest; return React.createElement(StyledLayout, _extends({}, _consts.LAYOUT_SETTINGS[type], { dataTest: dataTest }), React.Children.map(children, function (item, key) { return React.cloneElement(item, _objectSpread({}, getChildrenProps(type, key))); })); }; var _default = Layout; exports.default = _default;