@ordentco/addons-auth-provider 0.9.136-mfe → 0.9.137-mfe

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.
@@ -27,7 +27,7 @@ interface AuthContextProps {
27
27
  holdingID: string | null;
28
28
  isLoading: boolean | null;
29
29
  onboardingTourStatus: OnboardingTourStatus;
30
- guard: () => void;
30
+ guard: (useCache?: boolean) => Promise<void>;
31
31
  passwordLogin: (username: string, password: string, tokenFCM: string) => Promise<void>;
32
32
  ssoLogin: (userId: string, sessionId: string, dtTime: string, onError?: (errorMessage: string) => void) => Promise<void>;
33
33
  logout: (type?: string) => Promise<void>;
package/dist/src/auth.js CHANGED
@@ -113,8 +113,18 @@ var AUTH_INITIAL_VALUES = {
113
113
  isIntraday: false,
114
114
  menus: [],
115
115
  loggedIn: false,
116
+ //@ts-ignore
116
117
  guard: function () {
117
- throw new Error("Function not implemented.");
118
+ var args_1 = [];
119
+ for (var _i = 0; _i < arguments.length; _i++) {
120
+ args_1[_i] = arguments[_i];
121
+ }
122
+ return __awaiter(void 0, __spreadArray([], args_1, true), void 0, function (useCache) {
123
+ if (useCache === void 0) { useCache = false; }
124
+ return __generator(this, function (_a) {
125
+ throw new Error("Function not implemented.");
126
+ });
127
+ });
118
128
  },
119
129
  passwordLogin: function () { return __awaiter(void 0, void 0, void 0, function () {
120
130
  return __generator(this, function (_a) {
@@ -254,12 +264,48 @@ var AuthProvider = function (_a) {
254
264
  var _7 = (0, react_1.useState)(""), region = _7[0], setRegion = _7[1];
255
265
  var prevPathnameRef = (0, react_1.useRef)("");
256
266
  var loggedIn = (0, react_1.useMemo)(function () { return !!token; }, [token]);
257
- var guard = (0, react_1.useCallback)(function () { return __awaiter(void 0, void 0, void 0, function () {
258
- var response, error_1, agent, menu, newMenuData, newMenus, refreshToken_1, refresh, newToken, newRefreshToken, _a, username_1, companyCode_1, userID_1, companyID_1, a, productRoles, privilegesRecords, productTypeEnumValuesFromProductRoles, productTypeEnumValuesFromHardcode, remainingProductTypeEnum, productTypeEnumKeyFromHardcode, productTypeEnumKeyFromProductRoles, allProductTypeEnum, menuDataMultipaymentCreate_1, menuDataMultipayment, multipaymentProducts;
259
- var _b, _c, _d, _e, _f, _g, _h, _j;
260
- return __generator(this, function (_k) {
261
- switch (_k.label) {
267
+ var guard = (0, react_1.useCallback)(function (useCache) { return __awaiter(void 0, void 0, void 0, function () {
268
+ var sessionUserDataStr, sessionUserData_1, sessionValidatedAt, response, error_1, agent, menu, newMenuData, newMenus, refreshToken_1, refresh, newToken, newRefreshToken, _a, username_1, companyCode_1, userID_1, companyID_1, a, productRoles, privilegesRecords, productTypeEnumValuesFromProductRoles, productTypeEnumValuesFromHardcode, remainingProductTypeEnum, productTypeEnumKeyFromHardcode, productTypeEnumKeyFromProductRoles, allProductTypeEnum, menuDataMultipaymentCreate_1, menuDataMultipayment, multipaymentProducts, currentTimestamp, sessionUserData;
269
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
270
+ return __generator(this, function (_w) {
271
+ switch (_w.label) {
262
272
  case 0:
273
+ sessionUserDataStr = sessionStorage.getItem("session-user-data");
274
+ if (useCache && sessionUserDataStr) {
275
+ try {
276
+ sessionUserData_1 = JSON.parse(sessionUserDataStr);
277
+ sessionValidatedAt = sessionUserData_1.sessionValidatedAt;
278
+ if (sessionValidatedAt && Date.now() - sessionValidatedAt < SESSION_VALIDITY_MS) {
279
+ // Restore all data from session storage
280
+ setMenus(sessionUserData_1.menus || []);
281
+ setMenuData(sessionUserData_1.menuData || []);
282
+ setRoleID(sessionUserData_1.roleID);
283
+ setRoleIDs(sessionUserData_1.roleIDs || []);
284
+ setCompanyID(sessionUserData_1.companyID);
285
+ setCompanyName(sessionUserData_1.companyName || "");
286
+ setUserID(sessionUserData_1.userID);
287
+ setHoldingID(sessionUserData_1.holdingID);
288
+ setUsername(sessionUserData_1.username || "Guest");
289
+ setUserType(sessionUserData_1.userType || null);
290
+ setCountryCode(sessionUserData_1.countryCode || "");
291
+ setCompanyCode(sessionUserData_1.companyCode || "");
292
+ setRegion(sessionUserData_1.region || "");
293
+ setUserMode(sessionUserData_1.userMode || "");
294
+ setCompanyLevel(sessionUserData_1.companyLevel || "");
295
+ setIsIntraday(sessionUserData_1.isIntraday || false);
296
+ setOnboardingTourStatus(sessionUserData_1.onboardingTourStatus || onboarding_1.OnboardingTourStatus.Done);
297
+ setAuthorities(new Map(sessionUserData_1.authorities || []));
298
+ setProductAuthorities(sessionUserData_1.productAuthorities || initialProductAuthorities);
299
+ setIsAuthoritiesReady(true);
300
+ setSessionLastValidatedAt(sessionValidatedAt);
301
+ return [2 /*return*/]; // Exit early, session is still fresh
302
+ }
303
+ }
304
+ catch (error) {
305
+ console.error("Error parsing session user data:", error);
306
+ // Continue to validation flow if parsing fails
307
+ }
308
+ }
263
309
  // Session Freshness Check
264
310
  if (sessionLastValidatedAt &&
265
311
  Date.now() - sessionLastValidatedAt < SESSION_VALIDITY_MS) {
@@ -275,15 +321,15 @@ var AuthProvider = function (_a) {
275
321
  }
276
322
  // --- Start Validation Flow ---
277
323
  setIsAuthoritiesReady(false);
278
- _k.label = 1;
324
+ _w.label = 1;
279
325
  case 1:
280
- _k.trys.push([1, 3, , 4]);
326
+ _w.trys.push([1, 3, , 4]);
281
327
  return [4 /*yield*/, authService.validateToken()];
282
328
  case 2:
283
- response = _k.sent();
329
+ response = _w.sent();
284
330
  return [3 /*break*/, 4];
285
331
  case 3:
286
- error_1 = _k.sent();
332
+ error_1 = _w.sent();
287
333
  agent = typeof window !== "undefined" && localStorage.getItem("agent");
288
334
  if (agent === "qlola" &&
289
335
  ![200].includes(((_c = (_b = error_1 === null || error_1 === void 0 ? void 0 : error_1.response) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.code) || ((_d = error_1 === null || error_1 === void 0 ? void 0 : error_1.response) === null || _d === void 0 ? void 0 : _d.status))) {
@@ -298,7 +344,7 @@ var AuthProvider = function (_a) {
298
344
  return [3 /*break*/, 4];
299
345
  case 4: return [4 /*yield*/, authService.validateMenu(token)];
300
346
  case 5:
301
- menu = _k.sent();
347
+ menu = _w.sent();
302
348
  if (menu.data.code !== 200 || !menu)
303
349
  setAlertMenuError(true);
304
350
  newMenuData = (0, get_1.default)(menu, "data.data", []);
@@ -313,24 +359,25 @@ var AuthProvider = function (_a) {
313
359
  if (!refreshToken_1) return [3 /*break*/, 7];
314
360
  return [4 /*yield*/, authService.refreshToken(refreshToken_1)];
315
361
  case 6:
316
- refresh = _k.sent();
362
+ refresh = _w.sent();
317
363
  newToken = (_f = (_e = refresh === null || refresh === void 0 ? void 0 : refresh.data) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.accessToken;
318
364
  newRefreshToken = (_h = (_g = refresh === null || refresh === void 0 ? void 0 : refresh.data) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h.refreshToken;
319
365
  localStorage.setItem("access-token", newToken);
320
366
  localStorage.setItem("refresh-token", newRefreshToken);
321
367
  setToken(newToken);
322
- _k.label = 7;
368
+ _w.label = 7;
323
369
  case 7: return [3 /*break*/, 9];
324
370
  case 8:
325
371
  if (response.status !== 200) {
326
372
  localStorage.removeItem("access-token");
327
373
  localStorage.removeItem("refresh-token");
374
+ sessionStorage.removeItem("session-user-data");
328
375
  setToken(function () { return null; });
329
376
  setSessionLastValidatedAt(null);
330
377
  router === null || router === void 0 ? void 0 : router.push("".concat(loginRoute, "?logout=true"));
331
378
  return [2 /*return*/];
332
379
  }
333
- _k.label = 9;
380
+ _w.label = 9;
334
381
  case 9:
335
382
  if (response === null || response === void 0 ? void 0 : response.data) {
336
383
  _a = response.data, username_1 = _a.username, companyCode_1 = _a.companyCode, userID_1 = _a.userID, companyID_1 = _a.companyID;
@@ -395,7 +442,31 @@ var AuthProvider = function (_a) {
395
442
  }
396
443
  setProductAuthorities(privilegesRecords);
397
444
  setIsAuthoritiesReady(true);
398
- setSessionLastValidatedAt(Date.now());
445
+ currentTimestamp = Date.now();
446
+ setSessionLastValidatedAt(currentTimestamp);
447
+ sessionUserData = {
448
+ sessionValidatedAt: currentTimestamp,
449
+ menus: newMenus,
450
+ menuData: newMenuData,
451
+ roleID: response.data.roleIDs[0],
452
+ roleIDs: response.data.roleIDs,
453
+ companyID: (_k = response.data) === null || _k === void 0 ? void 0 : _k.companyID,
454
+ companyName: (_l = response.data) === null || _l === void 0 ? void 0 : _l.companyName,
455
+ userID: (_m = response.data) === null || _m === void 0 ? void 0 : _m.userID,
456
+ holdingID: (_o = response.data) === null || _o === void 0 ? void 0 : _o.holdingID,
457
+ username: ((_p = response.data) === null || _p === void 0 ? void 0 : _p.username) || "Guest",
458
+ userType: ((_q = response.data) === null || _q === void 0 ? void 0 : _q.userType) || null,
459
+ countryCode: response.data.countryCode,
460
+ companyCode: ((_r = response === null || response === void 0 ? void 0 : response.data) === null || _r === void 0 ? void 0 : _r.companyCode) || "",
461
+ region: response.data.region || "",
462
+ userMode: ((_s = response.data) === null || _s === void 0 ? void 0 : _s.userMode) || "",
463
+ companyLevel: ((_t = response === null || response === void 0 ? void 0 : response.data) === null || _t === void 0 ? void 0 : _t.companyLevel) || "",
464
+ isIntraday: ((_u = response === null || response === void 0 ? void 0 : response.data) === null || _u === void 0 ? void 0 : _u.isIntraday) || false,
465
+ onboardingTourStatus: ((_v = response === null || response === void 0 ? void 0 : response.data) === null || _v === void 0 ? void 0 : _v.onboardingTourStatus) || onboarding_1.OnboardingTourStatus.Done,
466
+ authorities: Array.from(a.entries()), // Convert Map to array for JSON serialization
467
+ productAuthorities: privilegesRecords,
468
+ };
469
+ sessionStorage.setItem("session-user-data", JSON.stringify(sessionUserData));
399
470
  return [2 /*return*/];
400
471
  }
401
472
  });
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ordentco/addons-auth-provider",
3
- "version": "0.9.136-mfe",
3
+ "version": "0.9.137-mfe",
4
4
  "description": "-",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "",
package/src/auth.tsx CHANGED
@@ -63,7 +63,7 @@ interface AuthContextProps {
63
63
  holdingID: string | null;
64
64
  isLoading: boolean | null;
65
65
  onboardingTourStatus: OnboardingTourStatus;
66
- guard: () => void;
66
+ guard: (useCache?: boolean) => Promise<void>;
67
67
  passwordLogin: (
68
68
  username: string,
69
69
  password: string,
@@ -147,7 +147,8 @@ const AUTH_INITIAL_VALUES: AuthContextProps = {
147
147
  isIntraday: false,
148
148
  menus: [],
149
149
  loggedIn: false,
150
- guard: () => {
150
+ //@ts-ignore
151
+ guard: async (useCache = false) => {
151
152
  throw new Error("Function not implemented.");
152
153
  },
153
154
  passwordLogin: async () => {
@@ -279,9 +280,7 @@ export const AuthProvider: React.FC<AuthProviderProps> = ({
279
280
  const [productAuthorities, setProductAuthorities] =
280
281
  useState<ProductAuthoritiesType>(initialProductAuthorities);
281
282
  const [isAuthoritiesReady, setIsAuthoritiesReady] = useState(false);
282
- const [sessionLastValidatedAt, setSessionLastValidatedAt] = useState<
283
- number | null
284
- >(null);
283
+ const [sessionLastValidatedAt, setSessionLastValidatedAt] = useState<number | null>(null);
285
284
  const [menuData, setMenuData] = useState<any>([]);
286
285
  const [action, _setAction] = useState<any>({});
287
286
  const [onLeaveAction, setOnLeaveAction] = useState<any>({});
@@ -292,7 +291,47 @@ export const AuthProvider: React.FC<AuthProviderProps> = ({
292
291
 
293
292
  const loggedIn = useMemo(() => !!token, [token]);
294
293
 
295
- const guard = useCallback(async () => {
294
+ const guard = useCallback(async (useCache?: boolean) => {
295
+ // Session Freshness Check
296
+ const sessionUserDataStr = sessionStorage.getItem("session-user-data");
297
+
298
+ if (useCache && sessionUserDataStr) {
299
+ try {
300
+ const sessionUserData = JSON.parse(sessionUserDataStr);
301
+ const sessionValidatedAt = sessionUserData.sessionValidatedAt;
302
+
303
+ if (sessionValidatedAt && Date.now() - sessionValidatedAt < SESSION_VALIDITY_MS) {
304
+ // Restore all data from session storage
305
+ setMenus(sessionUserData.menus || []);
306
+ setMenuData(sessionUserData.menuData || []);
307
+ setRoleID(sessionUserData.roleID);
308
+ setRoleIDs(sessionUserData.roleIDs || []);
309
+ setCompanyID(sessionUserData.companyID);
310
+ setCompanyName(sessionUserData.companyName || "");
311
+ setUserID(sessionUserData.userID);
312
+ setHoldingID(sessionUserData.holdingID);
313
+ setUsername(sessionUserData.username || "Guest");
314
+ setUserType(sessionUserData.userType || null);
315
+ setCountryCode(sessionUserData.countryCode || "");
316
+ setCompanyCode(sessionUserData.companyCode || "");
317
+ setRegion(sessionUserData.region || "");
318
+ setUserMode(sessionUserData.userMode || "");
319
+ setCompanyLevel(sessionUserData.companyLevel || "");
320
+ setIsIntraday(sessionUserData.isIntraday || false);
321
+ setOnboardingTourStatus(sessionUserData.onboardingTourStatus || OnboardingTourStatus.Done);
322
+ setAuthorities(new Map(sessionUserData.authorities || []));
323
+ setProductAuthorities(sessionUserData.productAuthorities || initialProductAuthorities);
324
+ setIsAuthoritiesReady(true);
325
+ setSessionLastValidatedAt(sessionValidatedAt);
326
+
327
+ return; // Exit early, session is still fresh
328
+ }
329
+ } catch (error) {
330
+ console.error("Error parsing session user data:", error);
331
+ // Continue to validation flow if parsing fails
332
+ }
333
+ }
334
+
296
335
  // Session Freshness Check
297
336
  if (
298
337
  sessionLastValidatedAt &&
@@ -362,6 +401,7 @@ export const AuthProvider: React.FC<AuthProviderProps> = ({
362
401
  } else if (response.status !== 200) {
363
402
  localStorage.removeItem("access-token");
364
403
  localStorage.removeItem("refresh-token");
404
+ sessionStorage.removeItem("session-user-data");
365
405
 
366
406
  setToken(() => null);
367
407
 
@@ -473,8 +513,35 @@ export const AuthProvider: React.FC<AuthProviderProps> = ({
473
513
 
474
514
  setProductAuthorities(privilegesRecords);
475
515
  setIsAuthoritiesReady(true);
476
-
477
- setSessionLastValidatedAt(Date.now());
516
+
517
+ const currentTimestamp = Date.now();
518
+ setSessionLastValidatedAt(currentTimestamp);
519
+
520
+ // Save all user data to session storage
521
+ const sessionUserData = {
522
+ sessionValidatedAt: currentTimestamp,
523
+ menus: newMenus,
524
+ menuData: newMenuData,
525
+ roleID: response.data.roleIDs[0],
526
+ roleIDs: response.data.roleIDs,
527
+ companyID: response.data?.companyID,
528
+ companyName: response.data?.companyName,
529
+ userID: response.data?.userID,
530
+ holdingID: response.data?.holdingID,
531
+ username: response.data?.username || "Guest",
532
+ userType: response.data?.userType || null,
533
+ countryCode: response.data.countryCode,
534
+ companyCode: response?.data?.companyCode || "",
535
+ region: response.data.region || "",
536
+ userMode: response.data?.userMode || "",
537
+ companyLevel: response?.data?.companyLevel || "",
538
+ isIntraday: response?.data?.isIntraday || false,
539
+ onboardingTourStatus: response?.data?.onboardingTourStatus || OnboardingTourStatus.Done,
540
+ authorities: Array.from(a.entries()), // Convert Map to array for JSON serialization
541
+ productAuthorities: privilegesRecords,
542
+ };
543
+
544
+ sessionStorage.setItem("session-user-data", JSON.stringify(sessionUserData));
478
545
  }, [token, authService]);
479
546
 
480
547
  const canIApprove = (