@stokr/components-library 2.1.2-beta.1 β†’ 2.1.2

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.
@@ -42,7 +42,8 @@ var Disable2FA = function Disable2FA(_ref) {
42
42
  onRequiresRecentLoginError = _ref.onRequiresRecentLoginError,
43
43
  props = _objectWithoutProperties(_ref, _excluded);
44
44
  var _useContext = (0, _react.useContext)(_AuthContext.AuthContext),
45
- unenrollUser2FA = _useContext.unenrollUser2FA;
45
+ unenrollUser2FA = _useContext.unenrollUser2FA,
46
+ refreshIdToken = _useContext.refreshIdToken;
46
47
  var _useState = (0, _react.useState)({
47
48
  confirmDisable: false,
48
49
  sucess: false
@@ -52,51 +53,72 @@ var Disable2FA = function Disable2FA(_ref) {
52
53
  setIsModalOpen = _useState2[1];
53
54
  (0, _react.useEffect)(function () {
54
55
  if (showFlow) {
56
+ refreshToken();
55
57
  setIsModalOpen(_objectSpread(_objectSpread({}, isModalOpen), {}, {
56
58
  confirmDisable: true
57
59
  }));
58
60
  }
59
61
  }, [props.showFlow]);
60
- var handleDisableClick = /*#__PURE__*/function () {
62
+ var refreshToken = /*#__PURE__*/function () {
61
63
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
62
64
  return _regeneratorRuntime().wrap(function _callee$(_context) {
63
65
  while (1) switch (_context.prev = _context.next) {
64
66
  case 0:
65
- _context.prev = 0;
66
- _context.next = 3;
67
+ try {
68
+ refreshIdToken();
69
+ } catch (error) {
70
+ console.log('πŸš€ ~ error in refreshToken:', error);
71
+ }
72
+ case 1:
73
+ case "end":
74
+ return _context.stop();
75
+ }
76
+ }, _callee);
77
+ }));
78
+ return function refreshToken() {
79
+ return _ref2.apply(this, arguments);
80
+ };
81
+ }();
82
+ var handleDisableClick = /*#__PURE__*/function () {
83
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
84
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
85
+ while (1) switch (_context2.prev = _context2.next) {
86
+ case 0:
87
+ _context2.prev = 0;
88
+ _context2.next = 3;
67
89
  return unenrollUser2FA();
68
90
  case 3:
69
91
  setIsModalOpen(_objectSpread(_objectSpread({}, isModalOpen), {}, {
70
92
  sucess: true
71
93
  }));
72
- _context.prev = 4;
73
- _context.next = 7;
94
+ _context2.prev = 4;
95
+ _context2.next = 7;
74
96
  return (0, _fetchData.default)('auth/disable-2fa-email');
75
97
  case 7:
76
- _context.next = 12;
98
+ _context2.next = 12;
77
99
  break;
78
100
  case 9:
79
- _context.prev = 9;
80
- _context.t0 = _context["catch"](4);
81
- console.log('πŸš€ ~ error while sending email:', _context.t0);
101
+ _context2.prev = 9;
102
+ _context2.t0 = _context2["catch"](4);
103
+ console.log('πŸš€ ~ error while sending email:', _context2.t0);
82
104
  case 12:
83
- _context.next = 18;
105
+ _context2.next = 18;
84
106
  break;
85
107
  case 14:
86
- _context.prev = 14;
87
- _context.t1 = _context["catch"](0);
88
- console.log('πŸš€ ~ file: disable-2fa-flow.js ~ error:', _context.t1);
89
- if (_context.t1.code === 'auth/requires-recent-login') {
108
+ _context2.prev = 14;
109
+ _context2.t1 = _context2["catch"](0);
110
+ console.log('πŸš€ ~ file: disable-2fa-flow.js ~ error:', _context2.t1);
111
+ if (_context2.t1.code === 'auth/requires-recent-login') {
90
112
  onRequiresRecentLoginError && onRequiresRecentLoginError();
91
113
  }
92
114
  case 18:
93
115
  case "end":
94
- return _context.stop();
116
+ return _context2.stop();
95
117
  }
96
- }, _callee, null, [[0, 14], [4, 9]]);
118
+ }, _callee2, null, [[0, 14], [4, 9]]);
97
119
  }));
