@stokr/components-library 2.3.41-beta.4 → 2.3.41-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -18,6 +18,8 @@ var _Grid = require("../Grid/Grid.styles");
|
|
|
18
18
|
var _ComponentWrapper = _interopRequireDefault(require("../ComponentWrapper/ComponentWrapper.styles"));
|
|
19
19
|
var _AuthContext = require("../../context/AuthContext");
|
|
20
20
|
var _reactRouterDom = require("react-router-dom");
|
|
21
|
+
var _Input = _interopRequireDefault(require("components/Input/Input"));
|
|
22
|
+
var _fetchData = _interopRequireDefault(require("api/fetchData"));
|
|
21
23
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
22
24
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
25
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -56,19 +58,23 @@ var ResetPasswordModal = function ResetPasswordModal(_ref) {
|
|
|
56
58
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
57
59
|
isCheckingToken = _useState4[0],
|
|
58
60
|
setIsCheckingToken = _useState4[1];
|
|
59
|
-
var _useState5 = (0, _react.useState)(null),
|
|
60
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
61
|
-
tokenError = _useState6[0],
|
|
62
|
-
setTokenError = _useState6[1];
|
|
63
61
|
var location = (0, _reactRouterDom.useLocation)();
|
|
64
62
|
var initialValues = {
|
|
65
63
|
password: '',
|
|
66
|
-
confirmPassword: ''
|
|
64
|
+
confirmPassword: '',
|
|
65
|
+
email: ''
|
|
67
66
|
};
|
|
67
|
+
|
|
68
|
+
// main form validation schema (password reset)
|
|
68
69
|
var validationSchema = Yup.object().shape({
|
|
69
70
|
password: Yup.string().required("Oops, this can't be blank"),
|
|
70
71
|
confirmPassword: Yup.string().required("Oops, this can't be blank")
|
|
71
72
|
});
|
|
73
|
+
|
|
74
|
+
// email-only validation schema (for expired token form)
|
|
75
|
+
var emailValidationSchema = Yup.object().shape({
|
|
76
|
+
email: Yup.string().required("Oops, this can't be blank").matches(/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/, 'Please enter a valid email address')
|
|
77
|
+
});
|
|
72
78
|
var checkTokenExpiration = /*#__PURE__*/function () {
|
|
73
79
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
74
80
|
var search, query, oobCode, result;
|
|
@@ -76,62 +82,87 @@ var ResetPasswordModal = function ResetPasswordModal(_ref) {
|
|
|
76
82
|
while (1) switch (_context.prev = _context.next) {
|
|
77
83
|
case 0:
|
|
78
84
|
if (location) {
|
|
79
|
-
_context.next =
|
|
85
|
+
_context.next = 5;
|
|
80
86
|
break;
|
|
81
87
|
}
|
|
82
88
|
console.log('Location null ?! ');
|
|
83
89
|
setIsTokenExpired(true);
|
|
84
90
|
setIsCheckingToken(false);
|
|
85
|
-
setTokenError({
|
|
86
|
-
message: 'No location information available'
|
|
87
|
-
});
|
|
88
91
|
return _context.abrupt("return");
|
|
89
|
-
case
|
|
90
|
-
_context.prev =
|
|
92
|
+
case 5:
|
|
93
|
+
_context.prev = 5;
|
|
91
94
|
search = location.search;
|
|
92
95
|
query = new URLSearchParams(search);
|
|
93
96
|
oobCode = query.get('oobCode');
|
|
94
97
|
console.log('oobCode from URL params: ', oobCode);
|
|
95
98
|
if (oobCode) {
|
|
96
|
-
_context.next =
|
|
99
|
+
_context.next = 15;
|
|
97
100
|
break;
|
|
98
101
|
}
|
|
99
102
|
console.log('oobCode was not found at all. value: ', oobCode);
|
|
100
103
|
setIsTokenExpired(true);
|
|
101
104
|
setIsCheckingToken(false);
|
|
102
|
-
setTokenError({
|
|
103
|
-
message: 'No activation code found in the URL'
|
|
104
|
-
});
|
|
105
105
|
return _context.abrupt("return");
|
|
106
|
-
case
|
|
107
|
-
_context.next =
|
|
106
|
+
case 15:
|
|
107
|
+
_context.next = 17;
|
|
108
108
|
return authContext.checkActivationLinkExpired(oobCode);
|
|
109
|
-
case
|
|
109
|
+
case 17:
|
|
110
110
|
result = _context.sent;
|
|
111
|
-
console.log('Token check result:', result); // Debug log
|
|
112
|
-
|
|
113
111
|
setIsTokenExpired(result.expired);
|
|
114
|
-
setTokenError(result.error);
|
|
115
112
|
setIsCheckingToken(false);
|
|
116
|
-
_context.next =
|
|
113
|
+
_context.next = 27;
|
|
117
114
|
break;
|
|
118
|
-
case
|
|
119
|
-
_context.prev =
|
|
120
|
-
_context.t0 = _context["catch"](
|
|
115
|
+
case 22:
|
|
116
|
+
_context.prev = 22;
|
|
117
|
+
_context.t0 = _context["catch"](5);
|
|
121
118
|
console.error('Error checking token expiration:', _context.t0);
|
|
122
119
|
setIsTokenExpired(true);
|
|
123
|
-
setTokenError(_context.t0);
|
|
124
120
|
setIsCheckingToken(false);
|
|
125
|
-
case
|
|
121
|
+
case 27:
|
|
126
122
|
case "end":
|
|
127
123
|
return _context.stop();
|
|
128
124
|
}
|
|
129
|
-
}, _callee, null, [[
|
|
125
|
+
}, _callee, null, [[5, 22]]);
|
|
130
126
|
}));
|
|
131
127
|
return function checkTokenExpiration() {
|
|
132
128
|
return _ref2.apply(this, arguments);
|
|
133
129
|
};
|
|
134
130
|
}();
|
|
131
|
+
var resendActivationEmail = /*#__PURE__*/function () {
|
|
132
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(values) {
|
|
133
|
+
var response;
|
|
134
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
135
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
136
|
+
case 0:
|
|
137
|
+
_context2.prev = 0;
|
|
138
|
+
_context2.next = 3;
|
|
139
|
+
return (0, _fetchData.default)('auth/resend-activation-email', {
|
|
140
|
+
method: 'POST',
|
|
141
|
+
headers: {
|
|
142
|
+
'Content-Type': 'application/json'
|
|
143
|
+
},
|
|
144
|
+
body: JSON.stringify({
|
|
145
|
+
email: values.email
|
|
146
|
+
})
|
|
147
|
+
});
|
|
148
|
+
case 3:
|
|
149
|
+
response = _context2.sent;
|
|
150
|
+
console.log('response from resend: ', response);
|
|
151
|
+
return _context2.abrupt("return", response);
|
|
152
|
+
case 8:
|
|
153
|
+
_context2.prev = 8;
|
|
154
|
+
_context2.t0 = _context2["catch"](0);
|
|
155
|
+
console.error('There was an error while resending the activation email.', _context2.t0);
|
|
156
|
+
case 11:
|
|
157
|
+
case "end":
|
|
158
|
+
return _context2.stop();
|
|
159
|
+
}
|
|
160
|
+
}, _callee2, null, [[0, 8]]);
|
|
161
|
+
}));
|
|
162
|
+
return function resendActivationEmail(_x) {
|
|
163
|
+
return _ref3.apply(this, arguments);
|
|
164
|
+
};
|
|
165
|
+
}();
|
|
135
166
|
var renderExpiredTokenContent = function renderExpiredTokenContent() {
|
|
136
167
|
return /*#__PURE__*/_react.default.createElement(_Modal.Modal, {
|
|
137
168
|
isOpen: true,
|
|
@@ -140,7 +171,7 @@ var ResetPasswordModal = function ResetPasswordModal(_ref) {
|
|
|
140
171
|
part: 8
|
|
141
172
|
}, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, {
|
|
142
173
|
modalTop: true
|
|
143
|
-
}, /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("h3", null, "LINK EXPIRED"), /*#__PURE__*/_react.default.createElement("p", null, "
|
|
174
|
+
}, /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("h3", null, "THIS INVITE LINK HAS EXPIRED"), /*#__PURE__*/_react.default.createElement("p", null, "To continue, request a new one using your email, and access will be sent shortly."))), /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, {
|
|
144
175
|
modalBot: true
|
|
145
176
|
}, /*#__PURE__*/_react.default.createElement(_Modal.ModalLinkWrap, null, 'Need to reset your password? ', /*#__PURE__*/_react.default.createElement(_Modal.ModalLink, {
|
|
146
177
|
to: "/forgot-password",
|
|
@@ -148,14 +179,54 @@ var ResetPasswordModal = function ResetPasswordModal(_ref) {
|
|
|
148
179
|
onClick: onModalSwitch
|
|
149
180
|
}, "Request a new link")))), /*#__PURE__*/_react.default.createElement(_Grid.Column, {
|
|
150
181
|
part: 8
|
|
151
|
-
}, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, null, /*#__PURE__*/_react.default.createElement(
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
182
|
+
}, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, null, /*#__PURE__*/_react.default.createElement(_formik.Formik, {
|
|
183
|
+
initialValues: {
|
|
184
|
+
email: ''
|
|
185
|
+
},
|
|
186
|
+
validationSchema: emailValidationSchema,
|
|
187
|
+
onSubmit: function onSubmit(values) {
|
|
188
|
+
resendActivationEmail(values);
|
|
189
|
+
}
|
|
190
|
+
}, function (_ref4) {
|
|
191
|
+
var values = _ref4.values,
|
|
192
|
+
errors = _ref4.errors,
|
|
193
|
+
touched = _ref4.touched,
|
|
194
|
+
handleBlur = _ref4.handleBlur,
|
|
195
|
+
setFieldValue = _ref4.setFieldValue,
|
|
196
|
+
setFieldTouched = _ref4.setFieldTouched;
|
|
197
|
+
var onChangeWithTouch = function onChangeWithTouch(e) {
|
|
198
|
+
var field = e.target;
|
|
199
|
+
setFieldValue(field.name, field.value, false);
|
|
200
|
+
setFieldTouched(field.name);
|
|
201
|
+
};
|
|
202
|
+
return /*#__PURE__*/_react.default.createElement(_Form.default, null, /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
|
|
203
|
+
noPadding: true
|
|
204
|
+
}, /*#__PURE__*/_react.default.createElement(_Form.FormField, null, /*#__PURE__*/_react.default.createElement(_Input.default, {
|
|
205
|
+
id: "resend-activation-email",
|
|
206
|
+
name: "email",
|
|
207
|
+
type: "email",
|
|
208
|
+
label: "Email",
|
|
209
|
+
value: values.email,
|
|
210
|
+
onChange: onChangeWithTouch,
|
|
211
|
+
onBlur: handleBlur,
|
|
212
|
+
error: !!errors.email && touched.email,
|
|
213
|
+
touched: !!touched.email,
|
|
214
|
+
info: "Please provide your email so you can receive the new activation email."
|
|
215
|
+
}), /*#__PURE__*/_react.default.createElement(_Form.FormError, {
|
|
216
|
+
show: errors.email && touched.email
|
|
217
|
+
}, errors.email))), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
|
|
218
|
+
noPaddingBottom: true,
|
|
219
|
+
noPaddingHorizontal: true
|
|
220
|
+
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
221
|
+
type: "submit",
|
|
222
|
+
fluid: true
|
|
223
|
+
}, isActionLoading === 'resetPassword' ? 'Sending' : 'Resend link')), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
|
|
224
|
+
paddingVeticalHalf: true,
|
|
225
|
+
noPaddingHorizontal: true
|
|
226
|
+
}, /*#__PURE__*/_react.default.createElement(_Form.FormError, {
|
|
227
|
+
show: popupError.popup === 'resetPassword'
|
|
228
|
+
}, popupError.message)));
|
|
229
|
+
})))));
|
|
159
230
|
};
|
|
160
231
|
var renderLoadingContent = function renderLoadingContent() {
|
|
161
232
|
return /*#__PURE__*/_react.default.createElement(_Modal.Modal, {
|
|
@@ -209,13 +280,13 @@ var ResetPasswordModal = function ResetPasswordModal(_ref) {
|
|
|
209
280
|
oobCode: oobCode
|
|
210
281
|
}));
|
|
211
282
|
}
|
|
212
|
-
}, function (
|
|
213
|
-
var values =
|
|
214
|
-
errors =
|
|
215
|
-
touched =
|
|
216
|
-
handleBlur =
|
|
217
|
-
setFieldValue =
|
|
218
|
-
setFieldTouched =
|
|
283
|
+
}, function (_ref5) {
|
|
284
|
+
var values = _ref5.values,
|
|
285
|
+
errors = _ref5.errors,
|
|
286
|
+
touched = _ref5.touched,
|
|
287
|
+
handleBlur = _ref5.handleBlur,
|
|
288
|
+
setFieldValue = _ref5.setFieldValue,
|
|
289
|
+
setFieldTouched = _ref5.setFieldTouched;
|
|
219
290
|
var onChangeWithTouch = function onChangeWithTouch(e) {
|
|
220
291
|
var field = e.target;
|
|
221
292
|
setFieldValue(field.name, field.value, false);
|
|
@@ -235,7 +306,6 @@ var ResetPasswordModal = function ResetPasswordModal(_ref) {
|
|
|
235
306
|
error: !!errors.password,
|
|
236
307
|
touched: !!touched.password,
|
|
237
308
|
info: "For a stronger password, try a mix of lowercase, capitals, numbers and special characters."
|
|
238
|
-
// showStrength
|
|
239
309
|
}), /*#__PURE__*/_react.default.createElement(_Form.FormError, {
|
|
240
310
|
show: errors.password && touched.password
|
|
241
311
|
}, errors.password), /*#__PURE__*/_react.default.createElement(_Form.FormError, {
|