@bootstrap-styled/ra-ui
Version:
UI components for react-admin
74 lines (56 loc) • 2.69 kB
JavaScript
"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 _onlyUpdateForKeys = _interopRequireDefault(require("recompose/onlyUpdateForKeys"));
var _Add = _interopRequireDefault(require("@material-ui/icons/Add"));
var _compose = _interopRequireDefault(require("recompose/compose"));
var _classnames = _interopRequireDefault(require("classnames"));
var _reactRouterDom = require("react-router-dom");
var _raCore = require("ra-core");
var _Button = _interopRequireDefault(require("./Button"));
var _Responsive = _interopRequireDefault(require("../layout/Responsive"));
var CreateButton = function CreateButton(_ref) {
var _ref$basePath = _ref.basePath,
basePath = _ref$basePath === void 0 ? '' : _ref$basePath,
className = _ref.className,
translate = _ref.translate,
_ref$label = _ref.label,
label = _ref$label === void 0 ? 'ra.action.create' : _ref$label,
_ref$icon = _ref.icon,
icon = _ref$icon === void 0 ? _react.default.createElement(_Add.default, null) : _ref$icon,
rest = (0, _objectWithoutProperties2.default)(_ref, ["basePath", "className", "translate", "label", "icon"]);
return _react.default.createElement(_Responsive.default, {
small: _react.default.createElement(_Button.default, (0, _extends2.default)({
component: _reactRouterDom.Link,
color: "primary",
className: (0, _classnames.default)('m-0', className),
to: "".concat(basePath, "/create"),
"aria-label": label && translate(label)
}, rest), icon),
medium: _react.default.createElement(_Button.default, (0, _extends2.default)({
tag: _reactRouterDom.Link,
to: "".concat(basePath, "/create"),
className: className,
label: label
}, rest), icon)
});
};
CreateButton.propTypes = {
basePath: _propTypes.default.string,
className: _propTypes.default.string,
label: _propTypes.default.string,
size: _propTypes.default.string,
translate: _propTypes.default.func.isRequired,
icon: _propTypes.default.element
};
var enhance = (0, _compose.default)(_raCore.translate, (0, _onlyUpdateForKeys.default)(['basePath', 'label']));
var _default = enhance(CreateButton);
exports.default = _default;
module.exports = exports.default;