@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.
84 lines (72 loc) • 2.97 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _keyMaps = _interopRequireDefault(require("../common/keyMaps"));
var _defaultTheme = _interopRequireDefault(require("../defaultTheme"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var StyledNavigation = _styledComponents.default.nav.withConfig({
displayName: "SkipLink__StyledNavigation",
componentId: "sc-1hg3afm-0"
})([""]);
var StyledLink = _styledComponents.default.a.withConfig({
displayName: "SkipLink__StyledLink",
componentId: "sc-1hg3afm-1"
})(["position:absolute;width:0px;height:0px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;font-family:", ";text-decoration:", ";font-size:", ";border-radius:", ";color:", ";&:focus{top:1rem;left:1rem;clip:auto;height:auto;width:auto;margin:0;overflow:visible;padding:", ";background-color:", ";z-index:", ";}"], function (_ref) {
var theme = _ref.theme;
return theme.orbit.fontFamily;
}, function (_ref2) {
var theme = _ref2.theme;
return theme.orbit.textDecorationTextLinkPrimary;
}, function (_ref3) {
var theme = _ref3.theme;
return theme.orbit.fontSizeTextLarge;
}, function (_ref4) {
var theme = _ref4.theme;
return theme.orbit.borderRadiusNormal;
}, function (_ref5) {
var theme = _ref5.theme;
return theme.orbit.paletteInkNormal;
}, function (_ref6) {
var theme = _ref6.theme;
return theme.orbit.spaceMedium;
}, function (_ref7) {
var theme = _ref7.theme;
return theme.orbit.paletteWhite;
}, function (_ref8) {
var theme = _ref8.theme;
return theme.orbit.zIndexOnTheTop;
});
StyledLink.defaultProps = {
theme: _defaultTheme.default
};
var StyledDescription = _styledComponents.default.p.withConfig({
displayName: "SkipLink__StyledDescription",
componentId: "sc-1hg3afm-2"
})(["background-color:red;visibility:none;position:absolute;width:0px;height:0px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;"]);
var SkipLink = function SkipLink(_ref9) {
var links = _ref9.links,
description = _ref9.description;
return _react.default.createElement(StyledNavigation, null, description && _react.default.createElement(StyledDescription, null, description), links && links.map(function (_ref10, index) {
var href = _ref10.href,
name = _ref10.name,
onClick = _ref10.onClick;
return _react.default.createElement(StyledLink, {
key: encodeURIComponent(name + index),
href: href,
tabIndex: href ? "" : "0",
role: href ? "" : "Button",
onClick: onClick,
onKeyDown: function onKeyDown(ev) {
if (ev.keyCode === _keyMaps.default.ENTER && onClick) {
onClick();
}
}
}, name);
}));
};
var _default = SkipLink;
exports.default = _default;