@stokr/components-library 2.3.41-beta.2 → 2.3.41-beta.21

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.
@@ -24,7 +24,7 @@ var Chip = function Chip(_ref) {
24
24
  isActive: isActive
25
25
  }, props), /*#__PURE__*/_react.default.createElement(_ChipStyles.ChipText, null, children), tooltip && /*#__PURE__*/_react.default.createElement(_InfoIcon.default, {
26
26
  title: tooltip,
27
- position: "right",
27
+ position: "top",
28
28
  noIcon: true,
29
29
  noMarginLeft: true,
30
30
  noMarginRight: true
@@ -36,7 +36,7 @@ exports.Title = Title;
36
36
  var Items = _styledComponents.default.ul.withConfig({
37
37
  displayName: "FooterMenustyles__Items",
38
38
  componentId: "sc-40ddqf-4"
39
- })(["display:block;list-style:none;padding:0 24px;padding-bottom:24px;@media screen and (min-width:992px){padding:0;margin-top:22px;margin:0 -8px;width:224px;", "}@media screen and (max-width:992px){padding-top:15px;padding-left:0;padding-bottom:0;}"], function (props) {
39
+ })(["display:flex;flex-wrap:wrap;justify-content:center;list-style:none;padding:0 24px;padding-bottom:24px;@media screen and (min-width:768px){justify-content:flex-start;}@media screen and (min-width:992px){display:block;flex-wrap:unset;justify-content:unset;padding:0;margin-top:22px;margin:0 -8px;width:224px;", "}@media screen and (max-width:992px){padding-top:15px;padding-left:0;padding-bottom:0;}"], function (props) {
40
40
  return props.social && "\n margin-top: 14px;\n ";
41
41
  });
42
42
  exports.Items = Items;
@@ -15,6 +15,7 @@ var _Input = _interopRequireDefault(require("../Input/Input"));
15
15
  var _Button = _interopRequireDefault(require("../Button/Button.styles"));
16
16
  var _Grid = require("../Grid/Grid.styles");
17
17
  var _ComponentWrapper = _interopRequireDefault(require("../ComponentWrapper/ComponentWrapper.styles"));
18
+ var _globalVariables = require("../../constants/globalVariables");
18
19
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
20
  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); }
20
21
  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; }
@@ -46,7 +47,7 @@ var ForgotPasswordModal = /*#__PURE__*/function (_PureComponent) {
46
47
  email: ''
47
48
  });
48
49
  _defineProperty(_assertThisInitialized(_this), "validationSchema", Yup.object().shape({
49
- email: Yup.string().email("Oops, that's not a valid address").required('Oops, this can‘t be blank')
50
+ email: Yup.string().matches(_globalVariables.emailRegex, "Oops, that's not a valid address").required('Oops, this can‘t be blank')
50
51
  }));
51
52
  return _this;
52
53
  }
