UNPKG

matrix-react-sdk

Version:
97 lines (94 loc) 15.7 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.EnterEmail = void 0; var _react = _interopRequireWildcard(require("react")); var _icons = require("@vector-im/compound-design-tokens/assets/web/icons"); var _languageHandler = require("../../../../languageHandler"); var _EmailField = _interopRequireDefault(require("../../../views/auth/EmailField")); var _ErrorMessage = require("../../ErrorMessage"); var _Spinner = _interopRequireDefault(require("../../../views/elements/Spinner")); var _AccessibleButton = _interopRequireDefault(require("../../../views/elements/AccessibleButton")); function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } /* Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ /** * This component renders the email input view of the forgot password flow. */ const EnterEmail = ({ email, errorText, homeserver, loading, onInputChanged, onLoginClick, onSubmitForm }) => { const submitButtonChild = loading ? /*#__PURE__*/_react.default.createElement(_Spinner.default, { w: 16, h: 16 }) : (0, _languageHandler._t)("auth|forgot_password_send_email"); const emailFieldRef = (0, _react.useRef)(null); const onSubmit = async event => { if (await emailFieldRef.current?.validate({ allowEmpty: false })) { onSubmitForm(event); return; } emailFieldRef.current?.focus(); emailFieldRef.current?.validate({ allowEmpty: false, focused: true }); }; return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_icons.EmailSolidIcon, { className: "mx_AuthBody_icon" }), /*#__PURE__*/_react.default.createElement("h1", null, (0, _languageHandler._t)("auth|enter_email_heading")), /*#__PURE__*/_react.default.createElement("p", { className: "mx_AuthBody_text" }, (0, _languageHandler._t)("auth|enter_email_explainer", { homeserver }, { b: t => /*#__PURE__*/_react.default.createElement("strong", null, t) })), /*#__PURE__*/_react.default.createElement("form", { onSubmit: onSubmit }, /*#__PURE__*/_react.default.createElement("fieldset", { disabled: loading }, /*#__PURE__*/_react.default.createElement("div", { className: "mx_AuthBody_fieldRow" }, /*#__PURE__*/_react.default.createElement(_EmailField.default, { name: "reset_email" // define a name so browser's password autofill gets less confused , label: (0, _languageHandler._td)("common|email_address"), labelRequired: (0, _languageHandler._td)("auth|forgot_password_email_required"), labelInvalid: (0, _languageHandler._td)("auth|forgot_password_email_invalid"), value: email, autoFocus: true, onChange: event => onInputChanged("email", event), fieldRef: emailFieldRef })), errorText && /*#__PURE__*/_react.default.createElement(_ErrorMessage.ErrorMessage, { message: errorText }), /*#__PURE__*/_react.default.createElement("button", { type: "submit", className: "mx_Login_submit" }, submitButtonChild), /*#__PURE__*/_react.default.createElement("div", { className: "mx_AuthBody_button-container" }, /*#__PURE__*/_react.default.createElement(_AccessibleButton.default, { className: "mx_AuthBody_sign-in-instead-button", element: "button", kind: "link", onClick: e => { e.preventDefault(); onLoginClick(); } }, (0, _languageHandler._t)("auth|sign_in_instead")))))); }; exports.EnterEmail = EnterEmail; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfaWNvbnMiLCJfbGFuZ3VhZ2VIYW5kbGVyIiwiX0VtYWlsRmllbGQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0Vycm9yTWVzc2FnZSIsIl9TcGlubmVyIiwiX0FjY2Vzc2libGVCdXR0b24iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJFbnRlckVtYWlsIiwiZW1haWwiLCJlcnJvclRleHQiLCJob21lc2VydmVyIiwibG9hZGluZyIsIm9uSW5wdXRDaGFuZ2VkIiwib25Mb2dpbkNsaWNrIiwib25TdWJtaXRGb3JtIiwic3VibWl0QnV0dG9uQ2hpbGQiLCJjcmVhdGVFbGVtZW50IiwidyIsImgiLCJfdCIsImVtYWlsRmllbGRSZWYiLCJ1c2VSZWYiLCJvblN1Ym1pdCIsImV2ZW50IiwiY3VycmVudCIsInZhbGlkYXRlIiwiYWxsb3dFbXB0eSIsImZvY3VzIiwiZm9jdXNlZCIsIkZyYWdtZW50IiwiRW1haWxTb2xpZEljb24iLCJjbGFzc05hbWUiLCJiIiwiZGlzYWJsZWQiLCJuYW1lIiwibGFiZWwiLCJfdGQiLCJsYWJlbFJlcXVpcmVkIiwibGFiZWxJbnZhbGlkIiwidmFsdWUiLCJhdXRvRm9jdXMiLCJvbkNoYW5nZSIsImZpZWxkUmVmIiwiRXJyb3JNZXNzYWdlIiwibWVzc2FnZSIsInR5cGUiLCJlbGVtZW50Iiwia2luZCIsIm9uQ2xpY2siLCJwcmV2ZW50RGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9zdHJ1Y3R1cmVzL2F1dGgvZm9yZ290LXBhc3N3b3JkL0VudGVyRW1haWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDIyIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBR1BMLTMuMC1vbmx5IE9SIEdQTC0zLjAtb25seVxuUGxlYXNlIHNlZSBMSUNFTlNFIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IHJvb3QgZm9yIGZ1bGwgZGV0YWlscy5cbiovXG5cbmltcG9ydCBSZWFjdCwgeyBSZWFjdE5vZGUsIHVzZVJlZiB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRW1haWxTb2xpZEljb24gfSBmcm9tIFwiQHZlY3Rvci1pbS9jb21wb3VuZC1kZXNpZ24tdG9rZW5zL2Fzc2V0cy93ZWIvaWNvbnNcIjtcblxuaW1wb3J0IHsgX3QsIF90ZCB9IGZyb20gXCIuLi8uLi8uLi8uLi9sYW5ndWFnZUhhbmRsZXJcIjtcbmltcG9ydCBFbWFpbEZpZWxkIGZyb20gXCIuLi8uLi8uLi92aWV3cy9hdXRoL0VtYWlsRmllbGRcIjtcbmltcG9ydCB7IEVycm9yTWVzc2FnZSB9IGZyb20gXCIuLi8uLi9FcnJvck1lc3NhZ2VcIjtcbmltcG9ydCBTcGlubmVyIGZyb20gXCIuLi8uLi8uLi92aWV3cy9lbGVtZW50cy9TcGlubmVyXCI7XG5pbXBvcnQgRmllbGQgZnJvbSBcIi4uLy4uLy4uL3ZpZXdzL2VsZW1lbnRzL0ZpZWxkXCI7XG5pbXBvcnQgQWNjZXNzaWJsZUJ1dHRvbiwgeyBCdXR0b25FdmVudCB9IGZyb20gXCIuLi8uLi8uLi92aWV3cy9lbGVtZW50cy9BY2Nlc3NpYmxlQnV0dG9uXCI7XG5cbmludGVyZmFjZSBFbnRlckVtYWlsUHJvcHMge1xuICAgIGVtYWlsOiBzdHJpbmc7XG4gICAgZXJyb3JUZXh0OiBzdHJpbmcgfCBSZWFjdE5vZGUgfCBudWxsO1xuICAgIGhvbWVzZXJ2ZXI6IHN0cmluZztcbiAgICBsb2FkaW5nOiBib29sZWFuO1xuICAgIG9uSW5wdXRDaGFuZ2VkOiAoc3RhdGVLZXk6IFwiZW1haWxcIiwgZXY6IFJlYWN0LkZvcm1FdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4gdm9pZDtcbiAgICBvbkxvZ2luQ2xpY2s6ICgpID0+IHZvaWQ7XG4gICAgb25TdWJtaXRGb3JtOiAoZXY6IFJlYWN0LkZvcm1FdmVudCkgPT4gdm9pZDtcbn1cblxuLyoqXG4gKiBUaGlzIGNvbXBvbmVudCByZW5kZXJzIHRoZSBlbWFpbCBpbnB1dCB2aWV3IG9mIHRoZSBmb3Jnb3QgcGFzc3dvcmQgZmxvdy5cbiAqL1xuZXhwb3J0IGNvbnN0IEVudGVyRW1haWw6IFJlYWN0LkZDPEVudGVyRW1haWxQcm9wcz4gPSAoe1xuICAgIGVtYWlsLFxuICAgIGVycm9yVGV4dCxcbiAgICBob21lc2VydmVyLFxuICAgIGxvYWRpbmcsXG4gICAgb25JbnB1dENoYW5nZWQsXG4gICAgb25Mb2dpbkNsaWNrLFxuICAgIG9uU3VibWl0Rm9ybSxcbn0pID0+IHtcbiAgICBjb25zdCBzdWJtaXRCdXR0b25DaGlsZCA9IGxvYWRpbmcgPyA8U3Bpbm5lciB3PXsxNn0gaD17MTZ9IC8+IDogX3QoXCJhdXRofGZvcmdvdF9wYXNzd29yZF9zZW5kX2VtYWlsXCIpO1xuXG4gICAgY29uc3QgZW1haWxGaWVsZFJlZiA9IHVzZVJlZjxGaWVsZD4obnVsbCk7XG5cbiAgICBjb25zdCBvblN1Ym1pdCA9IGFzeW5jIChldmVudDogUmVhY3QuRm9ybUV2ZW50KTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgICAgIGlmIChhd2FpdCBlbWFpbEZpZWxkUmVmLmN1cnJlbnQ/LnZhbGlkYXRlKHsgYWxsb3dFbXB0eTogZmFsc2UgfSkpIHtcbiAgICAgICAgICAgIG9uU3VibWl0Rm9ybShldmVudCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBlbWFpbEZpZWxkUmVmLmN1cnJlbnQ/LmZvY3VzKCk7XG4gICAgICAgIGVtYWlsRmllbGRSZWYuY3VycmVudD8udmFsaWRhdGUoeyBhbGxvd0VtcHR5OiBmYWxzZSwgZm9jdXNlZDogdHJ1ZSB9KTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICAgIDxFbWFpbFNvbGlkSWNvbiBjbGFzc05hbWU9XCJteF9BdXRoQm9keV9pY29uXCIgLz5cbiAgICAgICAgICAgIDxoMT57X3QoXCJhdXRofGVudGVyX2VtYWlsX2hlYWRpbmdcIil9PC9oMT5cbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cIm14X0F1dGhCb2R5X3RleHRcIj5cbiAgICAgICAgICAgICAgICB7X3QoXCJhdXRofGVudGVyX2VtYWlsX2V4cGxhaW5lclwiLCB7IGhvbWVzZXJ2ZXIgfSwgeyBiOiAodCkgPT4gPHN0cm9uZz57dH08L3N0cm9uZz4gfSl9XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8Zm9ybSBvblN1Ym1pdD17b25TdWJtaXR9PlxuICAgICAgICAgICAgICAgIDxmaWVsZHNldCBkaXNhYmxlZD17bG9hZGluZ30+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXhfQXV0aEJvZHlfZmllbGRSb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxFbWFpbEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInJlc2V0X2VtYWlsXCIgLy8gZGVmaW5lIGEgbmFtZSBzbyBicm93c2VyJ3MgcGFzc3dvcmQgYXV0b2ZpbGwgZ2V0cyBsZXNzIGNvbmZ1c2VkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e190ZChcImNvbW1vbnxlbWFpbF9hZGRyZXNzXCIpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsUmVxdWlyZWQ9e190ZChcImF1dGh8Zm9yZ290X3Bhc3N3b3JkX2VtYWlsX3JlcXVpcmVkXCIpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsSW52YWxpZD17X3RkKFwiYXV0aHxmb3Jnb3RfcGFzc3dvcmRfZW1haWxfaW52YWxpZFwiKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17ZW1haWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0ZvY3VzPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoZXZlbnQ6IFJlYWN0LkZvcm1FdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4gb25JbnB1dENoYW5nZWQoXCJlbWFpbFwiLCBldmVudCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRSZWY9e2VtYWlsRmllbGRSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAge2Vycm9yVGV4dCAmJiA8RXJyb3JNZXNzYWdlIG1lc3NhZ2U9e2Vycm9yVGV4dH0gLz59XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzTmFtZT1cIm14X0xvZ2luX3N1Ym1pdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3N1Ym1pdEJ1dHRvbkNoaWxkfVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJteF9BdXRoQm9keV9idXR0b24tY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8QWNjZXNzaWJsZUJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm14X0F1dGhCb2R5X3NpZ24taW4taW5zdGVhZC1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtpbmQ9XCJsaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoZTogQnV0dG9uRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkxvZ2luQ2xpY2soKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtfdChcImF1dGh8c2lnbl9pbl9pbnN0ZWFkXCIpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9BY2Nlc3NpYmxlQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2ZpZWxkc2V0PlxuICAgICAgICAgICAgPC9mb3JtPlxuICAgICAgICA8Lz5cbiAgICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLGdCQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFDLHNCQUFBLENBQUFKLE9BQUE7QUFDQSxJQUFBSyxhQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxRQUFBLEdBQUFGLHNCQUFBLENBQUFKLE9BQUE7QUFFQSxJQUFBTyxpQkFBQSxHQUFBSCxzQkFBQSxDQUFBSixPQUFBO0FBQXlGLFNBQUFRLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLENBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFWLHdCQUFBVSxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElB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