98
120
  return function handleDisableClick() {
99
- return _ref2.apply(this, arguments);
121
+ return _ref3.apply(this, arguments);
100
122
  };
101
123
  }();
102
124
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Modal.Modal, {
@@ -37,13 +37,12 @@ var Enable2FAFlow = function Enable2FAFlow(_ref) {
37
37
  onRequiresRecentLoginError = _ref.onRequiresRecentLoginError;
38
38
  var _useContext = (0, _react.useContext)(_AuthContext.AuthContext),
39
39
  user = _useContext.user,
40
- generateTotpSecret = _useContext.generateTotpSecret,
41
- enrollUserToTotp = _useContext.enrollUserToTotp;
40
+ enrollUserToTotp = _useContext.enrollUserToTotp,
41
+ refreshIdToken = _useContext.refreshIdToken;
42
42
  var _useState = (0, _react.useState)(false),
43
43
  _useState2 = _slicedToArray(_useState, 2),
44
44
  showSuccess = _useState2[0],
45
45
  setshowSuccess = _useState2[1];
46
- //const [totpData, settotpData] = useState(totpData)
47
46
  var _useState3 = (0, _react.useState)({
48
47
  popup: undefined,
49
48
  message: undefined
@@ -51,87 +50,92 @@ var Enable2FAFlow = function Enable2FAFlow(_ref) {
51
50
  _useState4 = _slicedToArray(_useState3, 2),
52
51
  popupError = _useState4[0],
53
52
  setpopupError = _useState4[1];
54
-
55
- // useEffect(() => {
56
- // if (user) {
57
- // generateTotpSecret(user)
58
- // .then((data) => {
59
- // settotpData(data)
60
- // return
61
- // })
62
- // .catch((error) => {
63
- // console.log(error)
64
- // if (
65
- // error.code === 'auth/requires-recent-login' ||
66
- // error.code === 'auth/unsupported-first-factor'
67
- // ) {
68
- // onRequiresRecentLoginError && onRequiresRecentLoginError()
69
- // }
70
- // })
71
- // }
72
- // }, [user])
73
-
74
- var onSubmit = /*#__PURE__*/function () {
75
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(data) {
53
+ (0, _react.useEffect)(function () {
54
+ if (user) {
55
+ refreshToken();
56
+ }
57
+ }, [user]);
58
+ var refreshToken = /*#__PURE__*/function () {
59
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
76
60
  return _regeneratorRuntime().wrap(function _callee$(_context) {
77
61
  while (1) switch (_context.prev = _context.next) {
62
+ case 0:
63
+ try {
64
+ refreshIdToken();
65
+ } catch (error) {
66
+ console.log('πŸš€ ~ error in refreshToken:', error);
67
+ }
68
+ case 1:
69
+ case "end":
70
+ return _context.stop();
71
+ }
72
+ }, _callee);
73
+ }));
74
+ return function refreshToken() {
75
+ return _ref2.apply(this, arguments);
76
+ };
77
+ }();
78
+ var onSubmit = /*#__PURE__*/function () {
79
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(data) {
80
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
81
+ while (1) switch (_context2.prev = _context2.next) {
78
82
  case 0:
79
83
  if (!(!user || !data)) {
80
- _context.next = 2;
84
+ _context2.next = 2;
81
85
  break;
82
86
  }
83
- return _context.abrupt("return", console.log('not enough data'));
87
+ return _context2.abrupt("return", console.log('not enough data'));
84
88
  case 2:
85
- _context.prev = 2;
86
- _context.next = 5;
89
+ _context2.prev = 2;
90
+ _context2.next = 5;
87
91
  return enrollUserToTotp(user, totpData.totpSecret, data.otpInput, user.displayName);
88
92
  case 5:
89
93
  setshowSuccess(true);
90
- _context.prev = 6;
91
- _context.next = 9;
94
+ _context2.prev = 6;
95
+ _context2.next = 9;
92
96
  return (0, _fetchData.default)('auth/enable-2fa-email');
93
97
  case 9:
94
- _context.next = 14;
98
+ _context2.next = 14;
95
99
  break;
96
100
  case 11:
97
- _context.prev = 11;
98
- _context.t0 = _context["catch"](6);
99
- console.log('πŸš€ ~ error while sending email:', _context.t0);
101
+ _context2.prev = 11;
102
+ _context2.t0 = _context2["catch"](6);
103
+ console.log('πŸš€ ~ error while sending email:', _context2.t0);
100
104
  case 14:
101
- _context.next = 25;
105
+ _context2.next = 25;
102
106
  break;
103
107
  case 16:
104
- _context.prev = 16;
105
- _context.t1 = _context["catch"](2);
106
- console.log('πŸš€ ~ file: enable-2fa-flow.js:60 ~ error:', _context.t1);
107
- if (!(_context.t1.code === 'auth/invalid-verification-code')) {
108
- _context.next = 24;
108
+ _context2.prev = 16;
109
+ _context2.t1 = _context2["catch"](2);
110
+ console.log('πŸš€ ~ file: enable-2fa-flow.js:60 ~ error:', _context2.t1);
111
+ if (!(_context2.t1.code === 'auth/invalid-verification-code')) {
112
+ _context2.next = 24;
109
113
  break;
110
114
  }
111
115
  setpopupError({
112
116
  popup: 'enter2fa',
113
117
  message: 'That’s not the right 2FA code. Try again'
114
118
  });
115
- return _context.abrupt("return", {
119
+ return _context2.abrupt("return", {
116
120
  otpInput: 'Invalid code'
117
121
  });
118
122
  case 24:
119
- if (_context.t1.code === 'auth/requires-recent-login') {
123
+ if (_context2.t1.code === 'auth/requires-recent-login') {
120
124
  onRequiresRecentLoginError && onRequiresRecentLoginError();
121
125
  } else {
122
126
  setpopupError({
123
127
  popup: 'enter2fa',
124
- message: "".concat(_context.t1 !== null && _context.t1 !== void 0 && _context.t1.message ? _context.t1 === null || _context.t1 === void 0 ? void 0 : _context.t1.message : 'Something went wrong. Try again?')
128
+ message: "".concat(_context2.t1 !== null && _context2.t1 !== void 0 && _context2.t1.message ? _context2.t1 === null || _context2.t1 === void 0 ? void 0 : _context2.t1.message : 'Something went wrong. Try again?')
125
129
  });
126
130
  }
127
131
  case 25:
128
132
  case "end":
129
- return _context.stop();
133
+ return _context2.stop();
130
134
  }
131
- }, _callee, null, [[2, 16], [6, 11]]);
135
+ }, _callee2, null, [[2, 16], [6, 11]]);
132
136
  }));
133
137
  return function onSubmit(_x) {
134
- return _ref2.apply(this, arguments);
138
+ return _ref3.apply(this, arguments);
135
139
  };
136
140
  }();
137
141
  var onBackButtonClick = function onBackButtonClick(stepController, prevStepIndex) {
@@ -97,31 +97,25 @@ var Main2FAFlow = function Main2FAFlow(_ref) {
97
97
  return _regeneratorRuntime().wrap(function _callee$(_context) {
98
98
  while (1) switch (_context.prev = _context.next) {
99
99
  case 0:
100
- if (!user) {
101
- _context.next = 12;
102
- break;
103
- }
104
- _context.prev = 1;
105
- _context.next = 4;
100
+ _context.prev = 0;
101
+ _context.next = 3;
106
102
  return generateTotpSecret(user);
107
- case 4:
103
+ case 3:
108
104
  response = _context.sent;
109
- console.log('πŸš€ ~ response:', response);
110
105
  settotpData(response);
111
- _context.next = 12;
106
+ _context.next = 10;
112
107
  break;
113
- case 9:
114
- _context.prev = 9;
115
- _context.t0 = _context["catch"](1);
108
+ case 7:
109
+ _context.prev = 7;
110
+ _context.t0 = _context["catch"](0);
116
111
  if (_context.t0.code === 'auth/requires-recent-login' || _context.t0.code === 'auth/unsupported-first-factor') {
117
112
  setisLoginRequired(true);
118
- // onRequiresRecentLoginError && onRequiresRecentLoginError()
119
113
  }
120
- case 12:
114
+ case 10:
121
115
  case "end":
122
116
  return _context.stop();
123
117
  }
124
- }, _callee, null, [[1, 9]]);
118
+ }, _callee, null, [[0, 7]]);
125
119
  }));
