@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.
53 lines (41 loc) • 1.84 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _consts = require("../consts");
var _getButtonLinkTypeToken = _interopRequireDefault(require("./getButtonLinkTypeToken"));
const getButtonLinkStyles = ({
type,
theme,
compact
}) => {
const wrappedTypeToken = name => (0, _getButtonLinkTypeToken.default)(name, type, theme);
const commonStyles = {
background: wrappedTypeToken(_consts.TOKENS.background),
foreground: wrappedTypeToken(_consts.TOKENS.foreground),
foregroundHover: wrappedTypeToken(_consts.TOKENS.foregroundHover),
foregroundActive: wrappedTypeToken(_consts.TOKENS.foregroundActive),
foregroundFocus: wrappedTypeToken(_consts.TOKENS.foregroundActive)
};
if (compact) {
if (type === _consts.TYPES.SECONDARY) {
const wrappedPrimaryType = name => (0, _getButtonLinkTypeToken.default)(name, _consts.TYPES.PRIMARY, theme);
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, commonStyles), {}, {
foregroundHover: wrappedPrimaryType(_consts.TOKENS.foregroundHover),
foregroundActive: wrappedPrimaryType(_consts.TOKENS.foregroundActive),
foregroundFocus: wrappedPrimaryType(_consts.TOKENS.foregroundActive)
});
}
return commonStyles;
}
return (0, _objectSpread2.default)({
backgroundHover: wrappedTypeToken(_consts.TOKENS.backgroundHover),
backgroundActive: wrappedTypeToken(_consts.TOKENS.backgroundActive),
backgroundFocus: wrappedTypeToken(_consts.TOKENS.backgroundActive)
}, commonStyles);
};
var _default = getButtonLinkStyles;
exports.default = _default;