UNPKG

@hackoregon/component-library

Version:

Official repo for Hack Oregon React component library

71 lines (58 loc) 2.63 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _reactRouter = require("react-router"); var _emotion = require("emotion"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _templateObject() { var data = _taggedTemplateLiteral(["\n & a {\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n border-bottom: none;\n color: #000;\n\n &:hover {\n background-color: rgba(0, 0, 0, 0.1);\n color: #000;\n }\n\n & i {\n margin-right: 12px;\n opacity: 0.8;\n }\n }\n\n & span {\n flex-wrap: nowrap;\n }\n"]); _templateObject = function _templateObject() { return data; }; return data; } function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); } var storyLinkClass = (0, _emotion.css)(_templateObject()); var StoryLink = function StoryLink(_ref) { var children = _ref.children, icon = _ref.icon, route = _ref.route, action = _ref.action, link = _ref.link, embed = _ref.embed; return _react["default"].createElement("div", { className: storyLinkClass }, route ? _react["default"].createElement(_reactRouter.Link, { to: route }, _react["default"].createElement("i", { className: icon }), _react["default"].createElement("span", null, children)) : embed ? _react["default"].createElement("a", { href: link, target: "_blank" }, _react["default"].createElement("i", { className: icon }), _react["default"].createElement("span", null, children)) : link ? _react["default"].createElement("a", { href: link }, _react["default"].createElement("i", { className: icon }), _react["default"].createElement("span", null, children)) : _react["default"].createElement("a", { tabIndex: "0", onClick: action }, _react["default"].createElement("i", { className: icon }), _react["default"].createElement("span", null, children))); }; StoryLink.displayName = "StoryLink"; StoryLink.propTypes = { action: _propTypes["default"].func, children: _propTypes["default"].node, icon: _propTypes["default"].string, route: _propTypes["default"].string, link: _propTypes["default"].string }; var _default = StoryLink; exports["default"] = _default;