UNPKG

@randy.tarampi/jsx

Version:

Some common JSX components for www.randytarampi.ca

70 lines (56 loc) 3.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = exports.InternalLink = void 0; var _immutable = require("connected-react-router/immutable"); var _propTypes = _interopRequireDefault(require("prop-types")); var _react = _interopRequireDefault(require("react")); var _reactRedux = require("react-redux"); var _link = _interopRequireDefault(require("../link")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } var InternalLinkInternal = function InternalLinkInternal(_ref) { var serviceName = _ref.serviceName, serviceType = _ref.serviceType, className = _ref.className, props = _objectWithoutProperties(_ref, ["serviceName", "serviceType", "className"]); // eslint-disable-line no-unused-vars return /*#__PURE__*/_react["default"].createElement(_link["default"], _extends({ target: "_self", text: serviceName }, props, { className: ["link--".concat(serviceType), className].join(" ").trim() })); }; InternalLinkInternal.propTypes = { className: _propTypes["default"].string, href: _propTypes["default"].string.isRequired, serviceName: _propTypes["default"].string, serviceType: _propTypes["default"].string.isRequired }; InternalLinkInternal.defaultProps = { serviceType: "internal" }; var InternalLink = (0, _reactRedux.connect)(null, function (dispatch, _ref2) { var _onClick = _ref2.onClick, href = _ref2.href; return { onClick: function onClick(event) { event.preventDefault(); dispatch((0, _immutable.push)(href)); if (_onClick) { _onClick(event); } } }; })(InternalLinkInternal); exports.InternalLink = InternalLink; InternalLink.propTypes = { href: _propTypes["default"].string.isRequired, onClick: _propTypes["default"].func }; var _default = InternalLink; exports["default"] = _default;