UNPKG

4.56 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _regenerator = require('babel-runtime/regenerator');
8
9var _regenerator2 = _interopRequireDefault(_regenerator);
10
11var _stringify = require('babel-runtime/core-js/json/stringify');
12
13var _stringify2 = _interopRequireDefault(_stringify);
14
15var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator');
16
17var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
18
19var _extends2 = require('babel-runtime/helpers/extends');
20
21var _extends3 = _interopRequireDefault(_extends2);
22
23var _react = require('react');
24
25var _react2 = _interopRequireDefault(_react);
26
27var _formik = require('formik');
28
29var _recompose = require('recompose');
30
31var _Form = require('./Form');
32
33var _Form2 = _interopRequireDefault(_Form);
34
35var _yup = require('yup');
36
37var Yup = _interopRequireWildcard(_yup);
38
39function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
40
41function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
42
43var SendPasswordResetEmailForm = function SendPasswordResetEmailForm(props) {
44 var labels = props.labels,
45 submitted = props.submitted,
46 values = props.values;
47
48 return _react2.default.createElement(
49 _Form2.default,
50 (0, _extends3.default)({}, props),
51 function (_ref) {
52 var renderTextInputSocket = _ref.renderTextInputSocket,
53 renderSubmitButton = _ref.renderSubmitButton;
54 return _react2.default.createElement(
55 _react.Fragment,
56 null,
57 !submitted ? _react2.default.createElement(
58 _react.Fragment,
59 null,
60 renderTextInputSocket({ label: labels.email, type: 'email' }),
61 renderSubmitButton({ label: labels.submit })
62 ) : _react2.default.createElement(
63 _react.Fragment,
64 null,
65 labels.checkInbox,
66 ' ',
67 values.email
68 )
69 );
70 }
71 );
72};
73
74SendPasswordResetEmailForm.propTypes = {
75 //toggleModal: PropTypes.func.isRequired,
76};
77
78var enhance = (0, _recompose.compose)((0, _recompose.defaultProps)({
79 handleSendPasswordResetEmail: function handleSendPasswordResetEmail() {
80 return console.log('handleSendPasswordResetEmail');
81 },
82 labels: {
83 email: 'enter your email',
84 submit: 'submit'
85 }
86}), (0, _recompose.withState)('submitted', 'setSubmitted', false), (0, _recompose.withProps)({
87 email: ''
88}), (0, _formik.withFormik)({
89 mapPropsToValues: function mapPropsToValues(_ref2) {
90 var email = _ref2.email;
91 return {
92 email: email
93 };
94 },
95 validationSchema: function validationSchema(_ref3) {
96 var labels = _ref3.labels;
97
98 return Yup.object().shape({
99 email: Yup.string().email(labels.emailInvalid).required(labels.emailRequired)
100 });
101 },
102 handleSubmit: function () {
103 var _ref5 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(values, _ref4) {
104 var _ref4$props = _ref4.props,
105 handleSendPasswordResetEmail = _ref4$props.handleSendPasswordResetEmail,
106 setSubmitted = _ref4$props.setSubmitted,
107 setSubmitting = _ref4.setSubmitting,
108 setFieldError = _ref4.setFieldError;
109 return _regenerator2.default.wrap(function _callee$(_context) {
110 while (1) {
111 switch (_context.prev = _context.next) {
112 case 0:
113 _context.prev = 0;
114
115 console.log('Submit', (0, _stringify2.default)(values));
116 _context.next = 4;
117 return handleSendPasswordResetEmail(values);
118
119 case 4:
120 setSubmitted(true);
121 _context.next = 12;
122 break;
123
124 case 7:
125 _context.prev = 7;
126 _context.t0 = _context['catch'](0);
127
128 console.error(_context.t0);
129 _context.next = 12;
130 return setFieldError('firebase', _context.t0.message);
131
132 case 12:
133 _context.next = 14;
134 return setSubmitting(false);
135
136 case 14:
137 case 'end':
138 return _context.stop();
139 }
140 }
141 }, _callee, undefined, [[0, 7]]);
142 }));
143
144 function handleSubmit(_x, _x2) {
145 return _ref5.apply(this, arguments);
146 }
147
148 return handleSubmit;
149 }()
150}));
151
152exports.default = enhance(SendPasswordResetEmailForm);
\No newline at end of file