UNPKG

@prisma-cms/front-editor

Version:
68 lines 2.96 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = __importDefault(require("react")); // import PropTypes from 'prop-types'; const EditorComponent_1 = __importDefault(require("../../EditorComponent")); // import Icon from "material-ui-icons/SettingsOverscan"; const Typography_1 = __importDefault(require("material-ui/Typography")); const Button_1 = __importDefault(require("material-ui/Button")); const Grid_1 = __importDefault(require("../../common/Grid")); class Login extends EditorComponent_1.default { constructor() { super(...arguments); this.openLoginForm = () => { const { openLoginForm } = this.context; openLoginForm && openLoginForm(); }; this.logout = () => { const { logout } = this.context; logout && logout(); }; } renderPanelView(content) { return super.renderPanelView(content || react_1.default.createElement("div", { className: "editor-component--panel-icon" }, "Login")); } initLocales(locales) { if (locales) { Object.assign(locales.ru.values, { Signin: 'Вход', Signout: 'Выход', }); } return super.initLocales(locales); } renderChildren() { const { user } = this.context; return user ? this.renderAuthorized() : this.renderUnauthorized(); } renderAuthorized() { const { user, UserLink } = this.context; if (!UserLink) { console.error('UserLink not defined'); return null; } const { // id: userId, username, fullname, } = user; return (react_1.default.createElement(Grid_1.default, { container: true, alignItems: "center", style: { flexWrap: 'nowrap', } }, react_1.default.createElement(Grid_1.default, { item: true }, react_1.default.createElement(UserLink, { user: user, style: { marginLeft: 5, }, variant: null }, react_1.default.createElement(Typography_1.default, { color: "inherit" }, fullname || username))), react_1.default.createElement(Grid_1.default, { item: true }, react_1.default.createElement(Button_1.default, { onClick: this.logout, color: "inherit" }, this.lexicon('Signout'))))); } renderUnauthorized() { return (react_1.default.createElement(Button_1.default, { onClick: this.openLoginForm, color: "inherit" }, this.lexicon('Signin'))); } } Login.defaultProps = Object.assign(Object.assign({}, EditorComponent_1.default.defaultProps), { hide_wrapper_in_default_mode: true }); Login.Name = 'Login'; exports.default = Login; //# sourceMappingURL=index.js.map