UNPKG

@bootstrap-styled/ra-ui

Version:
64 lines (48 loc) 2.32 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _shouldUpdate = _interopRequireDefault(require("recompose/shouldUpdate")); var _Create = _interopRequireDefault(require("@material-ui/icons/Create")); var _reactRouterDom = require("react-router-dom"); var _raCore = require("ra-core"); var _Button = _interopRequireDefault(require("./Button")); var stopPropagation = function stopPropagation(e) { return e.stopPropagation(); }; var EditButton = function EditButton(_ref) { var _ref$basePath = _ref.basePath, basePath = _ref$basePath === void 0 ? '' : _ref$basePath, _ref$label = _ref.label, label = _ref$label === void 0 ? 'ra.action.edit' : _ref$label, _ref$record = _ref.record, record = _ref$record === void 0 ? {} : _ref$record, _ref$icon = _ref.icon, icon = _ref$icon === void 0 ? _react.default.createElement(_Create.default, null) : _ref$icon, rest = (0, _objectWithoutProperties2.default)(_ref, ["basePath", "label", "record", "icon"]); return _react.default.createElement(_Button.default, (0, _extends2.default)({ tag: _reactRouterDom.Link, to: (0, _raCore.linkToRecord)(basePath, record.id), label: label, onClick: stopPropagation }, rest), icon); }; EditButton.propTypes = { basePath: _propTypes.default.string, className: _propTypes.default.string, label: _propTypes.default.string, record: _propTypes.default.object, icon: _propTypes.default.element }; var enhance = (0, _shouldUpdate.default)(function (props, nextProps) { return props.translate !== nextProps.translate || props.record && nextProps.record && props.record.id !== nextProps.record.id || props.basePath !== nextProps.basePath || props.record == null && nextProps.record != null; }); var _default = enhance(EditButton); exports.default = _default; module.exports = exports.default;