@bootstrap-styled/ra-ui
Version:
UI components for react-admin
148 lines (126 loc) • 5.35 kB
JavaScript
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.Show = exports.ShowView = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _react = _interopRequireWildcard(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _classnames = _interopRequireDefault(require("classnames"));
var _raCore = require("ra-core");
var _ShowActions = _interopRequireDefault(require("./ShowActions"));
var _TitleForRecord = _interopRequireDefault(require("../layout/TitleForRecord"));
var _CardContentInner = _interopRequireDefault(require("../layout/CardContentInner"));
var _CardContent = _interopRequireDefault(require("../layout/CardContent"));
var sanitizeRestProps = function sanitizeRestProps(_ref) {
var actions = _ref.actions,
aside = _ref.aside,
title = _ref.title,
children = _ref.children,
className = _ref.className,
crudGetOne = _ref.crudGetOne,
id = _ref.id,
data = _ref.data,
isLoading = _ref.isLoading,
resource = _ref.resource,
hasCreate = _ref.hasCreate,
hasEdit = _ref.hasEdit,
hasList = _ref.hasList,
hasShow = _ref.hasShow,
translate = _ref.translate,
version = _ref.version,
match = _ref.match,
location = _ref.location,
history = _ref.history,
options = _ref.options,
locale = _ref.locale,
permissions = _ref.permissions,
rest = (0, _objectWithoutProperties2.default)(_ref, ["actions", "aside", "title", "children", "className", "crudGetOne", "id", "data", "isLoading", "resource", "hasCreate", "hasEdit", "hasList", "hasShow", "translate", "version", "match", "location", "history", "options", "locale", "permissions"]);
return rest;
};
var ShowView = function ShowView(_ref2) {
var actions = _ref2.actions,
aside = _ref2.aside,
basePath = _ref2.basePath,
children = _ref2.children,
className = _ref2.className,
defaultTitle = _ref2.defaultTitle,
hasEdit = _ref2.hasEdit,
hasList = _ref2.hasList,
isLoading = _ref2.isLoading,
record = _ref2.record,
resource = _ref2.resource,
title = _ref2.title,
version = _ref2.version,
rest = (0, _objectWithoutProperties2.default)(_ref2, ["actions", "aside", "basePath", "children", "className", "defaultTitle", "hasEdit", "hasList", "isLoading", "record", "resource", "title", "version"]);
if (typeof actions === 'undefined' && hasEdit) {
actions = _react.default.createElement(_ShowActions.default, null);
}
if (!children) {
return null;
}
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)('show-page d-flex', className)
}, sanitizeRestProps(rest)), _react.default.createElement(_TitleForRecord.default, {
title: title,
record: record,
defaultTitle: defaultTitle
}), _react.default.createElement(_CardContent.default, null, actions && _react.default.createElement(_CardContentInner.default, null, (0, _react.cloneElement)(actions, (0, _objectSpread2.default)({
basePath: basePath,
data: record,
hasList: hasList,
hasEdit: hasEdit,
resource: resource
}, actions.props))), record && _react.default.createElement(_CardContentInner.default, null, (0, _react.cloneElement)(_react.Children.only(children), {
resource: resource,
basePath: basePath,
record: record,
version: version
}))), aside && (0, _react.cloneElement)(aside, {
resource: resource,
basePath: basePath,
record: record,
version: version
}));
};
exports.ShowView = ShowView;
ShowView.propTypes = {
actions: _propTypes.default.element,
aside: _propTypes.default.node,
basePath: _propTypes.default.string,
children: _propTypes.default.element,
className: _propTypes.default.string,
defaultTitle: _propTypes.default.any,
hasEdit: _propTypes.default.bool,
hasList: _propTypes.default.bool,
isLoading: _propTypes.default.bool,
record: _propTypes.default.object,
resource: _propTypes.default.string,
title: _propTypes.default.any,
version: _propTypes.default.number
};
var Show = function Show(props) {
return _react.default.createElement(_raCore.ShowController, props, function (controllerProps) {
return _react.default.createElement(ShowView, (0, _extends2.default)({}, props, controllerProps));
});
};
exports.Show = Show;
Show.propTypes = {
actions: _propTypes.default.element,
aside: _propTypes.default.node,
children: _propTypes.default.element,
className: _propTypes.default.string,
hasCreate: _propTypes.default.bool,
hasEdit: _propTypes.default.bool,
hasList: _propTypes.default.bool,
hasShow: _propTypes.default.bool,
id: _propTypes.default.any.isRequired,
resource: _propTypes.default.string.isRequired,
title: _propTypes.default.any
};
var _default = Show;
exports.default = _default;