126
120
  return function generateTotp() {
127
121
  return _ref2.apply(this, arguments);
@@ -168,11 +162,11 @@ var Main2FAFlow = function Main2FAFlow(_ref) {
168
162
  };
169
163
  }();
170
164
  var onRequiresRecentLoginErrorHandler = function onRequiresRecentLoginErrorHandler() {
171
- // setIsFlowOpen({
172
- // requiresRecentLogin: true,
173
- // enable2fa: false,
174
- // disable2fa: false,
175
- // })
165
+ setIsFlowOpen({
166
+ requiresRecentLogin: true,
167
+ enable2fa: false,
168
+ disable2fa: false
169
+ });
176
170
  onRequiresRecentLoginError && onRequiresRecentLoginError();
177
171
  };
178
172
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
@@ -198,7 +192,8 @@ var Main2FAFlow = function Main2FAFlow(_ref) {
198
192
  margin: 0
199
193
  },
200
194
  handleChange: function handleChange(value) {
201
- if (isLoginRequired) {
195
+ //log in again is only if you try to set up 2fa, not disable it
196
+ if (isLoginRequired && value === 'enabled') {
202
197
  setIsFlowOpen({
203
198
  requiresRecentLogin: true,
204
199
  enable2fa: false,
@@ -153,6 +153,19 @@ var Auth = /*#__PURE__*/function () {
153
153
  });
154
154
  });
155
155
  }
156
+ }, {
157
+ key: "refreshIdToken",
158
+ value: function refreshIdToken() {
159
+ return new Promise(function (resolve, reject) {
160
+ var user = _firebaseConfig.auth.currentUser;
161
+ if (!user) reject('User not available');
162
+ user.getIdToken(true).then(function (idToken) {
163
+ resolve(idToken);
164
+ }).catch(function (error) {
165
+ reject(error);
166
+ });
167
+ });
168
+ }
156
169
  }, {
157
170
  key: "signInWithToken",
158
171
  value: function signInWithToken(token) {
@@ -1011,7 +1011,8 @@ var AuthProviderClass = /*#__PURE__*/function (_Component) {
1011
1011
  updateFirebaseUser: _Auth.default.updateFirebaseUser,
1012
1012
  handleResetPassword: this.handleResetPassword,
1013
1013
  handleVerifyEmail: this.handleVerifyEmail,
1014
- setUser: this.setUser
1014
+ setUser: this.setUser,
1015
+ refreshIdToken: _Auth.default.refreshIdToken
1015
1016
  })
1016
1017
  }, children);
1017
1018
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stokr/components-library",
3
- "version": "2.1.2-beta.1",
3
+ "version": "2.1.2",
4
4
  "description": "STOKR - Components Library",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",