@@ -61,7 +62,15 @@ var ForgotPasswordModal = /*#__PURE__*/function (_PureComponent) {
61
62
  popupError = _this$props.popupError,
62
63
  popupSuccess = _this$props.popupSuccess,
63
64
  isActionLoading = _this$props.isActionLoading,
64
- background = _this$props.background;
65
+ background = _this$props.background,
66
+ isResettingExpiredToken = _this$props.isResettingExpiredToken;
67
+
68
+ // since the logic for handling expired tokens requires a modal which happens to be exactly
69
+ // the same as the Forgot Password modal (except for the content of 3 text elements),
70
+ // instead of creating a new dedicated modal, we just handle the text diffs here.
71
+ var headerTextContent = isResettingExpiredToken ? 'This Invite Link Has Expired' : 'Reset Your password';
72
+ var mainTextContent = isResettingExpiredToken ? 'To continue, request a new one using your email, and access will be sent shortly.' : 'No hints. No nudges. Just a nice, easy reset link direct to your inbox.';
73
+ var footerTextContent = isResettingExpiredToken ? 'Already have an account? ' : 'Remember your password? ';
65
74
  return /*#__PURE__*/_react.default.createElement(_Modal.Modal, {
66
75
  isOpen: isModalOpen,
67
76
  onClose: onModalClose,
@@ -70,9 +79,9 @@ var ForgotPasswordModal = /*#__PURE__*/function (_PureComponent) {
70
79
  part: 8
71
80
  }, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, {
72
81
  modalTop: true
73
- }, /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("h3", null, "Reset Your password"), /*#__PURE__*/_react.default.createElement("p", null, "No hints. No nudges. Just a nice, easy reset link direct to your inbox."))), /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, {
82
+ }, /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("h3", null, headerTextContent), /*#__PURE__*/_react.default.createElement("p", null, mainTextContent))), /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, {
74
83
  modalBot: true
75
- }, /*#__PURE__*/_react.default.createElement(_Modal.ModalLinkWrap, null, 'Remember your password? ', /*#__PURE__*/_react.default.createElement(_Modal.ModalLink, {
84
+ }, /*#__PURE__*/_react.default.createElement(_Modal.ModalLinkWrap, null, footerTextContent, /*#__PURE__*/_react.default.createElement(_Modal.ModalLink, {
76
85
  to: "#",
77
86
  as: "button",
78
87
  onClick: onModalSwitch
@@ -20,6 +20,7 @@ var _Button = _interopRequireDefault(require("../Button/Button.styles"));
20
20
  var _TextLink = _interopRequireDefault(require("../TextLink/TextLink.styles"));
21
21
  var _Grid = require("../Grid/Grid.styles");
22
22
  var _ComponentWrapper = _interopRequireDefault(require("../ComponentWrapper/ComponentWrapper.styles"));
23
+ var _globalVariables = require("../../constants/globalVariables");
23
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); }
24
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; }
25
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -46,8 +47,7 @@ var LoginModal = function LoginModal(props) {
46
47
  }
47
48
  }, []);
48
49
  var validationSchema = Yup.object().shape({
49
- email: Yup.string().email("Oops, that's not a valid address").required('Oops, this can‘t be blank'),
50
- password: Yup.string().required('Oops, this can‘t be blank')
50
+ email: Yup.string().matches(_globalVariables.emailRegex, "Oops, that's not a valid address").required('Oops, this can‘t be blank')
51
51
  });
52
52
  var popupError = props.popupError,
53
53
  isModalOpen = props.isModalOpen,
@@ -4,7 +4,7 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.emailRegex = exports.default = exports.RegisterModal = void 0;
7
+ exports.default = exports.RegisterModal = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _reactRouterDom = require("react-router-dom");
@@ -24,6 +24,7 @@ var _Button = _interopRequireDefault(require("../Button/Button.styles"));
24
24
  var _Grid = require("../Grid/Grid.styles");
25
25
  var _ComponentWrapper = _interopRequireDefault(require("../ComponentWrapper/ComponentWrapper.styles"));
26
26
  var _fetchDataPublic = _interopRequireDefault(require("../../api/fetchDataPublic"));
27
+ var _globalVariables = require("../../constants/globalVariables");
27
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
28
29
  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); }
29
30
  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; }
@@ -45,8 +46,6 @@ var TermsStyled = _styledComponents.styled.span.withConfig({
45
46
  displayName: "RegisterModal__TermsStyled",
46
47
  componentId: "sc-18f337m-0"
47
48
  })(["cursor:pointer;font-size:12px;text-decoration:underline;&:hover{opacity:0.7;}"]);
48
- var emailRegex = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i;
49
- exports.emailRegex = emailRegex;
50
49
  var RegisterModal = function RegisterModal(props) {
51
50
  var _useState = (0, _react.useState)(null),
52
51
  _useState2 = _slicedToArray(_useState, 2),
@@ -133,7 +132,7 @@ var RegisterModal = function RegisterModal(props) {
133
132
  };
134
133
  }();
