@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.
63 lines (62 loc) • 2.04 kB
JavaScript
;
"use client";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
exports.__esModule = true;
exports.default = exports.StyledServiceLogo = void 0;
var _react = _interopRequireDefault(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
}
};
if (!size || !tokens.height[size]) return "";
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.default.createElement("img", {
className: `orbit-service-logo ${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-9hmpyv-0"
})(["height:", ";width:auto;background-color:transparent;"], ({
theme,
size
}) => getHeight(theme, size));
exports.StyledServiceLogo = StyledServiceLogo;
StyledServiceLogo.defaultProps = {
theme: _defaultTheme.default
};
const ServiceLogo = ({
name,
size = _consts.SIZE_OPTIONS.MEDIUM,
grayScale = false,
dataTest,
id
}) => /*#__PURE__*/_react.default.createElement(StyledServiceLogo, {
name: name,
size: size,
grayScale: grayScale,
dataTest: dataTest,
id: id
});
var _default = ServiceLogo;
exports.default = _default;