django-bananas
Version:
React admin frontend for Django.
89 lines (88 loc) • 2.79 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _Dialog = _interopRequireDefault(require("@mui/material/Dialog"));
var _DialogTitle = _interopRequireDefault(require("@mui/material/DialogTitle"));
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
var _styles = require("@mui/styles");
var _propTypes = _interopRequireDefault(require("prop-types"));
var _react = _interopRequireDefault(require("react"));
var _Logo = _interopRequireDefault(require("../Logo"));
var _LoginPageForm = _interopRequireDefault(require("./LoginPageForm"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
var DialogTitle = (0, _styles.withStyles)(theme => ({
root: {
borderBottom: "1px solid ".concat(theme.palette.divider),
margin: 0,
textAlign: "center",
backgroundColor: theme.palette.primary.main,
padding: theme.gap(2)
},
closeButton: {
position: "absolute",
right: theme.gap(1),
top: theme.gap(1),
color: theme.palette.grey[500]
}
}))(props => {
var {
children,
classes
} = props;
return /*#__PURE__*/_react.default.createElement(_DialogTitle.default, {
className: classes.root
}, children);
});
var pageStyles = theme => ({
title: {},
textLogo: {
color: theme.palette.primary.contrastText,
fontWeight: "bold"
}
});
class LoginPage extends _react.default.Component {
render() {
var {
classes,
logger,
title,
logo
} = this.props;
var Form = this.props.form || _LoginPageForm.default;
return /*#__PURE__*/_react.default.createElement(_Dialog.default, {
onClose: this.handleClose,
"aria-labelledby": "customized-dialog-title",
open: true
}, /*#__PURE__*/_react.default.createElement(DialogTitle, {
id: "customized-dialog-title",
onClose: this.handleClose,
classes: {
root: classes.title
}
}, logo ? /*#__PURE__*/_react.default.createElement(_Logo.default, {
src: logo
}) : /*#__PURE__*/_react.default.createElement(_Typography.default, {
variant: "h5",
className: classes.textLogo
}, title)), /*#__PURE__*/_react.default.createElement(Form, {
logger: logger
}));
}
}
LoginPage.propTypes = {
classes: _propTypes.default.object.isRequired,
logger: _propTypes.default.object.isRequired,
form: _propTypes.default.func,
title: _propTypes.default.string,
logo: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string, _propTypes.default.node])
};
LoginPage.defaultProps = {
form: undefined,
title: undefined,
logo: true
};
var _default = exports.default = (0, _styles.withStyles)(pageStyles, {
name: "BananasLoginPage"
})(LoginPage);