@spidy092/auth-client 3.1.4 → 3.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,8 +1,10 @@
1
1
  // token.js
2
2
  import { jwtDecode } from "jwt-decode";
3
3
  var accessToken = null;
4
+ var idToken = null;
4
5
  var listeners = /* @__PURE__ */ new Set();
5
6
  var REFRESH_COOKIE = "account_refresh_token";
7
+ var ID_TOKEN_KEY = "auth_id_token";
6
8
  var COOKIE_MAX_AGE = 7 * 24 * 60 * 60;
7
9
  function secureAttribute() {
8
10
  var _a;
@@ -81,12 +83,14 @@ function getToken() {
81
83
  function clearToken() {
82
84
  if (!accessToken) {
83
85
  writeAccessToken(null);
86
+ clearIdToken();
84
87
  clearRefreshToken();
85
88
  return;
86
89
  }
87
90
  const previousToken = accessToken;
88
91
  accessToken = null;
89
92
  writeAccessToken(null);
93
+ clearIdToken();
90
94
  clearRefreshToken();
91
95
  listeners.forEach((listener) => {
92
96
  try {
@@ -96,6 +100,30 @@ function clearToken() {
96
100
  }
97
101
  });
98
102
  }
103
+ function setIdToken(token) {
104
+ idToken = token || null;
105
+ try {
106
+ if (idToken) sessionStorage.setItem(ID_TOKEN_KEY, idToken);
107
+ else sessionStorage.removeItem(ID_TOKEN_KEY);
108
+ } catch {
109
+ }
110
+ }
111
+ function getIdToken() {
112
+ if (idToken) return idToken;
113
+ try {
114
+ idToken = sessionStorage.getItem(ID_TOKEN_KEY) || null;
115
+ } catch {
116
+ idToken = null;
117
+ }
118
+ return idToken;
119
+ }
120
+ function clearIdToken() {
121
+ idToken = null;
122
+ try {
123
+ sessionStorage.removeItem(ID_TOKEN_KEY);
124
+ } catch {
125
+ }
126
+ }
99
127
  var REFRESH_TOKEN_KEY = "auth_refresh_token";
100
128
  var _persistRefreshToken = false;
101
129
  function enableRefreshTokenPersistence(enabled) {
@@ -441,6 +469,7 @@ async function logout(options = {}) {
441
469
  const { clientKey, authBaseUrl, accountUiUrl } = getConfig();
442
470
  const scope = options.scope === "client" ? "client" : "sso";
443
471
  const token = getToken();
472
+ const idToken2 = getIdToken();
444
473
  const refreshToken2 = getRefreshToken();
445
474
  console.log("\u{1F6AA} Smart Logout initiated", {
446
475
  mode: isRouterMode() ? "ROUTER" : "CLIENT",
@@ -449,6 +478,7 @@ async function logout(options = {}) {
449
478
  });
450
479
  emitAuthDiagnostic("LOGOUT_INITIATED", "PENDING", "NONE", { clientKey });
451
480
  clearToken();
481
+ clearIdToken();
452
482
  clearRefreshToken();
453
483
  sessionStorage.removeItem("originalApp");
454
484
  sessionStorage.removeItem("returnUrl");
@@ -461,7 +491,7 @@ async function logout(options = {}) {
461
491
  "Authorization": token ? `Bearer ${token}` : "",
462
492
  "Content-Type": "application/json"
463
493
  },
464
- body: JSON.stringify({ refreshToken: refreshToken2, scope })
494
+ body: JSON.stringify({ refreshToken: refreshToken2, idToken: idToken2, scope })
465
495
  });
466
496
  if (!response.ok) {
467
497
  throw new Error(`Logout failed: ${response.status}`);
@@ -495,9 +525,11 @@ async function logout(options = {}) {
495
525
  function handleCallback() {
496
526
  const params = new URLSearchParams(window.location.search);
497
527
  const accessToken2 = params.get("access_token");
528
+ const idToken2 = params.get("id_token");
498
529
  const error = params.get("error");
499
530
  console.log("\u{1F504} Callback handling:", {
500
531
  hasAccessToken: !!accessToken2,
532
+ hasIdToken: !!idToken2,
501
533
  error
502
534
  });
503
535
  if (callbackProcessed) {
@@ -525,6 +557,7 @@ function handleCallback() {
525
557
  }
526
558
  if (accessToken2) {
527
559
  setToken(accessToken2);
560
+ if (idToken2) setIdToken(idToken2);
528
561
  const refreshTokenInUrl = params.get("refresh_token");
529
562
  if (refreshTokenInUrl) {
530
563
  emitAuthDiagnostic("CALLBACK_REFRESH_TOKEN_IGNORED", "WARNING", "REFRESH_TOKEN_IN_URL", {
@@ -533,6 +566,7 @@ function handleCallback() {
533
566
  }
534
567
  const url = new URL(window.location);
535
568
  url.searchParams.delete("access_token");
569
+ url.searchParams.delete("id_token");
536
570
  url.searchParams.delete("refresh_token");
537
571
  url.searchParams.delete("state");
538
572
  url.searchParams.delete("error");
@@ -1596,6 +1630,9 @@ var auth = {
1596
1630
  getToken,
1597
1631
  setToken,
1598
1632
  clearToken,
1633
+ setIdToken,
1634
+ getIdToken,
1635
+ clearIdToken,
1599
1636
  setRefreshToken,
1600
1637
  // ✅ Refresh token for HTTP dev
1601
1638
  getRefreshToken,