@dbmx/confy 0.0.23 → 0.0.25
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.
- package/esm/components/App/index.js +23 -14
- package/esm/components/App/index.js.map +1 -1
- package/esm/components/AuthOTP/ConfirmCode/index.js +188 -0
- package/esm/components/AuthOTP/ConfirmCode/index.js.map +1 -0
- package/esm/components/AuthOTP/ConfirmCode/messages.js +47 -0
- package/esm/components/AuthOTP/ConfirmCode/messages.js.map +1 -0
- package/esm/components/AuthOTP/SignIn/index.js +141 -0
- package/esm/components/AuthOTP/SignIn/index.js.map +1 -0
- package/esm/components/AuthOTP/SignIn/messages.js +23 -0
- package/esm/components/AuthOTP/SignIn/messages.js.map +1 -0
- package/esm/components/AuthOTP/index.js +269 -0
- package/esm/components/AuthOTP/index.js.map +1 -0
- package/esm/components/AuthOTP/messages.js +23 -0
- package/esm/components/AuthOTP/messages.js.map +1 -0
- package/esm/components/AuthOTP/utils.js +22 -0
- package/esm/components/AuthOTP/utils.js.map +1 -0
- package/esm/components/AuthRedirect/index.js +1 -2
- package/esm/components/AuthRedirect/index.js.map +1 -1
- package/esm/components/Buttons/SignInWithEmail.js +18 -0
- package/esm/components/Buttons/SignInWithEmail.js.map +1 -0
- package/esm/components/Buttons/messages.js +4 -0
- package/esm/components/Buttons/messages.js.map +1 -1
- package/esm/components/Confy/index.js +28 -11
- package/esm/components/Confy/index.js.map +1 -1
- package/esm/components/Notification/index.js +9 -1
- package/esm/components/Notification/index.js.map +1 -1
- package/esm/components/Notification/messages.js +11 -0
- package/esm/components/Notification/messages.js.map +1 -0
- package/esm/components/NotificationProvider/index.js +2 -2
- package/esm/components/NotificationProvider/index.js.map +1 -1
- package/esm/components/SessionAlert/index.js +126 -0
- package/esm/components/SessionAlert/index.js.map +1 -0
- package/esm/components/SessionAlert/messages.js +27 -0
- package/esm/components/SessionAlert/messages.js.map +1 -0
- package/esm/ducks/auth.js +25 -1
- package/esm/ducks/auth.js.map +1 -1
- package/esm/ducks/core.js +15 -7
- package/esm/ducks/core.js.map +1 -1
- package/esm/forms/EmailField/EmailFieldAdaptor.js +24 -0
- package/esm/forms/EmailField/EmailFieldAdaptor.js.map +1 -0
- package/esm/forms/EmailField/index.js +68 -0
- package/esm/forms/EmailField/index.js.map +1 -0
- package/esm/forms/RecaptchaField/index.js +43 -0
- package/esm/forms/RecaptchaField/index.js.map +1 -0
- package/esm/forms/RecaptchaField/messages.js +11 -0
- package/esm/forms/RecaptchaField/messages.js.map +1 -0
- package/esm/forms/SixDigitField/index.js +137 -0
- package/esm/forms/SixDigitField/index.js.map +1 -0
- package/esm/forms/utils.js +10 -1
- package/esm/forms/utils.js.map +1 -1
- package/esm/hooks/authOTP.js +92 -0
- package/esm/hooks/authOTP.js.map +1 -0
- package/esm/hooks/notification.js +2 -2
- package/esm/hooks/notification.js.map +1 -1
- package/esm/hooks/session.js +9 -0
- package/esm/hooks/session.js.map +1 -0
- package/esm/hooks/window.js +6 -1
- package/esm/hooks/window.js.map +1 -1
- package/esm/lib/api/auth.js +39 -0
- package/esm/lib/api/auth.js.map +1 -0
- package/esm/lib/api/config.js.map +1 -1
- package/esm/lib/api/index.js +7 -1
- package/esm/lib/api/index.js.map +1 -1
- package/esm/node_modules/ramda/es/all.js +49 -0
- package/esm/node_modules/ramda/es/all.js.map +1 -0
- package/esm/node_modules/ramda/es/ap.js +44 -0
- package/esm/node_modules/ramda/es/ap.js.map +1 -0
- package/esm/node_modules/ramda/es/complement.js +32 -0
- package/esm/node_modules/ramda/es/complement.js.map +1 -0
- package/esm/node_modules/ramda/es/drop.js +40 -0
- package/esm/node_modules/ramda/es/drop.js.map +1 -0
- package/esm/node_modules/ramda/es/internal/_xall.js +43 -0
- package/esm/node_modules/ramda/es/internal/_xall.js.map +1 -0
- package/esm/node_modules/ramda/es/internal/_xdrop.js +34 -0
- package/esm/node_modules/ramda/es/internal/_xdrop.js.map +1 -0
- package/esm/node_modules/ramda/es/lift.js +34 -0
- package/esm/node_modules/ramda/es/lift.js.map +1 -0
- package/esm/node_modules/ramda/es/liftN.js +35 -0
- package/esm/node_modules/ramda/es/liftN.js.map +1 -0
- package/esm/node_modules/ramda/es/not.js +30 -0
- package/esm/node_modules/ramda/es/not.js.map +1 -0
- package/esm/selectors/auth.js +2 -1
- package/esm/selectors/auth.js.map +1 -1
- package/esm/store/index.js +6 -2
- package/esm/store/index.js.map +1 -1
- package/esm/utils/confy.js +10 -2
- package/esm/utils/confy.js.map +1 -1
- package/package.json +10 -6
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default, { useState, useEffect } from 'react';
|
|
3
|
+
import { p as propTypesExports } from '../../node_modules/prop-types/index.js';
|
|
4
|
+
import { useLocation, useHistory } from 'react-router-dom';
|
|
5
|
+
import { useIntl } from 'react-intl';
|
|
6
|
+
import useConfig from '../../hooks/config.js';
|
|
7
|
+
import useLoggedUser from '../../hooks/user.js';
|
|
8
|
+
import useAuth from '../../hooks/auth.js';
|
|
9
|
+
import useRoutes from '../../hooks/routes.js';
|
|
10
|
+
import useNotification from '../../hooks/notification.js';
|
|
11
|
+
import { useCurrentUrl } from '../../hooks/window.js';
|
|
12
|
+
import { useGetOTPLinkJWTTokens, useGetOTPSSOJWTTokens, useCreateOTP, useGetOTPTokens } from '../../hooks/authOTP.js';
|
|
13
|
+
import messages from './messages.js';
|
|
14
|
+
import SignIn from './SignIn/index.js';
|
|
15
|
+
import ConfirmCode from './ConfirmCode/index.js';
|
|
16
|
+
import { parseQuery } from './utils.js';
|
|
17
|
+
import join from '../../node_modules/ramda/es/join.js';
|
|
18
|
+
import take from '../../node_modules/ramda/es/take.js';
|
|
19
|
+
import drop from '../../node_modules/ramda/es/drop.js';
|
|
20
|
+
|
|
21
|
+
var AuthOTP = function AuthOTP(_ref) {
|
|
22
|
+
var route = _ref.route,
|
|
23
|
+
children = _ref.children;
|
|
24
|
+
var intl = useIntl();
|
|
25
|
+
var location = useLocation();
|
|
26
|
+
var history = useHistory();
|
|
27
|
+
var _useLoggedUser = useLoggedUser(),
|
|
28
|
+
_useLoggedUser2 = _slicedToArray(_useLoggedUser, 1),
|
|
29
|
+
user = _useLoggedUser2[0];
|
|
30
|
+
var routes = useRoutes();
|
|
31
|
+
var _useConfig = useConfig(),
|
|
32
|
+
context = _useConfig.context;
|
|
33
|
+
var auth = useAuth();
|
|
34
|
+
var currentUrl = useCurrentUrl();
|
|
35
|
+
var _useNotification = useNotification(),
|
|
36
|
+
error = _useNotification.error;
|
|
37
|
+
var _useState = useState(),
|
|
38
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
39
|
+
emailChecked = _useState2[0],
|
|
40
|
+
setEmailChecked = _useState2[1];
|
|
41
|
+
var _useState3 = useState(false),
|
|
42
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
43
|
+
stepVerifyCodeSucceed = _useState4[0],
|
|
44
|
+
setStepVerifyCodeSucceed = _useState4[1];
|
|
45
|
+
var _useState5 = useState(),
|
|
46
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
47
|
+
stepVerifyCodeError = _useState6[0],
|
|
48
|
+
setStepVerifyCodeError = _useState6[1];
|
|
49
|
+
var _useState7 = useState(0),
|
|
50
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
51
|
+
requestNewCodeCounter = _useState8[0],
|
|
52
|
+
setRequestNewCodeCounter = _useState8[1];
|
|
53
|
+
var _useState9 = useState(true),
|
|
54
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
55
|
+
userTokensLoading = _useState10[0],
|
|
56
|
+
setUserTokensLoading = _useState10[1];
|
|
57
|
+
useEffect(function () {
|
|
58
|
+
var timer;
|
|
59
|
+
if (requestNewCodeCounter > 0) {
|
|
60
|
+
timer = setInterval(function () {
|
|
61
|
+
setRequestNewCodeCounter(function (prev) {
|
|
62
|
+
return prev - 1;
|
|
63
|
+
});
|
|
64
|
+
}, 1000);
|
|
65
|
+
}
|
|
66
|
+
return function () {
|
|
67
|
+
return clearInterval(timer);
|
|
68
|
+
};
|
|
69
|
+
}, [requestNewCodeCounter]);
|
|
70
|
+
|
|
71
|
+
// handle OTP links
|
|
72
|
+
var onGetOTPJWTTokensSuccess = /*#__PURE__*/function () {
|
|
73
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(tokens) {
|
|
74
|
+
var userTokens;
|
|
75
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
76
|
+
while (1) switch (_context.prev = _context.next) {
|
|
77
|
+
case 0:
|
|
78
|
+
history.replace(location.pathname);
|
|
79
|
+
_context.next = 3;
|
|
80
|
+
return auth.userTokens(tokens);
|
|
81
|
+
case 3:
|
|
82
|
+
userTokens = _context.sent;
|
|
83
|
+
if (userTokens) {
|
|
84
|
+
handleResetEmail();
|
|
85
|
+
setRequestNewCodeCounter(0);
|
|
86
|
+
setUserTokensLoading(false);
|
|
87
|
+
}
|
|
88
|
+
case 5:
|
|
89
|
+
case "end":
|
|
90
|
+
return _context.stop();
|
|
91
|
+
}
|
|
92
|
+
}, _callee);
|
|
93
|
+
}));
|
|
94
|
+
return function onGetOTPJWTTokensSuccess(_x) {
|
|
95
|
+
return _ref2.apply(this, arguments);
|
|
96
|
+
};
|
|
97
|
+
}();
|
|
98
|
+
var onGetOTPJWTTokensError = function onGetOTPJWTTokensError() {
|
|
99
|
+
auth.removeAccessTokenCookie();
|
|
100
|
+
auth.signOut();
|
|
101
|
+
setUserTokensLoading(false);
|
|
102
|
+
history.replace(location.pathname);
|
|
103
|
+
};
|
|
104
|
+
var onGetOTPLinkJWTTokensError = function onGetOTPLinkJWTTokensError() {
|
|
105
|
+
onGetOTPJWTTokensError();
|
|
106
|
+
error({
|
|
107
|
+
title: intl.formatMessage(messages.authFailed)
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
var _useGetOTPLinkJWTToke = useGetOTPLinkJWTTokens({
|
|
111
|
+
onSuccess: onGetOTPJWTTokensSuccess,
|
|
112
|
+
onError: onGetOTPLinkJWTTokensError
|
|
113
|
+
}),
|
|
114
|
+
getOTPLinkJWTTokens = _useGetOTPLinkJWTToke.mutateAsync,
|
|
115
|
+
getOTPLinkJWTTokensLoading = _useGetOTPLinkJWTToke.isLoading;
|
|
116
|
+
|
|
117
|
+
// handle OTP SSO
|
|
118
|
+
var _useGetOTPSSOJWTToken = useGetOTPSSOJWTTokens({
|
|
119
|
+
onSuccess: onGetOTPJWTTokensSuccess,
|
|
120
|
+
onError: onGetOTPJWTTokensError
|
|
121
|
+
}),
|
|
122
|
+
getOTPSSOJWTTokens = _useGetOTPSSOJWTToken.mutateAsync,
|
|
123
|
+
getOTPSSOJWTTokensLoading = _useGetOTPSSOJWTToken.isLoading;
|
|
124
|
+
useEffect(function () {
|
|
125
|
+
var params = parseQuery(location.search);
|
|
126
|
+
if (params !== null && params !== undefined && params._t) {
|
|
127
|
+
setUserTokensLoading(true);
|
|
128
|
+
getOTPLinkJWTTokens({
|
|
129
|
+
jwt: params._t
|
|
130
|
+
});
|
|
131
|
+
} else {
|
|
132
|
+
var accessToken = auth.getAccessTokenCookie();
|
|
133
|
+
if (accessToken) {
|
|
134
|
+
getOTPSSOJWTTokens({
|
|
135
|
+
jwt: accessToken
|
|
136
|
+
});
|
|
137
|
+
} else {
|
|
138
|
+
setUserTokensLoading(false);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}, []);
|
|
142
|
+
|
|
143
|
+
// handle create OTP
|
|
144
|
+
var onCreateOTPSuccess = function onCreateOTPSuccess(result) {
|
|
145
|
+
setStepVerifyCodeSucceed(true);
|
|
146
|
+
if (emailChecked) {
|
|
147
|
+
setRequestNewCodeCounter(result.exp);
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
var onCreateOTPError = function onCreateOTPError() {
|
|
151
|
+
setEmailChecked();
|
|
152
|
+
error({
|
|
153
|
+
title: intl.formatMessage(messages.createOtpError)
|
|
154
|
+
});
|
|
155
|
+
};
|
|
156
|
+
var _useCreateOTP = useCreateOTP({
|
|
157
|
+
onSuccess: onCreateOTPSuccess,
|
|
158
|
+
onError: onCreateOTPError
|
|
159
|
+
}),
|
|
160
|
+
createOtp = _useCreateOTP.mutateAsync,
|
|
161
|
+
createOtpLoading = _useCreateOTP.isLoading;
|
|
162
|
+
var handleEmailRequestCode = /*#__PURE__*/function () {
|
|
163
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(email) {
|
|
164
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
165
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
166
|
+
case 0:
|
|
167
|
+
setEmailChecked(email);
|
|
168
|
+
createOtp({
|
|
169
|
+
email: email,
|
|
170
|
+
redirectUri: currentUrl
|
|
171
|
+
});
|
|
172
|
+
case 2:
|
|
173
|
+
case "end":
|
|
174
|
+
return _context2.stop();
|
|
175
|
+
}
|
|
176
|
+
}, _callee2);
|
|
177
|
+
}));
|
|
178
|
+
return function handleEmailRequestCode(_x2) {
|
|
179
|
+
return _ref3.apply(this, arguments);
|
|
180
|
+
};
|
|
181
|
+
}();
|
|
182
|
+
|
|
183
|
+
// handle getting OTP tokens
|
|
184
|
+
var onGetOTPTokensSuccess = /*#__PURE__*/function () {
|
|
185
|
+
var _ref4 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(tokens) {
|
|
186
|
+
var userTokens;
|
|
187
|
+
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
188
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
189
|
+
case 0:
|
|
190
|
+
_context3.next = 2;
|
|
191
|
+
return auth.userTokens(tokens);
|
|
192
|
+
case 2:
|
|
193
|
+
userTokens = _context3.sent;
|
|
194
|
+
if (userTokens) {
|
|
195
|
+
handleResetEmail();
|
|
196
|
+
setRequestNewCodeCounter(0);
|
|
197
|
+
}
|
|
198
|
+
case 4:
|
|
199
|
+
case "end":
|
|
200
|
+
return _context3.stop();
|
|
201
|
+
}
|
|
202
|
+
}, _callee3);
|
|
203
|
+
}));
|
|
204
|
+
return function onGetOTPTokensSuccess(_x3) {
|
|
205
|
+
return _ref4.apply(this, arguments);
|
|
206
|
+
};
|
|
207
|
+
}();
|
|
208
|
+
var onGetOTPTokensError = function onGetOTPTokensError() {
|
|
209
|
+
setStepVerifyCodeError(intl.formatMessage(messages.getOtpTokensError));
|
|
210
|
+
};
|
|
211
|
+
var _useGetOTPTokens = useGetOTPTokens({
|
|
212
|
+
onSuccess: onGetOTPTokensSuccess,
|
|
213
|
+
onError: onGetOTPTokensError
|
|
214
|
+
}),
|
|
215
|
+
getOTPTokens = _useGetOTPTokens.mutateAsync,
|
|
216
|
+
getOTPTokensLoading = _useGetOTPTokens.isLoading;
|
|
217
|
+
var handleGetOTPTokens = function handleGetOTPTokens(code) {
|
|
218
|
+
var formatedCode = join('-')([join('', take(3, code)), join('', drop(3, code))]);
|
|
219
|
+
getOTPTokens({
|
|
220
|
+
email: emailChecked,
|
|
221
|
+
code: formatedCode
|
|
222
|
+
});
|
|
223
|
+
};
|
|
224
|
+
var resetError = function resetError() {
|
|
225
|
+
return setStepVerifyCodeError();
|
|
226
|
+
};
|
|
227
|
+
var handleRequestNewCode = function handleRequestNewCode() {
|
|
228
|
+
setStepVerifyCodeError();
|
|
229
|
+
createOtp({
|
|
230
|
+
email: emailChecked,
|
|
231
|
+
redirectUri: currentUrl
|
|
232
|
+
});
|
|
233
|
+
};
|
|
234
|
+
var handleResetEmail = function handleResetEmail() {
|
|
235
|
+
setStepVerifyCodeError();
|
|
236
|
+
setEmailChecked();
|
|
237
|
+
setStepVerifyCodeSucceed(false);
|
|
238
|
+
};
|
|
239
|
+
if (getOTPLinkJWTTokensLoading || getOTPSSOJWTTokensLoading || userTokensLoading) return;
|
|
240
|
+
if (!user) return stepVerifyCodeSucceed ? /*#__PURE__*/React__default.createElement(ConfirmCode, {
|
|
241
|
+
email: emailChecked,
|
|
242
|
+
onResetEmail: handleResetEmail,
|
|
243
|
+
onGetOTPTokens: handleGetOTPTokens,
|
|
244
|
+
loading: getOTPTokensLoading || createOtpLoading,
|
|
245
|
+
getOTPTokensLoading: getOTPTokensLoading,
|
|
246
|
+
createOtpLoading: createOtpLoading,
|
|
247
|
+
error: stepVerifyCodeError,
|
|
248
|
+
resetError: resetError,
|
|
249
|
+
onRequestNewCode: handleRequestNewCode,
|
|
250
|
+
requestNewCodeCounter: requestNewCodeCounter
|
|
251
|
+
}) : /*#__PURE__*/React__default.createElement(SignIn, {
|
|
252
|
+
onEmailRequestCode: handleEmailRequestCode,
|
|
253
|
+
disabled: createOtpLoading
|
|
254
|
+
});
|
|
255
|
+
if (route && !route.isAuthorized({
|
|
256
|
+
user: user,
|
|
257
|
+
context: context
|
|
258
|
+
})) {
|
|
259
|
+
if (route.path === routes.getDefaultPath()) history.push(routes.forbidden.path);else history.push(routes.getDefaultPath());
|
|
260
|
+
}
|
|
261
|
+
return children;
|
|
262
|
+
};
|
|
263
|
+
AuthOTP.propTypes = {
|
|
264
|
+
children: propTypesExports.node.isRequired,
|
|
265
|
+
route: propTypesExports.object
|
|
266
|
+
};
|
|
267
|
+
|
|
268
|
+
export { AuthOTP as default };
|
|
269
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/AuthOTP/index.js"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport { node, object } from 'prop-types'\nimport { join, take, drop } from 'ramda'\nimport { useHistory, useLocation } from 'react-router-dom'\nimport { useIntl } from 'react-intl'\n\nimport useConfig from '../../hooks/config'\nimport useLoggedUser from '../../hooks/user'\nimport useAuth from '../../hooks/auth'\nimport useRoutes from '../../hooks/routes'\nimport useNotification from '../../hooks/notification'\nimport { useCurrentUrl } from '../../hooks/window'\nimport { useCreateOTP, useGetOTPLinkJWTTokens, useGetOTPSSOJWTTokens, useGetOTPTokens } from '../../hooks/authOTP'\n\nimport messages from './messages'\nimport SignIn from './SignIn'\nimport ConfirmCode from './ConfirmCode'\nimport { parseQuery } from './utils'\n\nconst AuthOTP = ({ route, children }) => {\n const intl = useIntl()\n const location = useLocation()\n const history = useHistory()\n const [user] = useLoggedUser()\n const routes = useRoutes()\n const { context } = useConfig()\n const auth = useAuth()\n const currentUrl = useCurrentUrl()\n const { error } = useNotification()\n const [emailChecked, setEmailChecked] = useState()\n const [stepVerifyCodeSucceed, setStepVerifyCodeSucceed] = useState(false)\n const [stepVerifyCodeError, setStepVerifyCodeError] = useState()\n const [requestNewCodeCounter, setRequestNewCodeCounter] = useState(0)\n const [userTokensLoading, setUserTokensLoading] = useState(true)\n\n useEffect(() => {\n let timer\n if (requestNewCodeCounter > 0) {\n timer = setInterval(() => {\n setRequestNewCodeCounter(prev => prev - 1)\n }, 1000)\n }\n return () => clearInterval(timer)\n }, [requestNewCodeCounter])\n\n // handle OTP links\n const onGetOTPJWTTokensSuccess = async tokens => {\n history.replace(location.pathname)\n const userTokens = await auth.userTokens(tokens)\n if (userTokens) {\n handleResetEmail()\n setRequestNewCodeCounter(0)\n setUserTokensLoading(false)\n }\n }\n\n const onGetOTPJWTTokensError = () => {\n auth.removeAccessTokenCookie()\n auth.signOut()\n setUserTokensLoading(false)\n history.replace(location.pathname)\n }\n\n const onGetOTPLinkJWTTokensError = () => {\n onGetOTPJWTTokensError()\n error({ title: intl.formatMessage(messages.authFailed) })\n }\n\n const { mutateAsync: getOTPLinkJWTTokens, isLoading: getOTPLinkJWTTokensLoading } = useGetOTPLinkJWTTokens({\n onSuccess: onGetOTPJWTTokensSuccess,\n onError: onGetOTPLinkJWTTokensError,\n })\n\n // handle OTP SSO\n const { mutateAsync: getOTPSSOJWTTokens, isLoading: getOTPSSOJWTTokensLoading } = useGetOTPSSOJWTTokens({\n onSuccess: onGetOTPJWTTokensSuccess,\n onError: onGetOTPJWTTokensError,\n })\n\n useEffect(() => {\n const params = parseQuery(location.search)\n if (params?._t) {\n setUserTokensLoading(true)\n getOTPLinkJWTTokens({ jwt: params._t })\n } else {\n const accessToken = auth.getAccessTokenCookie()\n if (accessToken) {\n getOTPSSOJWTTokens({ jwt: accessToken })\n } else {\n setUserTokensLoading(false)\n }\n }\n }, [])\n\n // handle create OTP\n const onCreateOTPSuccess = result => {\n setStepVerifyCodeSucceed(true)\n if (emailChecked) {\n setRequestNewCodeCounter(result.exp)\n }\n }\n\n const onCreateOTPError = () => {\n setEmailChecked()\n error({ title: intl.formatMessage(messages.createOtpError) })\n }\n\n const { mutateAsync: createOtp, isLoading: createOtpLoading } = useCreateOTP({\n onSuccess: onCreateOTPSuccess,\n onError: onCreateOTPError,\n })\n\n const handleEmailRequestCode = async email => {\n setEmailChecked(email)\n createOtp({ email, redirectUri: currentUrl })\n }\n\n // handle getting OTP tokens\n const onGetOTPTokensSuccess = async tokens => {\n const userTokens = await auth.userTokens(tokens)\n if (userTokens) {\n handleResetEmail()\n setRequestNewCodeCounter(0)\n }\n }\n\n const onGetOTPTokensError = () => {\n setStepVerifyCodeError(intl.formatMessage(messages.getOtpTokensError))\n }\n\n const { mutateAsync: getOTPTokens, isLoading: getOTPTokensLoading } = useGetOTPTokens({\n onSuccess: onGetOTPTokensSuccess,\n onError: onGetOTPTokensError,\n })\n\n const handleGetOTPTokens = code => {\n const formatedCode = join('-')([join('', take(3, code)), join('', drop(3, code))])\n getOTPTokens({ email: emailChecked, code: formatedCode })\n }\n\n const resetError = () => setStepVerifyCodeError()\n\n const handleRequestNewCode = () => {\n setStepVerifyCodeError()\n createOtp({ email: emailChecked, redirectUri: currentUrl })\n }\n\n const handleResetEmail = () => {\n setStepVerifyCodeError()\n setEmailChecked()\n setStepVerifyCodeSucceed(false)\n }\n\n if (getOTPLinkJWTTokensLoading || getOTPSSOJWTTokensLoading || userTokensLoading) return\n\n if (!user)\n return stepVerifyCodeSucceed ? (\n <ConfirmCode\n email={emailChecked}\n onResetEmail={handleResetEmail}\n onGetOTPTokens={handleGetOTPTokens}\n loading={getOTPTokensLoading || createOtpLoading}\n getOTPTokensLoading={getOTPTokensLoading}\n createOtpLoading={createOtpLoading}\n error={stepVerifyCodeError}\n resetError={resetError}\n onRequestNewCode={handleRequestNewCode}\n requestNewCodeCounter={requestNewCodeCounter}\n />\n ) : (\n <SignIn onEmailRequestCode={handleEmailRequestCode} disabled={createOtpLoading} />\n )\n\n if (route && !route.isAuthorized({ user, context })) {\n if (route.path === routes.getDefaultPath()) history.push(routes.forbidden.path)\n else history.push(routes.getDefaultPath())\n }\n\n return children\n}\n\nAuthOTP.propTypes = {\n children: node.isRequired,\n route: object,\n}\n\nexport default AuthOTP\n"],"names":["AuthOTP","_ref","route","children","intl","useIntl","location","useLocation","history","useHistory","_useLoggedUser","useLoggedUser","_useLoggedUser2","_slicedToArray","user","routes","useRoutes","_useConfig","useConfig","context","auth","useAuth","currentUrl","useCurrentUrl","_useNotification","useNotification","error","_useState","useState","_useState2","emailChecked","setEmailChecked","_useState3","_useState4","stepVerifyCodeSucceed","setStepVerifyCodeSucceed","_useState5","_useState6","stepVerifyCodeError","setStepVerifyCodeError","_useState7","_useState8","requestNewCodeCounter","setRequestNewCodeCounter","_useState9","_useState10","userTokensLoading","setUserTokensLoading","useEffect","timer","setInterval","prev","clearInterval","onGetOTPJWTTokensSuccess","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","tokens","userTokens","wrap","_callee$","_context","next","replace","pathname","sent","handleResetEmail","stop","_x","apply","arguments","onGetOTPJWTTokensError","removeAccessTokenCookie","signOut","onGetOTPLinkJWTTokensError","title","formatMessage","messages","authFailed","_useGetOTPLinkJWTToke","useGetOTPLinkJWTTokens","onSuccess","onError","getOTPLinkJWTTokens","mutateAsync","getOTPLinkJWTTokensLoading","isLoading","_useGetOTPSSOJWTToken","useGetOTPSSOJWTTokens","getOTPSSOJWTTokens","getOTPSSOJWTTokensLoading","params","parseQuery","search","_t","jwt","accessToken","getAccessTokenCookie","onCreateOTPSuccess","result","exp","onCreateOTPError","createOtpError","_useCreateOTP","useCreateOTP","createOtp","createOtpLoading","handleEmailRequestCode","_ref3","_callee2","email","_callee2$","_context2","redirectUri","_x2","onGetOTPTokensSuccess","_ref4","_callee3","_callee3$","_context3","_x3","onGetOTPTokensError","getOtpTokensError","_useGetOTPTokens","useGetOTPTokens","getOTPTokens","getOTPTokensLoading","handleGetOTPTokens","code","formatedCode","join","take","drop","resetError","handleRequestNewCode","React","createElement","ConfirmCode","onResetEmail","onGetOTPTokens","loading","onRequestNewCode","SignIn","onEmailRequestCode","disabled","isAuthorized","path","getDefaultPath","push","forbidden","propTypes","node","isRequired","object"],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { defineMessages } from 'react-intl';
|
|
2
|
+
|
|
3
|
+
var messages = defineMessages({
|
|
4
|
+
createOtpError: {
|
|
5
|
+
id: 'components.AuthOTP.createOtpError',
|
|
6
|
+
defaultMessage: 'Cannot create an OTP!'
|
|
7
|
+
},
|
|
8
|
+
getOtpTokensError: {
|
|
9
|
+
id: 'components.AuthOTP.getOtpTokensError',
|
|
10
|
+
defaultMessage: 'Cannot get OTP tokens!'
|
|
11
|
+
},
|
|
12
|
+
authFailed: {
|
|
13
|
+
id: 'components.AuthOTP.authFailed',
|
|
14
|
+
defaultMessage: 'Authentication failed!'
|
|
15
|
+
},
|
|
16
|
+
welcomeAgain: {
|
|
17
|
+
id: 'components.AuthOTP.welcomeAgain',
|
|
18
|
+
defaultMessage: 'Welcome again!'
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
export { messages as default };
|
|
23
|
+
//# sourceMappingURL=messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sources":["../../../src/components/AuthOTP/messages.js"],"sourcesContent":["import { defineMessages } from 'react-intl'\n\nexport default defineMessages({\n createOtpError: {\n id: 'components.AuthOTP.createOtpError',\n defaultMessage: 'Cannot create an OTP!',\n },\n getOtpTokensError: {\n id: 'components.AuthOTP.getOtpTokensError',\n defaultMessage: 'Cannot get OTP tokens!',\n },\n authFailed: {\n id: 'components.AuthOTP.authFailed',\n defaultMessage: 'Authentication failed!',\n },\n welcomeAgain: {\n id: 'components.AuthOTP.welcomeAgain',\n defaultMessage: 'Welcome again!',\n },\n})\n"],"names":["defineMessages","createOtpError","id","defaultMessage","getOtpTokensError","authFailed","welcomeAgain"],"mappings":";;AAEA,eAAeA,cAAc,CAAC;AAC5BC,EAAAA,cAAc,EAAE;AACdC,IAAAA,EAAE,EAAE,mCAAmC;AACvCC,IAAAA,cAAc,EAAE;GACjB;AACDC,EAAAA,iBAAiB,EAAE;AACjBF,IAAAA,EAAE,EAAE,sCAAsC;AAC1CC,IAAAA,cAAc,EAAE;GACjB;AACDE,EAAAA,UAAU,EAAE;AACVH,IAAAA,EAAE,EAAE,+BAA+B;AACnCC,IAAAA,cAAc,EAAE;GACjB;AACDG,EAAAA,YAAY,EAAE;AACZJ,IAAAA,EAAE,EAAE,iCAAiC;AACrCC,IAAAA,cAAc,EAAE;AAClB;AACF,CAAC,CAAC;;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createForOfIteratorHelper as _createForOfIteratorHelper } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
|
|
3
|
+
var parseQuery = function parseQuery(queryString) {
|
|
4
|
+
var query = {};
|
|
5
|
+
var params = new URLSearchParams(queryString);
|
|
6
|
+
var _iterator = _createForOfIteratorHelper(params),
|
|
7
|
+
_step;
|
|
8
|
+
try {
|
|
9
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
10
|
+
var p = _step.value;
|
|
11
|
+
query[p[0]] = decodeURIComponent(p[1] || '');
|
|
12
|
+
}
|
|
13
|
+
} catch (err) {
|
|
14
|
+
_iterator.e(err);
|
|
15
|
+
} finally {
|
|
16
|
+
_iterator.f();
|
|
17
|
+
}
|
|
18
|
+
return query;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export { parseQuery };
|
|
22
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../src/components/AuthOTP/utils.js"],"sourcesContent":["export const parseQuery = queryString => {\n var query = {}\n var params = new URLSearchParams(queryString)\n for (let p of params) {\n query[p[0]] = decodeURIComponent(p[1] || '')\n }\n return query\n}\n"],"names":["parseQuery","queryString","query","params","URLSearchParams","_iterator","_createForOfIteratorHelper","_step","s","n","done","p","value","decodeURIComponent","err","e","f"],"mappings":";;IAAaA,UAAU,GAAG,SAAbA,UAAUA,CAAGC,WAAW,EAAI;EACvC,IAAIC,KAAK,GAAG,EAAE;AACd,EAAA,IAAIC,MAAM,GAAG,IAAIC,eAAe,CAACH,WAAW,CAAC;AAAA,EAAA,IAAAI,SAAA,GAAAC,0BAAA,CAC/BH,MAAM,CAAA;IAAAI,KAAA;AAAA,EAAA,IAAA;IAApB,KAAAF,SAAA,CAAAG,CAAA,EAAAD,EAAAA,CAAAA,CAAAA,KAAA,GAAAF,SAAA,CAAAI,CAAA,EAAAC,EAAAA,IAAA,GAAsB;AAAA,MAAA,IAAbC,CAAC,GAAAJ,KAAA,CAAAK,KAAA;AACRV,MAAAA,KAAK,CAACS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAGE,kBAAkB,CAACF,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9C;AAAC,GAAA,CAAA,OAAAG,GAAA,EAAA;IAAAT,SAAA,CAAAU,CAAA,CAAAD,GAAA,CAAA;AAAA,GAAA,SAAA;AAAAT,IAAAA,SAAA,CAAAW,CAAA,EAAA;AAAA;AACD,EAAA,OAAOd,KAAK;AACd;;;;"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime, objectSpread2 as _objectSpread2, createForOfIteratorHelper as _createForOfIteratorHelper } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import { useEffect } from 'react';
|
|
3
|
-
import { useHistory } from 'react-router-dom';
|
|
3
|
+
import { useHistory, useLocation } from 'react-router-dom';
|
|
4
4
|
import { p as propTypesExports } from '../../node_modules/prop-types/index.js';
|
|
5
5
|
import useConfig from '../../hooks/config.js';
|
|
6
6
|
import useAuth from '../../hooks/auth.js';
|
|
7
7
|
import useRoutes from '../../hooks/routes.js';
|
|
8
8
|
import useLoggedUser from '../../hooks/user.js';
|
|
9
|
-
import { useLocation } from 'react-router-dom/cjs/react-router-dom.min';
|
|
10
9
|
|
|
11
10
|
function parseQuery(queryString) {
|
|
12
11
|
var query = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/AuthRedirect/index.js"],"sourcesContent":["import { useEffect } from 'react'\nimport { useHistory } from 'react-router-dom'\nimport { node, object } from 'prop-types'\nimport useConfig from '../../hooks/config'\nimport useAuth from '../../hooks/auth'\nimport useRoutes from '../../hooks/routes'\nimport useLoggedUser from '../../hooks/user'\
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/AuthRedirect/index.js"],"sourcesContent":["import { useEffect } from 'react'\nimport { useHistory, useLocation } from 'react-router-dom'\nimport { node, object } from 'prop-types'\nimport useConfig from '../../hooks/config'\nimport useAuth from '../../hooks/auth'\nimport useRoutes from '../../hooks/routes'\nimport useLoggedUser from '../../hooks/user'\n\nfunction parseQuery(queryString) {\n var query = {}\n var params = new URLSearchParams(queryString)\n for (let p of params) {\n query[p[0]] = decodeURIComponent(p[1] || '')\n }\n return query\n}\n\nconst AuthRedirect = ({ route, children }) => {\n const [user] = useLoggedUser()\n const { context } = useConfig()\n const auth = useAuth()\n const history = useHistory()\n const routes = useRoutes()\n const location = useLocation()\n\n useEffect(() => {\n const handleAuth = async () => {\n const params = parseQuery(location.search)\n if (params?.code) {\n window.postMessage({ type: 'code', ...params }, '*')\n } else {\n if (!user) auth.signIn()\n }\n }\n\n handleAuth()\n }, [])\n\n if (!user) return\n\n if (route && !route.isAuthorized({ user, context })) {\n if (route.path === routes.getDefaultPath()) history.push(routes.forbidden.path)\n else history.push(routes.getDefaultPath())\n }\n\n return children\n}\n\nAuthRedirect.propTypes = {\n children: node.isRequired,\n route: object,\n}\n\nexport default AuthRedirect\n"],"names":["parseQuery","queryString","query","params","URLSearchParams","_iterator","_createForOfIteratorHelper","_step","s","n","done","p","value","decodeURIComponent","err","e","f","AuthRedirect","_ref","route","children","_useLoggedUser","useLoggedUser","_useLoggedUser2","_slicedToArray","user","_useConfig","useConfig","context","auth","useAuth","history","useHistory","routes","useRoutes","location","useLocation","useEffect","handleAuth","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","search","code","window","postMessage","_objectSpread","type","signIn","stop","apply","arguments","isAuthorized","path","getDefaultPath","push","forbidden","propTypes","node","isRequired","object"],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { extends as _extends, objectDestructuringEmpty as _objectDestructuringEmpty } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
import { Button } from '@mui/material';
|
|
4
|
+
import messages from './messages.js';
|
|
5
|
+
import { FormattedMessage } from 'react-intl';
|
|
6
|
+
|
|
7
|
+
var SignInWithEmailButton = function SignInWithEmailButton(_ref) {
|
|
8
|
+
var rest = _extends({}, (_objectDestructuringEmpty(_ref), _ref));
|
|
9
|
+
return /*#__PURE__*/React__default.createElement(Button, _extends({
|
|
10
|
+
fullWidth: true,
|
|
11
|
+
type: "submit",
|
|
12
|
+
color: "primary",
|
|
13
|
+
variant: "contained"
|
|
14
|
+
}, rest), /*#__PURE__*/React__default.createElement(FormattedMessage, messages.signInWithEmail));
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export { SignInWithEmailButton as default };
|
|
18
|
+
//# sourceMappingURL=SignInWithEmail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SignInWithEmail.js","sources":["../../../src/components/Buttons/SignInWithEmail.js"],"sourcesContent":["import React from 'react'\n\nimport { Button } from '@mui/material'\nimport messages from './messages'\nimport { FormattedMessage } from 'react-intl'\n\nconst SignInWithEmailButton = ({ ...rest }) => {\n return (\n <Button fullWidth type=\"submit\" color=\"primary\" variant=\"contained\" {...rest}>\n <FormattedMessage {...messages.signInWithEmail} />\n </Button>\n )\n}\n\nexport default SignInWithEmailButton\n"],"names":["SignInWithEmailButton","_ref","rest","_extends","_objectDestructuringEmpty","React","createElement","Button","fullWidth","type","color","variant","FormattedMessage","messages","signInWithEmail"],"mappings":";;;;;;AAMA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAAC,IAAA,EAAoB;EAAA,IAAXC,IAAI,GAAAC,QAAA,CAAA,EAAA,GAAAC,yBAAA,CAAAH,IAAA,GAAAA,IAAA,EAAA;AACtC,EAAA,oBACEI,cAAA,CAAAC,aAAA,CAACC,MAAM,EAAAJ,QAAA,CAAA;IAACK,SAAS,EAAA,IAAA;AAACC,IAAAA,IAAI,EAAC,QAAQ;AAACC,IAAAA,KAAK,EAAC,SAAS;AAACC,IAAAA,OAAO,EAAC;AAAW,GAAA,EAAKT,IAAI,CAAA,eAC1EG,cAAA,CAAAC,aAAA,CAACM,gBAAgB,EAAKC,QAAQ,CAACC,eAAkB,CAC3C,CAAC;AAEb;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sources":["../../../src/components/Buttons/messages.js"],"sourcesContent":["import { defineMessages } from 'react-intl'\n\nexport default defineMessages({\n cancel: {\n id: 'components.Buttons.cancel',\n defaultMessage: 'cancel',\n },\n goBack: {\n id: 'components.Buttons.goBack',\n defaultMessage: 'go back',\n },\n confirm: {\n id: 'components.Buttons.confirm',\n defaultMessage: 'save',\n },\n create: {\n id: 'components.Buttons.create',\n defaultMessage: 'create',\n },\n start: {\n id: 'components.Buttons.start',\n defaultMessage: 'start',\n },\n delete: {\n id: 'components.Buttons.delete',\n defaultMessage: 'delete',\n },\n update: {\n id: 'components.Buttons.update',\n defaultMessage: 'edit',\n },\n upload: {\n id: 'components.Buttons.upload',\n defaultMessage: 'upload',\n },\n clone: {\n id: 'components.Buttons.clone',\n defaultMessage: 'clone',\n },\n refresh: {\n id: 'components.Buttons.refresh',\n defaultMessage: 'refresh',\n },\n download: {\n id: 'components.Buttons.download',\n defaultMessage: 'download',\n },\n edit: {\n id: 'components.Buttons.edit',\n defaultMessage: 'edit',\n },\n invite: {\n id: 'components.Buttons.invite',\n defaultMessage: 'invite',\n },\n resendinvite: {\n id: 'components.Buttons.resendinvite',\n defaultMessage: 'resend invitation email',\n },\n sourceFile: {\n id: 'components.Buttons.sourceFile',\n defaultMessage: 'Select A Source File',\n },\n clear: {\n id: 'components.Buttons.clear',\n defaultMessage: 'Clear',\n },\n select: {\n id: 'components.Buttons.select',\n defaultMessage: 'Select',\n },\n reset: {\n id: 'components.Buttons.reset',\n defaultMessage: 'Reset',\n },\n continue: {\n id: 'components.Buttons.continue',\n defaultMessage: 'Continue',\n },\n downloadcsv: {\n id: 'components.Buttons.downloadcsv',\n defaultMessage: 'Download csv',\n },\n logs: {\n id: 'components.Buttons.logs',\n defaultMessage: 'Logs',\n },\n summary: {\n id: 'components.Buttons.summary',\n defaultMessage: 'Summary',\n },\n})\n"],"names":["defineMessages","cancel","id","defaultMessage","goBack","confirm","create","start","update","upload","clone","refresh","download","edit","invite","resendinvite","sourceFile","clear","select","reset","downloadcsv","logs","summary"],"mappings":";;AAEA,eAAeA,cAAc,CAAC;AAC5BC,EAAAA,MAAM,EAAE;AACNC,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDC,EAAAA,MAAM,EAAE;AACNF,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDE,EAAAA,OAAO,EAAE;AACPH,IAAAA,EAAE,EAAE,4BAA4B;AAChCC,IAAAA,cAAc,EAAE;GACjB;AACDG,EAAAA,MAAM,EAAE;AACNJ,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDI,EAAAA,KAAK,EAAE;AACLL,IAAAA,EAAE,EAAE,0BAA0B;AAC9BC,IAAAA,cAAc,EAAE;GACjB;EACD,QAAQ,EAAA;AACND,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDK,EAAAA,MAAM,EAAE;AACNN,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDM,EAAAA,MAAM,EAAE;AACNP,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDO,EAAAA,KAAK,EAAE;AACLR,IAAAA,EAAE,EAAE,0BAA0B;AAC9BC,IAAAA,cAAc,EAAE;GACjB;AACDQ,EAAAA,OAAO,EAAE;AACPT,IAAAA,EAAE,EAAE,4BAA4B;AAChCC,IAAAA,cAAc,EAAE;GACjB;AACDS,EAAAA,QAAQ,EAAE;AACRV,IAAAA,EAAE,EAAE,6BAA6B;AACjCC,IAAAA,cAAc,EAAE;GACjB;AACDU,EAAAA,IAAI,EAAE;AACJX,IAAAA,EAAE,EAAE,yBAAyB;AAC7BC,IAAAA,cAAc,EAAE;GACjB;AACDW,EAAAA,MAAM,EAAE;AACNZ,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDY,EAAAA,YAAY,EAAE;AACZb,IAAAA,EAAE,EAAE,iCAAiC;AACrCC,IAAAA,cAAc,EAAE;GACjB;AACDa,EAAAA,UAAU,EAAE;AACVd,IAAAA,EAAE,EAAE,+BAA+B;AACnCC,IAAAA,cAAc,EAAE;GACjB;AACDc,EAAAA,KAAK,EAAE;AACLf,IAAAA,EAAE,EAAE,0BAA0B;AAC9BC,IAAAA,cAAc,EAAE;GACjB;AACDe,EAAAA,MAAM,EAAE;AACNhB,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDgB,EAAAA,KAAK,EAAE;AACLjB,IAAAA,EAAE,EAAE,0BAA0B;AAC9BC,IAAAA,cAAc,EAAE;GACjB;EACD,UAAU,EAAA;AACRD,IAAAA,EAAE,EAAE,6BAA6B;AACjCC,IAAAA,cAAc,EAAE;GACjB;AACDiB,EAAAA,WAAW,EAAE;AACXlB,IAAAA,EAAE,EAAE,gCAAgC;AACpCC,IAAAA,cAAc,EAAE;GACjB;AACDkB,EAAAA,IAAI,EAAE;AACJnB,IAAAA,EAAE,EAAE,yBAAyB;AAC7BC,IAAAA,cAAc,EAAE;GACjB;AACDmB,EAAAA,OAAO,EAAE;AACPpB,IAAAA,EAAE,EAAE,4BAA4B;AAChCC,IAAAA,cAAc,EAAE;AAClB;AACF,CAAC,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"messages.js","sources":["../../../src/components/Buttons/messages.js"],"sourcesContent":["import { defineMessages } from 'react-intl'\n\nexport default defineMessages({\n cancel: {\n id: 'components.Buttons.cancel',\n defaultMessage: 'cancel',\n },\n goBack: {\n id: 'components.Buttons.goBack',\n defaultMessage: 'go back',\n },\n confirm: {\n id: 'components.Buttons.confirm',\n defaultMessage: 'save',\n },\n create: {\n id: 'components.Buttons.create',\n defaultMessage: 'create',\n },\n start: {\n id: 'components.Buttons.start',\n defaultMessage: 'start',\n },\n delete: {\n id: 'components.Buttons.delete',\n defaultMessage: 'delete',\n },\n update: {\n id: 'components.Buttons.update',\n defaultMessage: 'edit',\n },\n upload: {\n id: 'components.Buttons.upload',\n defaultMessage: 'upload',\n },\n clone: {\n id: 'components.Buttons.clone',\n defaultMessage: 'clone',\n },\n refresh: {\n id: 'components.Buttons.refresh',\n defaultMessage: 'refresh',\n },\n download: {\n id: 'components.Buttons.download',\n defaultMessage: 'download',\n },\n edit: {\n id: 'components.Buttons.edit',\n defaultMessage: 'edit',\n },\n invite: {\n id: 'components.Buttons.invite',\n defaultMessage: 'invite',\n },\n resendinvite: {\n id: 'components.Buttons.resendinvite',\n defaultMessage: 'resend invitation email',\n },\n sourceFile: {\n id: 'components.Buttons.sourceFile',\n defaultMessage: 'Select A Source File',\n },\n clear: {\n id: 'components.Buttons.clear',\n defaultMessage: 'Clear',\n },\n select: {\n id: 'components.Buttons.select',\n defaultMessage: 'Select',\n },\n reset: {\n id: 'components.Buttons.reset',\n defaultMessage: 'Reset',\n },\n continue: {\n id: 'components.Buttons.continue',\n defaultMessage: 'Continue',\n },\n downloadcsv: {\n id: 'components.Buttons.downloadcsv',\n defaultMessage: 'Download csv',\n },\n logs: {\n id: 'components.Buttons.logs',\n defaultMessage: 'Logs',\n },\n summary: {\n id: 'components.Buttons.summary',\n defaultMessage: 'Summary',\n },\n signInWithEmail: {\n id: 'components.Buttons.signInWithEmail',\n defaultMessage: 'Sign In With Email ',\n },\n})\n"],"names":["defineMessages","cancel","id","defaultMessage","goBack","confirm","create","start","update","upload","clone","refresh","download","edit","invite","resendinvite","sourceFile","clear","select","reset","downloadcsv","logs","summary","signInWithEmail"],"mappings":";;AAEA,eAAeA,cAAc,CAAC;AAC5BC,EAAAA,MAAM,EAAE;AACNC,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDC,EAAAA,MAAM,EAAE;AACNF,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDE,EAAAA,OAAO,EAAE;AACPH,IAAAA,EAAE,EAAE,4BAA4B;AAChCC,IAAAA,cAAc,EAAE;GACjB;AACDG,EAAAA,MAAM,EAAE;AACNJ,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDI,EAAAA,KAAK,EAAE;AACLL,IAAAA,EAAE,EAAE,0BAA0B;AAC9BC,IAAAA,cAAc,EAAE;GACjB;EACD,QAAQ,EAAA;AACND,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDK,EAAAA,MAAM,EAAE;AACNN,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDM,EAAAA,MAAM,EAAE;AACNP,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDO,EAAAA,KAAK,EAAE;AACLR,IAAAA,EAAE,EAAE,0BAA0B;AAC9BC,IAAAA,cAAc,EAAE;GACjB;AACDQ,EAAAA,OAAO,EAAE;AACPT,IAAAA,EAAE,EAAE,4BAA4B;AAChCC,IAAAA,cAAc,EAAE;GACjB;AACDS,EAAAA,QAAQ,EAAE;AACRV,IAAAA,EAAE,EAAE,6BAA6B;AACjCC,IAAAA,cAAc,EAAE;GACjB;AACDU,EAAAA,IAAI,EAAE;AACJX,IAAAA,EAAE,EAAE,yBAAyB;AAC7BC,IAAAA,cAAc,EAAE;GACjB;AACDW,EAAAA,MAAM,EAAE;AACNZ,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDY,EAAAA,YAAY,EAAE;AACZb,IAAAA,EAAE,EAAE,iCAAiC;AACrCC,IAAAA,cAAc,EAAE;GACjB;AACDa,EAAAA,UAAU,EAAE;AACVd,IAAAA,EAAE,EAAE,+BAA+B;AACnCC,IAAAA,cAAc,EAAE;GACjB;AACDc,EAAAA,KAAK,EAAE;AACLf,IAAAA,EAAE,EAAE,0BAA0B;AAC9BC,IAAAA,cAAc,EAAE;GACjB;AACDe,EAAAA,MAAM,EAAE;AACNhB,IAAAA,EAAE,EAAE,2BAA2B;AAC/BC,IAAAA,cAAc,EAAE;GACjB;AACDgB,EAAAA,KAAK,EAAE;AACLjB,IAAAA,EAAE,EAAE,0BAA0B;AAC9BC,IAAAA,cAAc,EAAE;GACjB;EACD,UAAU,EAAA;AACRD,IAAAA,EAAE,EAAE,6BAA6B;AACjCC,IAAAA,cAAc,EAAE;GACjB;AACDiB,EAAAA,WAAW,EAAE;AACXlB,IAAAA,EAAE,EAAE,gCAAgC;AACpCC,IAAAA,cAAc,EAAE;GACjB;AACDkB,EAAAA,IAAI,EAAE;AACJnB,IAAAA,EAAE,EAAE,yBAAyB;AAC7BC,IAAAA,cAAc,EAAE;GACjB;AACDmB,EAAAA,OAAO,EAAE;AACPpB,IAAAA,EAAE,EAAE,4BAA4B;AAChCC,IAAAA,cAAc,EAAE;GACjB;AACDoB,EAAAA,eAAe,EAAE;AACfrB,IAAAA,EAAE,EAAE,oCAAoC;AACxCC,IAAAA,cAAc,EAAE;AAClB;AACF,CAAC,CAAC;;;;"}
|
|
@@ -28,6 +28,7 @@ import { getApis } from '../../utils/api.js';
|
|
|
28
28
|
import store from '../../store/index.js';
|
|
29
29
|
import actions from '../../actions.js';
|
|
30
30
|
import { getAvailableModules, getAuth } from '../../utils/confy.js';
|
|
31
|
+
import { NOTIFICATION_VARIANTS } from '../../ducks/utils.js';
|
|
31
32
|
|
|
32
33
|
var generateClassName = createGenerateClassName();
|
|
33
34
|
var Confy = function Confy(_ref) {
|
|
@@ -49,7 +50,6 @@ var Confy = function Confy(_ref) {
|
|
|
49
50
|
return store.getState().auth.token;
|
|
50
51
|
}
|
|
51
52
|
}, apiOptions));
|
|
52
|
-
_main.init(getApis(modules));
|
|
53
53
|
if (!auth) {
|
|
54
54
|
return null;
|
|
55
55
|
}
|
|
@@ -91,16 +91,30 @@ Confy.propTypes = {
|
|
|
91
91
|
apiOptions: PropTypes.object
|
|
92
92
|
};
|
|
93
93
|
var onAuthError = function onAuthError(event) {
|
|
94
|
-
|
|
94
|
+
switch (event.error) {
|
|
95
|
+
case 'failed':
|
|
96
|
+
store.dispatch(actions.core.showNotification(null, NOTIFICATION_VARIANTS.error, null, 'authFailed'));
|
|
97
|
+
break;
|
|
98
|
+
default:
|
|
99
|
+
store.dispatch(actions.core.showNotification(event.error_description || event.message, NOTIFICATION_VARIANTS.error));
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
95
102
|
if (event.error === 'invalid_grant') {
|
|
96
103
|
window.location.replace('/');
|
|
97
104
|
}
|
|
98
105
|
};
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
106
|
+
|
|
107
|
+
// const registerLogout =
|
|
108
|
+
// oidc =>
|
|
109
|
+
// ({ expires_in }) =>
|
|
110
|
+
// oidc.registerLogout(expires_in * 1000)
|
|
111
|
+
|
|
112
|
+
var refreshTokens = function refreshTokens(_ref2) {
|
|
113
|
+
var access_token = _ref2.access_token;
|
|
114
|
+
store.dispatch(actions.auth.refreshToken(access_token));
|
|
115
|
+
};
|
|
116
|
+
var onSessionEnding = function onSessionEnding() {
|
|
117
|
+
store.dispatch(actions.auth.sessionEnding(true));
|
|
104
118
|
};
|
|
105
119
|
var onLogin = function onLogin(_ref3) {
|
|
106
120
|
var access_token = _ref3.access_token,
|
|
@@ -124,8 +138,10 @@ var loadConfyOptions = function loadConfyOptions() {
|
|
|
124
138
|
var getConfyAuth = function getConfyAuth(options) {
|
|
125
139
|
var auth = getAuth(options.oidc);
|
|
126
140
|
auth.on('signedIn', onLogin);
|
|
127
|
-
auth.on('signedIn', registerLogout(auth))
|
|
141
|
+
// auth.on('signedIn', registerLogout(auth))
|
|
142
|
+
auth.on('tokensRefreshed', refreshTokens);
|
|
128
143
|
auth.on('signedOut', onLogout);
|
|
144
|
+
auth.on('sessionEnding', onSessionEnding);
|
|
129
145
|
auth.on('error', onAuthError);
|
|
130
146
|
return auth;
|
|
131
147
|
};
|
|
@@ -143,9 +159,10 @@ var ConfySetup = function ConfySetup(_ref4) {
|
|
|
143
159
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
144
160
|
while (1) switch (_context.prev = _context.next) {
|
|
145
161
|
case 0:
|
|
146
|
-
|
|
162
|
+
_main.init(getApis(modules));
|
|
163
|
+
_context.next = 3;
|
|
147
164
|
return loadConfyOptions();
|
|
148
|
-
case
|
|
165
|
+
case 3:
|
|
149
166
|
options = _context.sent;
|
|
150
167
|
console.log("Confy mounted");
|
|
151
168
|
setConfyProps({
|
|
@@ -156,7 +173,7 @@ var ConfySetup = function ConfySetup(_ref4) {
|
|
|
156
173
|
},
|
|
157
174
|
theme: theme
|
|
158
175
|
});
|
|
159
|
-
case
|
|
176
|
+
case 6:
|
|
160
177
|
case "end":
|
|
161
178
|
return _context.stop();
|
|
162
179
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Confy/index.js"],"sourcesContent":["/* eslint-disable react/prop-types */\nimport React, { useEffect, useState } from 'react'\nimport PropTypes from 'prop-types'\nimport { Provider } from 'react-redux'\nimport { ThemeProvider, StyledEngineProvider, CssBaseline } from '@mui/material'\nimport { Router } from 'react-router-dom'\nimport { QueryClient, QueryClientProvider } from 'react-query'\nimport { ReactQueryDevtools } from 'react-query/devtools'\nimport { createBrowserHistory } from 'history'\nimport { LocalizationProvider } from '@mui/x-date-pickers'\nimport { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs'\nimport { createGenerateClassName, StylesProvider } from '@mui/styles'\n\nimport api from '../../lib/api'\nimport { AuthProvider } from '../AuthProvider'\nimport MenuProvider from '../MenuProvider'\nimport LanguageProvider from '../LanguageProvider'\nimport NotificationProvider from '../NotificationProvider'\nimport ErrorBoundary from '../ErrorBoundary'\nimport App from '../App'\nimport defaultTheme from '../../theme'\nimport getMenu from '../../menu'\nimport getRoutes from '../../routes'\nimport { ModulesProvider } from '../ModulesProvider'\nimport { confy } from '../../index'\nimport { ConfyProvider } from '../../ConfyProvider'\nimport { RoutesProvider } from '../RoutesProvider'\nimport { getApis } from '../../utils/api'\nimport store from '../../store'\nimport actions from '../../actions'\nimport { getAuth, getAvailableModules } from '../../utils/confy'\n\nconst generateClassName = createGenerateClassName()\n\nconst Confy = ({ modules, auth, theme, apiOptions = {} }) => {\n const queryClient = new QueryClient({ defaultOptions: { queries: { retry: false } } })\n const history = createBrowserHistory()\n\n api.setOptions({\n getBearer: () => store.getState().auth.token,\n ...apiOptions,\n })\n\n api.init(getApis(modules))\n\n if (!auth) {\n return null\n }\n\n return (\n <StylesProvider generateClassName={generateClassName} injectFirst>\n <ConfyProvider value={confy}>\n <Provider store={store}>\n <AuthProvider value={auth}>\n <ModulesProvider value={modules}>\n <RoutesProvider value={getRoutes(modules)}>\n <MenuProvider menu={getMenu(modules)}>\n <LanguageProvider messages={window.I18N || {}}>\n <NotificationProvider>\n <StyledEngineProvider injectFirst>\n <ThemeProvider theme={theme || defaultTheme}>\n <CssBaseline />\n <Router history={history}>\n <ErrorBoundary>\n <QueryClientProvider client={queryClient}>\n <LocalizationProvider dateAdapter={AdapterDayjs}>\n <App />\n </LocalizationProvider>\n <ReactQueryDevtools initialIsOpen={false} />\n </QueryClientProvider>\n </ErrorBoundary>\n </Router>\n </ThemeProvider>\n </StyledEngineProvider>\n </NotificationProvider>\n </LanguageProvider>\n </MenuProvider>\n </RoutesProvider>\n </ModulesProvider>\n </AuthProvider>\n </Provider>\n </ConfyProvider>\n </StylesProvider>\n )\n}\n\nConfy.propTypes = {\n modules: PropTypes.array.isRequired,\n auth: PropTypes.object.isRequired,\n theme: PropTypes.object.isRequired,\n apiOptions: PropTypes.object,\n}\n\nconst onAuthError = event => {\n store.dispatch(actions.core.showNotification(event.error_description || event.message, NOTIFICATION_VARIANTS.error))\n if (event.error === 'invalid_grant') {\n window.location.replace('/')\n }\n}\n\nconst registerLogout =\n oidc =>\n ({ expires_in }) =>\n oidc.registerLogout(expires_in * 1000)\n\nconst onLogin = ({ access_token, payload }) => {\n const user = {\n id: payload.sub,\n email: payload.email,\n lastname: payload.family_name,\n firstname: payload.given_name,\n members: payload.members,\n roles: payload.roles,\n }\n store.dispatch(actions.auth.signedIn(access_token, user))\n}\n\nconst onLogout = () => {\n store.dispatch(actions.auth.signOut())\n}\n\nconst loadConfyOptions = () => store.dispatch(actions.config.load())\n\nconst getConfyAuth = options => {\n const auth = getAuth(options.oidc)\n auth.on('signedIn', onLogin)\n auth.on('signedIn', registerLogout(auth))\n auth.on('signedOut', onLogout)\n auth.on('error', onAuthError)\n return auth\n}\n\nconst ConfySetup = ({ modules, theme }) => {\n const [confyProps, setConfyProps] = useState()\n\n useEffect(() => {\n const initConfy = async () => {\n const options = await loadConfyOptions()\n console.log(`Confy mounted`)\n setConfyProps({\n auth: getConfyAuth(options),\n modules: getAvailableModules(options.modules, modules),\n apiOptions: { authUrl: options.authUrl },\n theme,\n })\n }\n initConfy()\n }, [])\n\n if (!confyProps) return\n\n return <Confy {...confyProps} />\n}\n\nConfySetup.propTypes = {\n modules: PropTypes.array.isRequired,\n theme: PropTypes.object.isRequired,\n}\n\nexport default ConfySetup\n"],"names":["generateClassName","createGenerateClassName","Confy","_ref","modules","auth","theme","_ref$apiOptions","apiOptions","queryClient","QueryClient","defaultOptions","queries","retry","history","createBrowserHistory","api","setOptions","_objectSpread","getBearer","store","getState","token","init","getApis","React","createElement","StylesProvider","injectFirst","ConfyProvider","value","confy","Provider","AuthProvider","ModulesProvider","RoutesProvider","getRoutes","MenuProvider","menu","getMenu","LanguageProvider","messages","window","I18N","NotificationProvider","StyledEngineProvider","ThemeProvider","defaultTheme","CssBaseline","Router","ErrorBoundary","QueryClientProvider","client","LocalizationProvider","dateAdapter","AdapterDayjs","App","ReactQueryDevtools","initialIsOpen","propTypes","PropTypes","array","isRequired","object","onAuthError","event","dispatch","actions","core","showNotification","error_description","message","NOTIFICATION_VARIANTS","error","location","replace","registerLogout","oidc","_ref2","expires_in","onLogin","_ref3","access_token","payload","user","id","sub","email","lastname","family_name","firstname","given_name","members","roles","signedIn","onLogout","signOut","loadConfyOptions","config","load","getConfyAuth","options","getAuth","on","ConfySetup","_ref4","_useState","useState","_useState2","_slicedToArray","confyProps","setConfyProps","useEffect","initConfy","_ref5","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","sent","console","log","getAvailableModules","authUrl","stop","apply","arguments"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Confy/index.js"],"sourcesContent":["/* eslint-disable react/prop-types */\nimport React, { useEffect, useState } from 'react'\nimport PropTypes from 'prop-types'\nimport { Provider } from 'react-redux'\nimport { ThemeProvider, StyledEngineProvider, CssBaseline } from '@mui/material'\nimport { Router } from 'react-router-dom'\nimport { QueryClient, QueryClientProvider } from 'react-query'\nimport { ReactQueryDevtools } from 'react-query/devtools'\nimport { createBrowserHistory } from 'history'\nimport { LocalizationProvider } from '@mui/x-date-pickers'\nimport { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs'\nimport { createGenerateClassName, StylesProvider } from '@mui/styles'\n\nimport api from '../../lib/api'\nimport { AuthProvider } from '../AuthProvider'\nimport MenuProvider from '../MenuProvider'\nimport LanguageProvider from '../LanguageProvider'\nimport NotificationProvider from '../NotificationProvider'\nimport ErrorBoundary from '../ErrorBoundary'\nimport App from '../App'\nimport defaultTheme from '../../theme'\nimport getMenu from '../../menu'\nimport getRoutes from '../../routes'\nimport { ModulesProvider } from '../ModulesProvider'\nimport { confy, NOTIFICATION_VARIANTS } from '../../index'\nimport { ConfyProvider } from '../../ConfyProvider'\nimport { RoutesProvider } from '../RoutesProvider'\nimport { getApis } from '../../utils/api'\nimport store from '../../store'\nimport actions from '../../actions'\nimport { getAuth, getAvailableModules } from '../../utils/confy'\n\nconst generateClassName = createGenerateClassName()\n\nconst Confy = ({ modules, auth, theme, apiOptions = {} }) => {\n const queryClient = new QueryClient({ defaultOptions: { queries: { retry: false } } })\n const history = createBrowserHistory()\n\n api.setOptions({\n getBearer: () => store.getState().auth.token,\n ...apiOptions,\n })\n\n if (!auth) {\n return null\n }\n\n return (\n <StylesProvider generateClassName={generateClassName} injectFirst>\n <ConfyProvider value={confy}>\n <Provider store={store}>\n <AuthProvider value={auth}>\n <ModulesProvider value={modules}>\n <RoutesProvider value={getRoutes(modules)}>\n <MenuProvider menu={getMenu(modules)}>\n <LanguageProvider messages={window.I18N || {}}>\n <NotificationProvider>\n <StyledEngineProvider injectFirst>\n <ThemeProvider theme={theme || defaultTheme}>\n <CssBaseline />\n <Router history={history}>\n <ErrorBoundary>\n <QueryClientProvider client={queryClient}>\n <LocalizationProvider dateAdapter={AdapterDayjs}>\n <App />\n </LocalizationProvider>\n <ReactQueryDevtools initialIsOpen={false} />\n </QueryClientProvider>\n </ErrorBoundary>\n </Router>\n </ThemeProvider>\n </StyledEngineProvider>\n </NotificationProvider>\n </LanguageProvider>\n </MenuProvider>\n </RoutesProvider>\n </ModulesProvider>\n </AuthProvider>\n </Provider>\n </ConfyProvider>\n </StylesProvider>\n )\n}\n\nConfy.propTypes = {\n modules: PropTypes.array.isRequired,\n auth: PropTypes.object.isRequired,\n theme: PropTypes.object.isRequired,\n apiOptions: PropTypes.object,\n}\n\nconst onAuthError = event => {\n switch (event.error) {\n case 'failed':\n store.dispatch(actions.core.showNotification(null, NOTIFICATION_VARIANTS.error, null, 'authFailed'))\n break\n default:\n store.dispatch(\n actions.core.showNotification(event.error_description || event.message, NOTIFICATION_VARIANTS.error),\n )\n break\n }\n\n if (event.error === 'invalid_grant') {\n window.location.replace('/')\n }\n}\n\n// const registerLogout =\n// oidc =>\n// ({ expires_in }) =>\n// oidc.registerLogout(expires_in * 1000)\n\nconst refreshTokens = ({ access_token }) => {\n store.dispatch(actions.auth.refreshToken(access_token))\n}\n\nconst onSessionEnding = () => {\n store.dispatch(actions.auth.sessionEnding(true))\n}\n\nconst onLogin = ({ access_token, payload }) => {\n const user = {\n id: payload.sub,\n email: payload.email,\n lastname: payload.family_name,\n firstname: payload.given_name,\n members: payload.members,\n roles: payload.roles,\n }\n store.dispatch(actions.auth.signedIn(access_token, user))\n}\n\nconst onLogout = () => {\n store.dispatch(actions.auth.signOut())\n}\n\nconst loadConfyOptions = () => store.dispatch(actions.config.load())\n\nconst getConfyAuth = options => {\n const auth = getAuth(options.oidc)\n auth.on('signedIn', onLogin)\n // auth.on('signedIn', registerLogout(auth))\n auth.on('tokensRefreshed', refreshTokens)\n auth.on('signedOut', onLogout)\n auth.on('sessionEnding', onSessionEnding)\n auth.on('error', onAuthError)\n return auth\n}\n\nconst ConfySetup = ({ modules, theme }) => {\n const [confyProps, setConfyProps] = useState()\n\n useEffect(() => {\n const initConfy = async () => {\n api.init(getApis(modules))\n const options = await loadConfyOptions()\n console.log(`Confy mounted`)\n setConfyProps({\n auth: getConfyAuth(options),\n modules: getAvailableModules(options.modules, modules),\n apiOptions: { authUrl: options.authUrl },\n theme,\n })\n }\n initConfy()\n }, [])\n\n if (!confyProps) return\n\n return <Confy {...confyProps} />\n}\n\nConfySetup.propTypes = {\n modules: PropTypes.array.isRequired,\n theme: PropTypes.object.isRequired,\n}\n\nexport default ConfySetup\n"],"names":["generateClassName","createGenerateClassName","Confy","_ref","modules","auth","theme","_ref$apiOptions","apiOptions","queryClient","QueryClient","defaultOptions","queries","retry","history","createBrowserHistory","api","setOptions","_objectSpread","getBearer","store","getState","token","React","createElement","StylesProvider","injectFirst","ConfyProvider","value","confy","Provider","AuthProvider","ModulesProvider","RoutesProvider","getRoutes","MenuProvider","menu","getMenu","LanguageProvider","messages","window","I18N","NotificationProvider","StyledEngineProvider","ThemeProvider","defaultTheme","CssBaseline","Router","ErrorBoundary","QueryClientProvider","client","LocalizationProvider","dateAdapter","AdapterDayjs","App","ReactQueryDevtools","initialIsOpen","propTypes","PropTypes","array","isRequired","object","onAuthError","event","error","dispatch","actions","core","showNotification","NOTIFICATION_VARIANTS","error_description","message","location","replace","refreshTokens","_ref2","access_token","refreshToken","onSessionEnding","sessionEnding","onLogin","_ref3","payload","user","id","sub","email","lastname","family_name","firstname","given_name","members","roles","signedIn","onLogout","signOut","loadConfyOptions","config","load","getConfyAuth","options","getAuth","oidc","on","ConfySetup","_ref4","_useState","useState","_useState2","_slicedToArray","confyProps","setConfyProps","useEffect","initConfy","_ref5","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","init","getApis","sent","console","log","getAvailableModules","authUrl","stop","apply","arguments"],"mappings":"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"}
|