UNPKG

sharyn

Version:

Combines all the other packages under one.

117 lines (98 loc) 3.46 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty")); var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectWithoutProperties")); var _react = _interopRequireDefault(require("react")); var _reactRouterDom = require("react-router-dom"); var _Button = _interopRequireDefault(require("@material-ui/core/Button")); var _styles = require("@material-ui/core/styles"); var _propTypes = _interopRequireDefault(require("prop-types")); /* eslint-disable import/no-extraneous-dependencies */ // flow-disable-next-line // flow-disable-next-line var styles = { link: { textDecoration: 'none', color: '#ddd', '&:hover': { color: '#ccc', textDecoration: 'none' } }, container: { textAlign: 'center' }, icon: { width: 100, height: 100 } }; var Inner = function Inner(_ref) { var classes = _ref.classes, label = _ref.label, Icon = _ref.icon; return _react.default.createElement("div", { className: classes.container }, _react.default.createElement(Icon, { className: classes.icon }), _react.default.createElement("br", null), _react.default.createElement(_Button.default, { color: "primary", variant: "raised" }, label)); }; Inner.propTypes = { classes: _propTypes.default.object.isRequired, label: _propTypes.default.string.isRequired, icon: _propTypes.default.func.isRequired }; var HeroButtonJSX = function HeroButtonJSX(_ref2) { var classes = _ref2.classes, dest = _ref2.dest, newTab = _ref2.newTab, hardLink = _ref2.hardLink, icon = _ref2.icon, label = _ref2.label, rest = (0, _objectWithoutProperties2.default)(_ref2, ["classes", "dest", "newTab", "hardLink", "icon", "label"]); if (newTab || hardLink) { var aProps = { href: dest, className: classes.link }; if (newTab) { aProps.target = '_blank'; } return _react.default.createElement("a", (0, _extends2.default)({}, rest, aProps), _react.default.createElement(Inner, { icon: icon, label: label, classes: classes })); } return _react.default.createElement(_reactRouterDom.Link, (0, _extends2.default)({}, rest, { to: dest, className: classes.link }), _react.default.createElement(Inner, { icon: icon, label: label, classes: classes })); }; HeroButtonJSX.propTypes = (0, _defineProperty2.default)({ dest: function dest(props, propName, componentName) { if (!Object.prototype.hasOwnProperty.call(props, propName)) { throw new Error("Prop `".concat(propName, "` has type 'any' or 'mixed', but was not provided to `").concat(componentName, "`. Pass undefined or any other value.")); } }, hardLink: _propTypes.default.bool, newTab: _propTypes.default.bool, icon: _propTypes.default.func.isRequired, label: _propTypes.default.string.isRequired, classes: _propTypes.default.object.isRequired }, "label", _propTypes.default.string.isRequired); var HeroButton = (0, _styles.withStyles)(styles)(HeroButtonJSX); var _default = HeroButton; exports.default = _default;