@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.
64 lines (48 loc) • 2.26 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _styledComponents = _interopRequireWildcard(require("styled-components"));
var _defaultTheme = _interopRequireDefault(require("../defaultTheme"));
var _getSpacingToken = _interopRequireDefault(require("../common/getSpacingToken"));
var _rtl = require("../utils/rtl");
function capitalize(string) {
return string.charAt(0).toUpperCase() + string.slice(1);
}
function getIndentAmount({
theme,
indent
}) {
return indent === "none" ? 0 : theme.orbit[`space${capitalize(indent)}`];
}
const StyledContainer = _styledComponents.default.div.withConfig({
displayName: "Separator__StyledContainer",
componentId: "sc-196v0by-0"
})(["", ";"], ({
align
}) => (0, _styledComponents.css)(["box-sizing:border-box;width:100%;", ";", ";", ";"], align === "left" && (0, _styledComponents.css)(["padding-", ":", ";"], _rtl.right, getIndentAmount), align === "right" && (0, _styledComponents.css)(["padding-", ":", ";"], _rtl.left, getIndentAmount), align === "center" && (0, _styledComponents.css)(["padding:0 ", ";"], getIndentAmount)));
const StyledSeparator = _styledComponents.default.hr.withConfig({
displayName: "Separator__StyledSeparator",
componentId: "sc-196v0by-1"
})(["", ";"], ({
theme
}) => (0, _styledComponents.css)(["height:", ";background:", ";box-sizing:border-box;border-style:none;margin-top:0;margin-bottom:", ";"], theme.orbit.heightSeparator, theme.orbit.backgroundSeparator, _getSpacingToken.default)); // $FlowFixMe: https://github.com/flow-typed/flow-typed/issues/3653#issuecomment-568539198
StyledSeparator.defaultProps = {
theme: _defaultTheme.default
};
const Separator = ({
align = "left",
indent = "none",
spaceAfter
}) => /*#__PURE__*/React.createElement(StyledContainer, {
align: align,
indent: indent
}, /*#__PURE__*/React.createElement(StyledSeparator, {
spaceAfter: spaceAfter
}));
var _default = Separator;
exports.default = _default;