135
134
  var validationSchema = Yup.object().shape({
136
- email: Yup.string().email("Oops, that's not a valid address").required('Oops, this can‘t be blank'),
135
+ email: Yup.string().matches(_globalVariables.emailRegex, "Oops, that's not a valid address").required('Oops, this can‘t be blank'),
137
136
  password: Yup.string().required('Oops, this can‘t be blank'),
138
137
  terms: Yup.bool().oneOf([true], 'Please agree to continue'),
139
138
  newsletter: Yup.bool() // .oneOf([true], 'Newsletter accept is required'),
@@ -0,0 +1,223 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _formik = require("formik");
11
+ var Yup = _interopRequireWildcard(require("yup"));
12
+ var _Modal = require("../Modal/Modal");
13
+ var _Form = _interopRequireWildcard(require("../Form/Form"));
14
+ var _Text = _interopRequireDefault(require("../Text/Text.styles"));
15
+ var _Button = _interopRequireDefault(require("../Button/Button.styles"));
16
+ var _Grid = require("../Grid/Grid.styles");
17
+ var _ComponentWrapper = _interopRequireDefault(require("../ComponentWrapper/ComponentWrapper.styles"));
18
+ var _Input = _interopRequireDefault(require("../Input/Input"));
19
+ var _Auth = _interopRequireDefault(require("../../context/Auth"));
20
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+ 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); }
22
+ 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; }
23
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
24
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
25
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
26
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
27
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
28
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
29
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
30
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
31
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
32
+ var ResendConfirmationCodeModal = function ResendConfirmationCodeModal(_ref) {
33
+ var isModalOpen = _ref.isModalOpen,
34
+ onModalClose = _ref.onModalClose,
35
+ onModalSwitch = _ref.onModalSwitch,
36
+ onTokenRefreshed = _ref.onTokenRefreshed,
37
+ _ref$popupError = _ref.popupError,
38
+ popupError = _ref$popupError === void 0 ? {
39
+ popup: null,
40
+ message: ''
41
+ } : _ref$popupError,
42
+ _ref$isActionLoading = _ref.isActionLoading,
43
+ isActionLoading = _ref$isActionLoading === void 0 ? false : _ref$isActionLoading;
44
+ var _useState = (0, _react.useState)(false),
45
+ _useState2 = _slicedToArray(_useState, 2),
46
+ isSubmitting = _useState2[0],
47
+ setIsSubmitting = _useState2[1];
48
+ var _useState3 = (0, _react.useState)(false),
49
+ _useState4 = _slicedToArray(_useState3, 2),
50
+ activationSuccess = _useState4[0],
51
+ setActivationSuccess = _useState4[1];
52
+ var emailValidationSchema = Yup.object().shape({
53
+ 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')
54
+ });
55
+ var handleResendActivationMail = /*#__PURE__*/function () {
56
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(values, formikActions) {
57
+ var response, urlObj, params, newOobCode, currentUrl;
58
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
59
+ while (1) switch (_context.prev = _context.next) {
60
+ case 0:
61
+ _context.prev = 0;
62
+ setIsSubmitting(true);
63
+ _context.next = 4;
64
+ return _Auth.default.resendActivationEmail(values.email);
65
+ case 4:
66
+ response = _context.sent;
67
+ // new oobCode is in response URL
68
+ if (response) {
69
+ urlObj = new URL(response);
70
+ params = new URLSearchParams(urlObj.search);
71
+ newOobCode = params.get('oobCode');
72
+ if (newOobCode) {
73
+ // update the URL with the new oobCode without reloading the page
74
+ currentUrl = new URL(window.location.href);
75
+ currentUrl.searchParams.set('oobCode', newOobCode);
76
+ window.history.replaceState({}, '', currentUrl.toString());
77
+
78
+ // show success state
79
+ setActivationSuccess(true);
80
+
81
+ // notify parent component that token has been refreshed
82
+ if (onTokenRefreshed) {
83
+ setTimeout(function () {
84
+ onTokenRefreshed();
85
+ }, 2000);
86
+ }
87
+
88
+ // small delay for UI sakes
89
+ setTimeout(function () {
90
+ setIsSubmitting(false);
91
+ }, 1000);
92
+ } else {
93
+ console.error('New oobCode not found in response');
94
+ setIsSubmitting(false);
95
+ }
96
+ } else {
97
+ console.error('Unexpected response format', response);
98
+ setIsSubmitting(false);
99
+ }
100
+ return _context.abrupt("return", response);
101
+ case 9:
102
+ _context.prev = 9;
103
+ _context.t0 = _context["catch"](0);
104
+ console.error('There was an error while resending the activation email.', _context.t0);
105
+ setIsSubmitting(false);
106
+ formikActions.setSubmitting(false);
107
+ case 14:
108
+ case "end":
109
+ return _context.stop();
110
+ }
111
+ }, _callee, null, [[0, 9]]);
112
+ }));
113
+ return function handleResendActivationMail(_x, _x2) {
114
+ return _ref2.apply(this, arguments);
115
+ };
116
+ }();
117
+ var renderSuccessNotification = function renderSuccessNotification() {
118
+ return /*#__PURE__*/_react.default.createElement(_Modal.Modal, {
119
+ isOpen: true,
120
+ onClose: onModalClose
121
+ }, /*#__PURE__*/_react.default.createElement(_Grid.Row, null, /*#__PURE__*/_react.default.createElement(_Grid.Column, {
122
+ part: 16
123
+ }, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, null, /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("h3", null, "NEW LINK GENERATED"), /*#__PURE__*/_react.default.createElement("p", null, "Your new activation link has been processed successfully. You can now reset your password."))))));
124
+ };
125
+
126
+ // show the success message briefly then notify parent
127
+ (0, _react.useEffect)(function () {
128
+ if (activationSuccess) {
129
+ setTimeout(function () {
130
+ setActivationSuccess(false);
131
+ }, 2000);
132
+ }
133
+ }, [activationSuccess]);
134
+ if (!isModalOpen) {
135
+ return null;
136
+ }
137
+ if (activationSuccess) {
138
+ return renderSuccessNotification();
139
+ }
140
+ return /*#__PURE__*/_react.default.createElement(_Modal.Modal, {
141
+ isOpen: true,
142
+ onClose: onModalClose
143
+ }, /*#__PURE__*/_react.default.createElement(_Grid.Row, null, /*#__PURE__*/_react.default.createElement(_Grid.Column, {
144
+ part: 8
145
+ }, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, {
146
+ modalTop: true
147
+ }, /*#__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, {
148
+ modalBot: true
149
+ }, /*#__PURE__*/_react.default.createElement(_Modal.ModalLinkWrap, null, 'Already have an account?', /*#__PURE__*/_react.default.createElement(_Modal.ModalLink, {
150
+ to: "/login",
151
+ as: "button",
152
+ onClick: onModalSwitch
153
+ }, "Log in")))), /*#__PURE__*/_react.default.createElement(_Grid.Column, {
154
+ part: 8
155
+ }, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, null, /*#__PURE__*/_react.default.createElement(_formik.Formik, {
156
+ initialValues: {
157
+ email: ''
158
+ },
159
+ validationSchema: emailValidationSchema,
160
+ onSubmit: function onSubmit(values, formikActions) {
161
+ handleResendActivationMail(values, formikActions);
162
+ }
163
+ }, function (_ref3) {
164
+ var values = _ref3.values,
165
+ errors = _ref3.errors,
166
+ touched = _ref3.touched,
167
+ handleBlur = _ref3.handleBlur,
168
+ setFieldValue = _ref3.setFieldValue,
169
+ setFieldTouched = _ref3.setFieldTouched,
170
+ isSubmitting = _ref3.isSubmitting;
171
+ var onChangeWithTouch = function onChangeWithTouch(e) {
172
+ var field = e.target;
173
+ setFieldValue(field.name, field.value, false);
174
+ setFieldTouched(field.name);
175
+ };
176
+ 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, {
177
+ noPadding: true
178
+ }, /*#__PURE__*/_react.default.createElement(_Form.FormField, null, /*#__PURE__*/_react.default.createElement(_Input.default, {
179
+ id: "resend-activation-email",
180
+ name: "email",
181
+ type: "email",
182
+ label: "Email",
183
+ value: values.email,
184
+ onChange: onChangeWithTouch,
185
+ onBlur: handleBlur,
186
+ error: !!errors.email && touched.email,
187
+ touched: !!touched.email,
188
+ info: "Please provide your email address so you can receive the new activation email."
189
+ }), /*#__PURE__*/_react.default.createElement(_Form.FormError, {
190
+ show: errors.email && touched.email
191
+ }, errors.email))), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
192
+ noPaddingBottom: true,
193
+ noPaddingHorizontal: true
194
+ }, /*#__PURE__*/_react.default.createElement(_Button.default, {
195
+ type: "submit",
196
+ fluid: true,
197
+ disabled: isSubmitting || isActionLoading === 'resetPassword'
198
+ }, isSubmitting || isActionLoading === 'resetPassword' ? 'Sending' : 'Resend link')), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
199
+ paddingVeticalHalf: true,
200
+ noPaddingHorizontal: true
201
+ }, /*#__PURE__*/_react.default.createElement(_Form.FormError, {
202
+ show: popupError.popup === 'resetPassword'
203
+ }, popupError.message)));
204
+ })))));
205
+ };
206
+ ResendConfirmationCodeModal.propTypes = {
207
+ isModalOpen: _propTypes.default.bool.isRequired,
208
+ onModalClose: _propTypes.default.func.isRequired,
209
+ onModalSwitch: _propTypes.default.func.isRequired,
210
+ onTokenRefreshed: _propTypes.default.func,
211
+ popupError: _propTypes.default.object,
212
+ isActionLoading: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string])
213
+ };
214
+ ResendConfirmationCodeModal.defaultProps = {
215
+ popupError: {
216
+ popup: null,
217
+ message: ''
218
+ },
219
+ isActionLoading: false,
220
+ onTokenRefreshed: null
221
+ };
222
+ var _default = ResendConfirmationCodeModal;
223
+ exports.default = _default;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.ResendConfirmationCodeModalDefault = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _ComponentWrapper = require("../ComponentWrapper/ComponentWrapper.styles");
9
+ var _global = _interopRequireDefault(require("../../styles/global"));
10
+ var _ResendConfirmationCodeModal = _interopRequireDefault(require("./ResendConfirmationCodeModal"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ var _default = {
13
+ title: 'Components Library/Resend Confirmation Code Modal',
14
+ component: _ResendConfirmationCodeModal.default,
15
+ argTypes: {
16
+ isModalOpen: {
17
+ type: 'boolean',
18
+ defaultValue: true
19
+ },
20
+ onModalClose: {
21
+ type: 'function',
22
+ action: 'onModalClose',
23
+ required: true
24
+ },
25
+ onFormSend: {
26
+ type: 'function',
27
+ action: 'onFormSend',
28
+ required: true
29
+ },
30
+ onModalSwitch: {
31
+ type: 'function',
32
+ action: 'onModalSwitch',
33
+ required: true
34
+ }
35
+ }
36
+ };
37
+ exports.default = _default;
38
+ var Template = function Template(args) {
39
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_global.default, null), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.ComponentWrapper, null, /*#__PURE__*/_react.default.createElement(_ResendConfirmationCodeModal.default, args)));
40
+ };
41
+ var ResendConfirmationCodeModalDefault = Template.bind({});
42
+ exports.ResendConfirmationCodeModalDefault = ResendConfirmationCodeModalDefault;
43
+ ResendConfirmationCodeModalDefault.args = {
44
+ isModalOpen: true,
45
+ onModalClose: function onModalClose() {},
46
+ onFormSend: function onFormSend() {},
47
+ onModalSwitch: function onModalSwitch() {}
48
+ };