@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.
112 lines (89 loc) • 4.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.StyledModalFooter = void 0;
var React = _interopRequireWildcard(require("react"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _media = _interopRequireDefault(require("../../utils/media"));
var _defaultTokens = _interopRequireDefault(require("../../defaultTokens"));
var _Button = require("../../Button");
var _ButtonLink = require("../../ButtonLink");
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 _templateObject2() {
var data = _taggedTemplateLiteral(["\n justify-content: ", ";\n // TODO: create token paddingModalFooterDesktop\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n "]);
_templateObject2 = function _templateObject2() {
return data;
};
return data;
}
function _templateObject() {
var data = _taggedTemplateLiteral(["\n flex: none;\n "]);
_templateObject = function _templateObject() {
return data;
};
return data;
}
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
var StyledChild = _styledComponents.default.div.withConfig({
displayName: "ModalFooter__StyledChild",
componentId: "sc-17ld6v4-0"
})(["flex:", ";box-sizing:border-box;padding-right:", ";", ";"], function (_ref) {
var flex = _ref.flex;
return flex;
}, function (_ref2) {
var theme = _ref2.theme;
return theme.orbit.spaceMedium;
}, _media.default.desktop(_templateObject()));
StyledChild.defaultProps = {
theme: _defaultTokens.default
};
var StyledModalFooter = _styledComponents.default.div.withConfig({
displayName: "ModalFooter__StyledModalFooter",
componentId: "sc-17ld6v4-1"
})(["display:flex;bottom:0;width:100%;background-color:", ";padding:", ";box-sizing:border-box;@media (max-width:599px){", ",", "{font-size:", ";height:", ";}}", ";", ":last-of-type{padding-right:0;}"], function (_ref3) {
var theme = _ref3.theme;
return theme.orbit.paletteWhite;
}, function (_ref4) {
var theme = _ref4.theme;
return "0 ".concat(theme.orbit.spaceMedium, " ").concat(theme.orbit.spaceMedium);
}, _Button.StyledButton, _ButtonLink.StyledButtonLink, function (_ref5) {
var theme = _ref5.theme;
return theme.orbit.fontSizeButtonNormal;
}, function (_ref6) {
var theme = _ref6.theme;
return theme.orbit.heightButtonNormal;
}, _media.default.desktop(_templateObject2(), function (_ref7) {
var children = _ref7.children;
return children.length > 1 ? "space-between" : "flex-end";
}, function (_ref8) {
var theme = _ref8.theme;
return theme.orbit.borderRadiusNormal;
}, function (_ref9) {
var theme = _ref9.theme;
return theme.orbit.borderRadiusNormal;
}), StyledChild);
exports.StyledModalFooter = StyledModalFooter;
StyledModalFooter.defaultProps = {
theme: _defaultTokens.default
};
var ModalFooter = function ModalFooter(props) {
var _props$flex = props.flex,
flex = _props$flex === void 0 ? "0 1 auto" : _props$flex,
children = props.children,
dataTest = props.dataTest;
return React.createElement(StyledModalFooter, {
"data-test": dataTest
}, React.Children.map(children, function (item, key) {
if (item) {
var childFlex = Array.isArray(flex) && flex.length !== 1 ? flex[key] || flex[0] : flex;
return React.createElement(StyledChild, {
flex: childFlex
}, React.createElement(item.type, item.props));
}
return null;
}));
};
var _default = ModalFooter;
exports.default = _default;