@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.
74 lines (61 loc) • 2.13 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
exports.__esModule = true;
exports.default = exports.StyledServiceLogo = void 0;
var React = _interopRequireWildcard(require("react"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _defaultTheme = _interopRequireDefault(require("../defaultTheme"));
var _consts = require("./consts");
const getHeight = (theme, size) => {
const tokens = {
height: {
[_consts.SIZE_OPTIONS.SMALL]: theme.orbit.heightServiceLogoSmall,
[_consts.SIZE_OPTIONS.MEDIUM]: theme.orbit.heightServiceLogoMedium,
[_consts.SIZE_OPTIONS.LARGE]: theme.orbit.heightServiceLogoLarge
}
};
return tokens.height[size];
};
const getColor = greyScale => greyScale ? "logos-grayscale" : "logos";
const StyledServiceLogo = (0, _styledComponents.default)(({
className,
name,
size,
grayScale,
theme,
dataTest,
id
}) => /*#__PURE__*/React.createElement("img", {
className: className,
src: `${_consts.baseURL}/${getColor(grayScale)}/0x${parseInt(getHeight(theme, size), 10)}/${name}.png`,
srcSet: `${_consts.baseURL}/${getColor(grayScale)}/0x${parseInt(getHeight(theme, size), 10) * 2}/${name}.png 2x`,
alt: name,
id: id,
"data-test": dataTest
})).withConfig({
displayName: "ServiceLogo__StyledServiceLogo",
componentId: "sc-1v8dmk4-0"
})(["height:", ";width:auto;background-color:transparent;"], ({
theme,
size
}) => getHeight(theme, size)); // $FlowFixMe: https://github.com/flow-typed/flow-typed/issues/3653#issuecomment-568539198
exports.StyledServiceLogo = StyledServiceLogo;
StyledServiceLogo.defaultProps = {
theme: _defaultTheme.default
};
const ServiceLogo = ({
name,
size = _consts.SIZE_OPTIONS.MEDIUM,
grayScale = false,
dataTest,
id
}) => /*#__PURE__*/React.createElement(StyledServiceLogo, {
name: name,
size: size,
grayScale: grayScale,
dataTest: dataTest,
id: id
});
var _default = ServiceLogo;
exports.default = _default;