UNPKG

mui-language-picker

Version:
42 lines (41 loc) 2.85 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = ChangeName; var react_1 = __importDefault(require("react")); var Button_1 = __importDefault(require("@mui/material/Button")); var TextField_1 = __importDefault(require("@mui/material/TextField")); var Dialog_1 = __importDefault(require("@mui/material/Dialog")); var DialogActions_1 = __importDefault(require("@mui/material/DialogActions")); var DialogContent_1 = __importDefault(require("@mui/material/DialogContent")); var DialogContentText_1 = __importDefault(require("@mui/material/DialogContentText")); var DialogTitle_1 = __importDefault(require("@mui/material/DialogTitle")); var localization_1 = require("./localization"); function ChangeName(_a) { var isOpen = _a.isOpen, onClose = _a.onClose, curName = _a.curName, onNewName = _a.onNewName, t = _a.t; var _b = react_1.default.useState(isOpen), open = _b[0], setOpen = _b[1]; var _c = react_1.default.useState(curName || ''), name = _c[0], setName = _c[1]; var handleClose = function (save) { return function () { if (save && name && onNewName) onNewName(name); if (onClose) onClose(); setOpen(false); }; }; var handleNameChange = function (event) { setName(event.target.value); }; react_1.default.useEffect(function () { setOpen(isOpen); }, [isOpen]); return (react_1.default.createElement(Dialog_1.default, { open: open, onClose: handleClose() }, react_1.default.createElement(DialogTitle_1.default, null, (t === null || t === void 0 ? void 0 : t.changeName) || localization_1.languagePickerStrings_en.changeName), react_1.default.createElement(DialogContent_1.default, null, react_1.default.createElement(DialogContentText_1.default, null, (t === null || t === void 0 ? void 0 : t.nameInstruction) || localization_1.languagePickerStrings_en.nameInstruction), react_1.default.createElement(TextField_1.default, { autoFocus: true, margin: "dense", id: "name", "data-testid": "name", label: (t === null || t === void 0 ? void 0 : t.newName) || localization_1.languagePickerStrings_en.newName, fullWidth: true, value: name, onChange: handleNameChange })), react_1.default.createElement(DialogActions_1.default, null, react_1.default.createElement(Button_1.default, { onClick: handleClose() }, (t === null || t === void 0 ? void 0 : t.cancel) || localization_1.languagePickerStrings_en.cancel), react_1.default.createElement(Button_1.default, { onClick: handleClose(true) }, (t === null || t === void 0 ? void 0 : t.change) || localization_1.languagePickerStrings_en.change)))); }