@axa-fr/react-oidc 6.17.1 → 6.18.1

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/README.md CHANGED
@@ -147,6 +147,7 @@ const propTypes = {
147
147
  end_session_endpoint: PropTypes.string,
148
148
  revocation_endpoint: PropTypes.string,
149
149
  check_session_iframe: PropTypes.string,
150
+ issuer: PropTypes.string,
150
151
  }),
151
152
  refresh_time_before_tokens_expiration_in_second: PropTypes.number,
152
153
  service_worker_relative_url: PropTypes.string,
@@ -160,6 +161,7 @@ const propTypes = {
160
161
  onLogoutFromAnotherTab: Function, // Optional, can be set to override the default behavior, this function is triggered when user with the same subject is logged out from another tab when session_monitor is active
161
162
  onLogoutFromSameTab: Function, // Optional, can be set to override the default behavior, this function is triggered when user is logged out from same tab when session_monitor is active
162
163
  token_renew_mode: PropTypes.string, // Optional, update tokens base on the selected token(s) lifetime: "access_token_or_id_token_invalid" (default), "access_token_invalid" , "id_token_invalid"
164
+ logout_tokens_to_invalidate : Array<string> // Optional tokens to invalidate during logout, default: ['access_token', 'refresh_token']
163
165
  }).isRequired,
164
166
  };
165
167
  ```
@@ -1 +1 @@
1
- {"version":3,"file":"Callback.component.d.ts","sourceRoot":"","sources":["../../../src/oidc/core/default-component/Callback.component.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAuB,MAAM,OAAO,CAAC;AAMlE,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,GAAG,CAKxC,CAAC;AAER,QAAA,MAAM,eAAe,EAAE,aAAa,CAAC,GAAG,CA8BvC,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"Callback.component.d.ts","sourceRoot":"","sources":["../../../src/oidc/core/default-component/Callback.component.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAuB,MAAM,OAAO,CAAC;AAMlE,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,GAAG,CAKxC,CAAC;AAER,QAAA,MAAM,eAAe,EAAE,aAAa,CAAC,GAAG,CA+BvC,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -33,6 +33,7 @@ const CallbackManager = ({ callBackError, callBackSuccess, configurationName, wi
33
33
  }
34
34
  catch (error) {
35
35
  if (isMounted) {
36
+ console.warn(error);
36
37
  setIsError(true);
37
38
  }
38
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Callback.component.js","sourceRoot":"","sources":["../../../src/oidc/core/default-component/Callback.component.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iCAAkE;AAElE,iEAA2D;AAC3D,2DAA2D;AAC3D,sGAAmE;AAE5D,MAAM,eAAe,GAAuB,GAAG,EAAE,CAAC,CAAC,8CAAK,SAAS,EAAC,eAAe,gBACtF,+CAAK,SAAS,EAAC,0BAA0B,iBACvC,6CAAI,SAAS,EAAC,sBAAsB,6CAA6B,EACjE,4CAAG,SAAS,EAAC,wBAAwB,iEAAgD,KACjF,IACF,CAAC,CAAC;AALK,QAAA,eAAe,mBAKpB;AAER,MAAM,eAAe,GAAuB,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,EAAE,EAAE;IACvH,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAC9C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,MAAM,iBAAiB,GAAG,GAAS,EAAE;YACnC,MAAM,OAAO,GAAG,4BAAW,CAAC,GAAG,CAAC;YAChC,IAAI;gBACF,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC,kBAAkB,EAAE,CAAC;gBAC/E,MAAM,OAAO,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,IAAA,gCAAgB,GAAE,CAAC;gBAC/E,OAAO,CAAC,YAAY,CAAC,YAAY,IAAI,GAAG,CAAC,CAAC;aAC3C;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,SAAS,EAAE;oBACb,UAAU,CAAC,IAAI,CAAC,CAAC;iBAClB;aACJ;QACH,CAAC,CAAA,CAAC;QACF,iBAAiB,EAAE,CAAC;QACpB,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,sBAAsB,GAAG,aAAa,IAAI,wCAAmB,CAAC;IACpE,MAAM,wBAAwB,GAAG,eAAe,IAAI,uBAAe,CAAC;IAEpE,IAAI,OAAO,EAAE;QACX,OAAO,uBAAC,sBAAsB,IAAC,iBAAiB,EAAE,iBAAiB,GAAI,CAAC;KACzE;IAED,OAAO,uBAAC,wBAAwB,IAAC,iBAAiB,EAAE,iBAAiB,GAAI,CAAC;AAC5E,CAAC,CAAC;AAEF,kBAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"Callback.component.js","sourceRoot":"","sources":["../../../src/oidc/core/default-component/Callback.component.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iCAAkE;AAElE,iEAA2D;AAC3D,2DAA2D;AAC3D,sGAAmE;AAE5D,MAAM,eAAe,GAAuB,GAAG,EAAE,CAAC,CAAC,8CAAK,SAAS,EAAC,eAAe,gBACtF,+CAAK,SAAS,EAAC,0BAA0B,iBACvC,6CAAI,SAAS,EAAC,sBAAsB,6CAA6B,EACjE,4CAAG,SAAS,EAAC,wBAAwB,iEAAgD,KACjF,IACF,CAAC,CAAC;AALK,QAAA,eAAe,mBAKpB;AAER,MAAM,eAAe,GAAuB,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,EAAE,EAAE;IACvH,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAC9C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,MAAM,iBAAiB,GAAG,GAAS,EAAE;YACnC,MAAM,OAAO,GAAG,4BAAW,CAAC,GAAG,CAAC;YAChC,IAAI;gBACF,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC,kBAAkB,EAAE,CAAC;gBAC/E,MAAM,OAAO,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,IAAA,gCAAgB,GAAE,CAAC;gBAC/E,OAAO,CAAC,YAAY,CAAC,YAAY,IAAI,GAAG,CAAC,CAAC;aAC3C;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,SAAS,EAAE;oBACb,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACpB,UAAU,CAAC,IAAI,CAAC,CAAC;iBAClB;aACJ;QACH,CAAC,CAAA,CAAC;QACF,iBAAiB,EAAE,CAAC;QACpB,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,sBAAsB,GAAG,aAAa,IAAI,wCAAmB,CAAC;IACpE,MAAM,wBAAwB,GAAG,eAAe,IAAI,uBAAe,CAAC;IAEpE,IAAI,OAAO,EAAE;QACX,OAAO,uBAAC,sBAAsB,IAAC,iBAAiB,EAAE,iBAAiB,GAAI,CAAC;KACzE;IAED,OAAO,uBAAC,wBAAwB,IAAC,iBAAiB,EAAE,iBAAiB,GAAI,CAAC;AAC5E,CAAC,CAAC;AAEF,kBAAe,eAAe,CAAC"}
@@ -1,4 +1,8 @@
1
1
  import { StringMap } from './types.js';
2
+ export declare const oidcLogoutTokens: {
3
+ access_token: string;
4
+ refresh_token: string;
5
+ };
2
6
  export declare const destroyAsync: (oidc: any) => (status: any) => Promise<void>;
3
- export declare const logoutAsync: (oidc: any, oidcDatabase: any) => (callbackPathOrUrl?: string | null | undefined, extras?: StringMap) => Promise<void>;
7
+ export declare const logoutAsync: (oidc: any, oidcDatabase: any, fetch: any, window: any, console: any) => (callbackPathOrUrl?: string | null | undefined, extras?: StringMap) => Promise<void>;
4
8
  //# sourceMappingURL=logout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/logout.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,eAAO,MAAM,YAAY,+CAexB,CAAC;AAEF,eAAO,MAAM,WAAW,yDAAqD,MAAM,GAAG,IAAI,GAAG,SAAS,WAAsB,SAAS,kBAuEpI,CAAC"}
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/logout.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,eAAO,MAAM,gBAAgB;;;CAG5B,CAAC;AAEF,eAAO,MAAM,YAAY,+CAexB,CAAC;AAEF,eAAO,MAAM,WAAW,gGAA6E,MAAM,GAAG,IAAI,GAAG,SAAS,WAAsB,SAAS,kBAwE5J,CAAC"}
@@ -12,11 +12,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.logoutAsync = exports.destroyAsync = void 0;
15
+ exports.logoutAsync = exports.destroyAsync = exports.oidcLogoutTokens = void 0;
16
16
  const initSession_js_1 = require("./initSession.js");
17
17
  const initWorker_js_1 = require("./initWorker.js");
18
18
  const requests_js_1 = require("./requests.js");
19
19
  const timer_js_1 = __importDefault(require("./timer.js"));
20
+ exports.oidcLogoutTokens = {
21
+ access_token: 'access_token',
22
+ refresh_token: 'refresh_token',
23
+ };
20
24
  const destroyAsync = (oidc) => (status) => __awaiter(void 0, void 0, void 0, function* () {
21
25
  timer_js_1.default.clearTimeout(oidc.timeoutId);
22
26
  oidc.timeoutId = null;
@@ -35,7 +39,7 @@ const destroyAsync = (oidc) => (status) => __awaiter(void 0, void 0, void 0, fun
35
39
  oidc.userInfo = null;
36
40
  });
37
41
  exports.destroyAsync = destroyAsync;
38
- const logoutAsync = (oidc, oidcDatabase) => (callbackPathOrUrl = undefined, extras = null) => __awaiter(void 0, void 0, void 0, function* () {
42
+ const logoutAsync = (oidc, oidcDatabase, fetch, window, console) => (callbackPathOrUrl = undefined, extras = null) => __awaiter(void 0, void 0, void 0, function* () {
39
43
  const configuration = oidc.configuration;
40
44
  const oidcServerConfiguration = yield oidc.initAsync(configuration.authority, configuration.authority_configuration);
41
45
  if (callbackPathOrUrl && (typeof callbackPathOrUrl !== 'string')) {
@@ -55,13 +59,13 @@ const logoutAsync = (oidc, oidcDatabase) => (callbackPathOrUrl = undefined, extr
55
59
  if (revocationEndpoint) {
56
60
  const promises = [];
57
61
  const accessToken = oidc.tokens.accessToken;
58
- if (accessToken) {
59
- const revokeAccessTokenPromise = (0, requests_js_1.performRevocationRequestAsync)(revocationEndpoint, accessToken, requests_js_1.TOKEN_TYPE.access_token, configuration.client_id);
62
+ if (accessToken && configuration.logout_tokens_to_invalidate.includes(exports.oidcLogoutTokens.access_token)) {
63
+ const revokeAccessTokenPromise = (0, requests_js_1.performRevocationRequestAsync)(fetch)(revocationEndpoint, accessToken, requests_js_1.TOKEN_TYPE.access_token, configuration.client_id);
60
64
  promises.push(revokeAccessTokenPromise);
61
65
  }
62
66
  const refreshToken = oidc.tokens.refreshToken;
63
- if (refreshToken) {
64
- const revokeRefreshTokenPromise = (0, requests_js_1.performRevocationRequestAsync)(revocationEndpoint, refreshToken, requests_js_1.TOKEN_TYPE.refresh_token, configuration.client_id);
67
+ if (refreshToken && configuration.logout_tokens_to_invalidate.includes(exports.oidcLogoutTokens.refresh_token)) {
68
+ const revokeRefreshTokenPromise = (0, requests_js_1.performRevocationRequestAsync)(fetch)(revocationEndpoint, refreshToken, requests_js_1.TOKEN_TYPE.refresh_token, configuration.client_id);
65
69
  promises.push(revokeRefreshTokenPromise);
66
70
  }
67
71
  if (promises.length > 0) {
@@ -70,6 +74,7 @@ const logoutAsync = (oidc, oidcDatabase) => (callbackPathOrUrl = undefined, extr
70
74
  }
71
75
  }
72
76
  catch (exception) {
77
+ console.warn('logoutAsync: error when revoking tokens, if the error persist, you ay configure property logout_tokens_to_invalidate from configuration to avoid this error');
73
78
  console.warn(exception);
74
79
  }
75
80
  // @ts-ignore
@@ -1 +1 @@
1
- {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/oidc/vanilla/logout.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qDAA+C;AAC/C,mDAAkD;AAClD,+CAA0E;AAC1E,0DAA+B;AAGxB,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAO,MAAM,EAAE,EAAE;IACnD,kBAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACtB,IAAI,IAAI,CAAC,kBAAkB,EAAE;QACzB,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;KAClC;IACD,MAAM,aAAa,GAAG,MAAM,IAAA,+BAAe,EAAC,IAAI,CAAC,aAAa,CAAC,2BAA2B,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACpH,IAAI,CAAC,aAAa,EAAE;QAChB,MAAM,OAAO,GAAG,IAAA,4BAAW,EAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAChF,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;KACpC;SAAM;QACH,MAAM,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;KAC1C;IACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACzB,CAAC,CAAA,CAAC;AAfW,QAAA,YAAY,gBAevB;AAEK,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,CAAO,oBAA+C,SAAS,EAAE,SAAoB,IAAI,EAAE,EAAE;IAC5I,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IACzC,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;IACrH,IAAI,iBAAiB,IAAI,CAAC,OAAO,iBAAiB,KAAK,QAAQ,CAAC,EAAE;QAC9D,iBAAiB,GAAG,SAAS,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;KAC1D;IACD,MAAM,IAAI,GAAG,CAAC,iBAAiB,KAAK,IAAI,IAAI,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;IACvK,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,iBAAiB,EAAE;QACnB,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;KAC3F;IACD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;IACtE,aAAa;IACb,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,IAAI;QACA,MAAM,kBAAkB,GAAG,uBAAuB,CAAC,kBAAkB,CAAC;QACtE,IAAI,kBAAkB,EAAE;YACpB,MAAM,QAAQ,GAAG,EAAE,CAAC;YACpB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;YAC5C,IAAI,WAAW,EAAE;gBACb,MAAM,wBAAwB,GAAG,IAAA,2CAA6B,EAAC,kBAAkB,EAAE,WAAW,EAAE,wBAAU,CAAC,YAAY,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;gBAClJ,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;aAC3C;YACD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YAC9C,IAAI,YAAY,EAAE;gBACd,MAAM,yBAAyB,GAAG,IAAA,2CAA6B,EAAC,kBAAkB,EAAE,YAAY,EAAE,wBAAU,CAAC,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;gBACrJ,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;aAC5C;YACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACrB,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;aAC/B;SACJ;KACJ;IAAC,OAAO,SAAS,EAAE;QAChB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC3B;IACD,aAAa;IACb,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9F,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IACtC,6DAA6D;IAC7D,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;QACxD,IAAI,QAAQ,KAAK,IAAI,EAAE;YACnB,aAAa;YACb,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;SACpE;KACJ;IAED,IAAI,uBAAuB,CAAC,kBAAkB,EAAE;QAC5C,IAAI,CAAC,MAAM,EAAE;YACT,MAAM,GAAG;gBACL,aAAa,EAAE,OAAO;aACzB,CAAC;YACF,IAAI,iBAAiB,KAAK,IAAI,EAAE;gBAC5B,MAAM,CAAC,wBAAwB,GAAG,GAAG,CAAC;aACzC;SACJ;QACD,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,MAAM,EAAE;YACR,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBAC/C,IAAI,WAAW,KAAK,EAAE,EAAE;oBACpB,WAAW,IAAI,GAAG,CAAC;iBACtB;qBAAM;oBACH,WAAW,IAAI,GAAG,CAAC;iBACtB;gBACD,WAAW,IAAI,GAAG,GAAG,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;aACxD;SACJ;QACD,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,uBAAuB,CAAC,kBAAkB,GAAG,WAAW,EAAE,CAAC;KACxF;SAAM;QACH,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;KAC5B;AACL,CAAC,CAAA,CAAC;AAvEW,QAAA,WAAW,eAuEtB"}
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/oidc/vanilla/logout.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"AAQA,OAAO,EAIH,MAAM,EACT,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGlF,MAAM,WAAW,yCAAyC;IACtD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,MAAM,EAAC,MAAM,CAAC;CACjB;AAED,qBAAa,qCAAqC;IAC9C,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,kBAAkB,CAAS;gBAEvB,OAAO,EAAE,GAAG;CAS3B;AAUD,oBAAY,aAAa,GAAG;IACxB,YAAY,EAAC,MAAM,CAAC;CACvB,CAAA;AAED,oBAAY,qBAAqB,GAAG;IAChC,YAAY,EAAC,MAAM,CAAC;IACpB,YAAY,EAAC,MAAM,CAAC;CACvB,CAAA;AAYD,qBAAa,IAAI;IACN,aAAa,EAAE,iBAAiB,CAAC;IACjC,QAAQ,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,CAAC,SAAS,CAAiB;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IACjC,OAAO,CAAC,kBAAkB,CAAqB;gBACnC,aAAa,EAAC,iBAAiB,EAAE,iBAAiB,SAAY;IAmC1E,eAAe,CAAC,IAAI,KAAA,GAAE,MAAM;IAM5B,uBAAuB,CAAC,EAAE,KAAA,GAAG,IAAI;IAKjC,YAAY,CAAC,SAAS,KAAA,EAAE,IAAI,KAAA;IAM5B,MAAM,CAAC,WAAW,CAAC,aAAa,KAAA,EAAE,IAAI,SAAY;IAIlD,MAAM,CAAC,GAAG,CAAC,IAAI,SAAY;IAS3B,MAAM,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAc;IAE/B,8BAA8B;IAO9B,mCAAmC;IAO7B,wBAAwB;IAU9B,WAAW,MAAQ;IACb,SAAS,CAAC,SAAS,EAAC,MAAM,EAAE,sBAAsB,EAAC,sBAAsB;IA4B/E,6BAA6B,MAAQ;IAC/B,2BAA2B,IAAI,OAAO,CAAC,OAAO,CAAC;IAkF/C,sBAAsB,CAAC,qBAAqB,KAAA,EAAE,QAAQ,KAAA,EAAE,YAAY,KAAA,EAAE,cAAc,UAAQ;IAIlG,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAQ;IAC7B,UAAU,CAAC,YAAY,GAAC,MAAkB,EAAE,MAAM,GAAC,SAAgB,EAAE,cAAc,UAAQ,EAAE,KAAK,GAAC,MAAkB,EAAE,eAAe,UAAQ;IAcpJ,oBAAoB,EAAG,OAAO,CAAC,GAAG,CAAC,CAAQ;IACrC,kBAAkB,CAAC,aAAa,UAAQ;IA2BxC,sBAAsB,CAAC,YAAY,KAAA,EAAE,KAAK,QAAI,EAAE,YAAY,SAAQ,EAAE,MAAM,EAAC,SAAgB,EAAE,YAAY,KAAA;IAiJ3G,mBAAmB,CAAC,aAAa,KAAA,EAAE,iBAAiB,KAAA,EAAE,aAAa,KAAA,EAAE,YAAY,UAAQ;;;;;;;IAiD/F,uCAAuC,EAAC,OAAO,CAAC,aAAa,CAAC,CAAQ;IACrE,qCAAqC,IAAG,OAAO,CAAC,aAAa,CAAC;IAW/D,eAAe,EAAC,OAAO,CAAC,GAAG,CAAC,CAAQ;IACnC,aAAa;IAWd,kBAAkB,EAAC,OAAO,CAAC,GAAG,CAAC,CAAQ;IAEhC,gBAAgB,CAAE,MAAM,GAAC,SAAgB;IAgBzC,YAAY,CAAC,MAAM,KAAA;IAInB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG;IAQ9C,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG;IAQpD,aAAa,EAAC,OAAO,CAAC,IAAI,CAAC,CAAQ;IAC7B,WAAW,CAAC,iBAAiB,GAAE,MAAM,GAAG,IAAI,GAAG,SAAqB,EAAE,MAAM,GAAE,SAAgB;CAUrG;AAED,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
@@ -96,6 +96,9 @@ class Oidc {
96
96
  if (refresh_time_before_tokens_expiration_in_second > 60) {
97
97
  refresh_time_before_tokens_expiration_in_second = refresh_time_before_tokens_expiration_in_second - Math.floor(Math.random() * 40);
98
98
  }
99
+ if (!configuration.logout_tokens_to_invalidate) {
100
+ configuration.logout_tokens_to_invalidate = ['access_token', 'refresh_token'];
101
+ }
99
102
  this.configuration = Object.assign(Object.assign({}, configuration), { silent_login_uri, monitor_session: (_b = configuration.monitor_session) !== null && _b !== void 0 ? _b : false, refresh_time_before_tokens_expiration_in_second, silent_login_timeout: (_c = configuration.silent_login_timeout) !== null && _c !== void 0 ? _c : 12000, token_renew_mode: (_d = configuration.token_renew_mode) !== null && _d !== void 0 ? _d : parseTokens_js_1.TokenRenewMode.access_token_or_id_token_invalid });
100
103
  this.configurationName = configurationName;
101
104
  this.tokens = null;
@@ -587,7 +590,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
587
590
  if (this.logoutPromise) {
588
591
  return this.logoutPromise;
589
592
  }
590
- this.logoutPromise = (0, logout_js_1.logoutAsync)(this, oidcDatabase)(callbackPathOrUrl, extras);
593
+ this.logoutPromise = (0, logout_js_1.logoutAsync)(this, oidcDatabase, fetch, window, console)(callbackPathOrUrl, extras);
591
594
  return this.logoutPromise.then(result => {
592
595
  this.logoutPromise = null;
593
596
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ export declare const TOKEN_TYPE: {
5
5
  refresh_token: string;
6
6
  access_token: string;
7
7
  };
8
- export declare const performRevocationRequestAsync: (url: any, token: any, token_type: string, client_id: any, timeoutMs?: number) => Promise<{
8
+ export declare const performRevocationRequestAsync: (fetch: any) => (url: any, token: any, token_type: string, client_id: any, timeoutMs?: number) => Promise<{
9
9
  success: boolean;
10
10
  }>;
11
11
  export declare const performTokenRequestAsync: (url: any, details: any, extras: any, oldTokens: any, tokenRenewMode: string, timeoutMs?: number) => Promise<{
@@ -31,7 +31,7 @@ const fetchFromIssuer = (openIdIssuerUrl, timeCacheSecond = oneHourSecond, stora
31
31
  return new oidc_js_1.OidcAuthorizationServiceConfiguration(result);
32
32
  });
33
33
  exports.fetchFromIssuer = fetchFromIssuer;
34
- const internalFetch = (url, headers, timeoutMs = 10000, numberRetry = 0) => __awaiter(void 0, void 0, void 0, function* () {
34
+ const internalFetch = (fetch) => (url, headers, timeoutMs = 10000, numberRetry = 0) => __awaiter(void 0, void 0, void 0, function* () {
35
35
  let response;
36
36
  try {
37
37
  const controller = new AbortController();
@@ -42,7 +42,7 @@ const internalFetch = (url, headers, timeoutMs = 10000, numberRetry = 0) => __aw
42
42
  if (e.message === 'AbortError' ||
43
43
  e.message === 'Network request failed') {
44
44
  if (numberRetry <= 1) {
45
- return yield internalFetch(url, headers, timeoutMs, numberRetry + 1);
45
+ return yield internalFetch(fetch)(url, headers, timeoutMs, numberRetry + 1);
46
46
  }
47
47
  else {
48
48
  throw e;
@@ -59,7 +59,7 @@ exports.TOKEN_TYPE = {
59
59
  refresh_token: 'refresh_token',
60
60
  access_token: 'access_token',
61
61
  };
62
- const performRevocationRequestAsync = (url, token, token_type = exports.TOKEN_TYPE.refresh_token, client_id, timeoutMs = 10000) => __awaiter(void 0, void 0, void 0, function* () {
62
+ const performRevocationRequestAsync = (fetch) => (url, token, token_type = exports.TOKEN_TYPE.refresh_token, client_id, timeoutMs = 10000) => __awaiter(void 0, void 0, void 0, function* () {
63
63
  const details = {
64
64
  token,
65
65
  token_type_hint: token_type,
@@ -72,7 +72,7 @@ const performRevocationRequestAsync = (url, token, token_type = exports.TOKEN_TY
72
72
  formBody.push(`${encodedKey}=${encodedValue}`);
73
73
  }
74
74
  const formBodyString = formBody.join('&');
75
- const response = yield internalFetch(url, {
75
+ const response = yield internalFetch(fetch)(url, {
76
76
  method: 'POST',
77
77
  headers: {
78
78
  'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
@@ -100,7 +100,7 @@ const performTokenRequestAsync = (url, details, extras, oldTokens, tokenRenewMod
100
100
  formBody.push(`${encodedKey}=${encodedValue}`);
101
101
  }
102
102
  const formBodyString = formBody.join('&');
103
- const response = yield internalFetch(url, {
103
+ const response = yield internalFetch(fetch)(url, {
104
104
  method: 'POST',
105
105
  headers: {
106
106
  'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
@@ -150,7 +150,7 @@ const performFirstTokenRequestAsync = (storage) => (url, extras, tokenRenewMode,
150
150
  formBody.push(`${encodedKey}=${encodedValue}`);
151
151
  }
152
152
  const formBodyString = formBody.join('&');
153
- const response = yield internalFetch(url, {
153
+ const response = yield internalFetch(fetch)(url, {
154
154
  method: 'POST',
155
155
  headers: {
156
156
  'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
@@ -1 +1 @@
1
- {"version":3,"file":"requests.js","sourceRoot":"","sources":["../../src/oidc/vanilla/requests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"requests.js","sourceRoot":"","sources":["../../src/oidc/vanilla/requests.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export declare type LogoutToken = 'access_token' | 'refresh_token';
1
2
  export declare type OidcConfiguration = {
2
3
  client_id: string;
3
4
  redirect_uri: string;
@@ -18,6 +19,7 @@ export declare type OidcConfiguration = {
18
19
  storage?: Storage;
19
20
  monitor_session?: boolean;
20
21
  token_renew_mode?: string;
22
+ logout_tokens_to_invalidate?: Array<LogoutToken>;
21
23
  };
22
24
  export interface StringMap {
23
25
  [key: string]: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/types.ts"],"names":[],"mappings":"AACA,oBAAY,iBAAiB,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAC,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAC,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAC,MAAM,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C,CAAC,EAAE,MAAM,CAAC;IACpD,uBAAuB,CAAC,EAAE,sBAAsB,CAAC;IACjD,+CAA+C,CAAC,EAAE,MAAM,CAAC;IACzD,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,2BAA2B,CAAC,EAAC,MAAM,CAAC;IACpC,mBAAmB,CAAC,EAAC,OAAO,CAAC;IAC7B,2CAA2C,CAAC,EAAC,OAAO,CAAC;IACrD,MAAM,CAAC,EAAC,SAAS,CAAC;IAClB,oBAAoB,CAAC,EAAC,SAAS,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,SAAS;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACnC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAC,MAAM,CAAC;IAC7B,MAAM,EAAC,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/types.ts"],"names":[],"mappings":"AACA,oBAAY,WAAW,GAAG,cAAc,GAAG,eAAe,CAAC;AAE3D,oBAAY,iBAAiB,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAC,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAC,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAC,MAAM,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C,CAAC,EAAE,MAAM,CAAC;IACpD,uBAAuB,CAAC,EAAE,sBAAsB,CAAC;IACjD,+CAA+C,CAAC,EAAE,MAAM,CAAC;IACzD,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,2BAA2B,CAAC,EAAC,MAAM,CAAC;IACpC,mBAAmB,CAAC,EAAC,OAAO,CAAC;IAC7B,2CAA2C,CAAC,EAAC,OAAO,CAAC;IACrD,MAAM,CAAC,EAAC,SAAS,CAAC;IAClB,oBAAoB,CAAC,EAAC,SAAS,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2BAA2B,CAAC,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC;CACnD,CAAC;AAEF,MAAM,WAAW,SAAS;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACnC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAC,MAAM,CAAC;IAC7B,MAAM,EAAC,MAAM,CAAC;CACjB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axa-fr/react-oidc",
3
- "version": "6.17.1",
3
+ "version": "6.18.1",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "jsnext:main": "dist/index.js",
@@ -72,7 +72,7 @@
72
72
  "eslint-plugin-react": "^7.31.10",
73
73
  "eslint-plugin-simple-import-sort": "^8.0.0",
74
74
  "jsdom": "21.1.1",
75
- "msw": "0.46.1",
75
+ "msw": "1.2.1",
76
76
  "react": "^18.2.0",
77
77
  "react-dom": "^18.2.0",
78
78
  "react-router-dom": "6.3.0",
@@ -23,6 +23,7 @@ const CallbackManager: ComponentType<any> = ({ callBackError, callBackSuccess, c
23
23
  history.replaceState(callbackPath || '/');
24
24
  } catch (error) {
25
25
  if (isMounted) {
26
+ console.warn(error);
26
27
  setIsError(true);
27
28
  }
28
29
  }
@@ -0,0 +1,66 @@
1
+ import React from 'react'
2
+ import '@testing-library/jest-dom'
3
+ import { logoutAsync } from "./logout";
4
+ import { describe, it, expect } from 'vitest';
5
+ import { vi } from 'vitest';
6
+
7
+
8
+ describe('Logout test suite', () => {
9
+
10
+ it.each([
11
+ {logout_tokens_to_invalidate:['access_token', 'refresh_token'], expectedResults: ["token=abcd&token_type_hint=access_token&client_id=interactive.public.short","token=abdc&token_type_hint=refresh_token&client_id=interactive.public.short"]},
12
+ {logout_tokens_to_invalidate:['refresh_token'], expectedResults: ["token=abdc&token_type_hint=refresh_token&client_id=interactive.public.short"]},
13
+ {logout_tokens_to_invalidate:['access_token'], expectedResults: ["token=abcd&token_type_hint=access_token&client_id=interactive.public.short"]},
14
+ {logout_tokens_to_invalidate:[], expectedResults: []},
15
+ ])('Logout should revocate tokens $logout_tokens_to_invalidate', async ({ logout_tokens_to_invalidate, expectedResults}) => {
16
+
17
+ const configuration = {
18
+ client_id: 'interactive.public.short',
19
+ redirect_uri: 'http://localhost:4200/authentication/callback',
20
+ scope: 'openid profile email api offline_access',
21
+ authority: 'http://api',
22
+ refresh_time_before_tokens_expiration_in_second: 70,
23
+ logout_tokens_to_invalidate
24
+ };
25
+
26
+ const fetch = (url, data) => {
27
+ if(url === "http://api/connect/revocation") {
28
+ return Promise.resolve({status: 200});
29
+ }
30
+ return Promise.resolve({
31
+ status : 200,
32
+ });
33
+ };
34
+
35
+ const mockFetchFn = vi.fn().mockImplementation(fetch)
36
+
37
+ const oidc = {
38
+ configuration,
39
+ tokens : {idToken: "abcd", accessToken: "abcd", refreshToken: "abdc" },
40
+ initAsync: () => Promise.resolve({
41
+ revocationEndpoint: "http://api/connect/revocation",
42
+ endSessionEndpoint: "http://api/connect/endsession",
43
+ }),
44
+ destroyAsync: () => Promise.resolve(),
45
+ logoutSameTabAsync: () => Promise.resolve(),
46
+ };
47
+
48
+ const oidcDatabase = {default: () => oidc};
49
+
50
+ const window = {
51
+ location: {
52
+ href: "",
53
+ origin: "http://localhost:4200"
54
+ }
55
+ }
56
+
57
+ await logoutAsync(oidc, oidcDatabase, mockFetchFn, window, console)("/logged_out");
58
+
59
+ // @ts-ignore
60
+
61
+ const results = mockFetchFn.mock.calls.map((call, index) => call[1].body)
62
+
63
+ expect(results).toEqual(expectedResults);
64
+ expect(window.location.href).toBe("http://api/connect/endsession?id_token_hint=abcd&post_logout_redirect_uri=http%3A%2F%2Flocalhost%3A4200%2Flogged_out");
65
+ });
66
+ });
@@ -0,0 +1,64 @@
1
+ import React from 'react'
2
+ import '@testing-library/jest-dom'
3
+ import { logoutAsync } from "./logout";
4
+ import { describe, it, expect } from 'vitest';
5
+ import { vi } from 'vitest';
6
+
7
+ describe('Logout test suite', () => {
8
+
9
+ it.each([
10
+ {logout_tokens_to_invalidate:['access_token', 'refresh_token'], expectedResults: ["token=abcd&token_type_hint=access_token&client_id=interactive.public.short","token=abdc&token_type_hint=refresh_token&client_id=interactive.public.short"]},
11
+ {logout_tokens_to_invalidate:['refresh_token'], expectedResults: ["token=abdc&token_type_hint=refresh_token&client_id=interactive.public.short"]},
12
+ {logout_tokens_to_invalidate:['access_token'], expectedResults: ["token=abcd&token_type_hint=access_token&client_id=interactive.public.short"]},
13
+ {logout_tokens_to_invalidate:[], expectedResults: []},
14
+ ])('Logout should revocate tokens $logout_tokens_to_invalidate', async ({ logout_tokens_to_invalidate, expectedResults}) => {
15
+
16
+ const configuration = {
17
+ client_id: 'interactive.public.short',
18
+ redirect_uri: 'http://localhost:4200/authentication/callback',
19
+ scope: 'openid profile email api offline_access',
20
+ authority: 'http://api',
21
+ refresh_time_before_tokens_expiration_in_second: 70,
22
+ logout_tokens_to_invalidate
23
+ };
24
+
25
+ const fetch = (url, data) => {
26
+ if(url === "http://api/connect/revocation") {
27
+ return Promise.resolve({status: 200});
28
+ }
29
+ return Promise.resolve({
30
+ status : 200,
31
+ });
32
+ };
33
+
34
+ const mockFetchFn = vi.fn().mockImplementation(fetch);
35
+
36
+ const oidc = {
37
+ configuration,
38
+ tokens : {idToken: "abcd", accessToken: "abcd", refreshToken: "abdc" },
39
+ initAsync: () => Promise.resolve({
40
+ revocationEndpoint: "http://api/connect/revocation",
41
+ endSessionEndpoint: "http://api/connect/endsession",
42
+ }),
43
+ destroyAsync: () => Promise.resolve(),
44
+ logoutSameTabAsync: () => Promise.resolve(),
45
+ };
46
+
47
+ const oidcDatabase = { default: () => oidc };
48
+
49
+ const window = {
50
+ location: {
51
+ href: "",
52
+ origin: "http://localhost:4200"
53
+ }
54
+ };
55
+
56
+ await logoutAsync(oidc, oidcDatabase, mockFetchFn, window, console)("/logged_out");
57
+
58
+ // @ts-ignore
59
+ const results = mockFetchFn.mock.calls.map((call, index) => call[1].body);
60
+
61
+ expect(results).toEqual(expectedResults);
62
+ expect(window.location.href).toBe("http://api/connect/endsession?id_token_hint=abcd&post_logout_redirect_uri=http%3A%2F%2Flocalhost%3A4200%2Flogged_out");
63
+ });
64
+ });
@@ -4,6 +4,11 @@ import { performRevocationRequestAsync, TOKEN_TYPE } from './requests.js';
4
4
  import timer from './timer.js';
5
5
  import { StringMap } from './types.js';
6
6
 
7
+ export const oidcLogoutTokens = {
8
+ access_token: 'access_token',
9
+ refresh_token: 'refresh_token',
10
+ };
11
+
7
12
  export const destroyAsync = (oidc) => async (status) => {
8
13
  timer.clearTimeout(oidc.timeoutId);
9
14
  oidc.timeoutId = null;
@@ -21,7 +26,7 @@ export const destroyAsync = (oidc) => async (status) => {
21
26
  oidc.userInfo = null;
22
27
  };
23
28
 
24
- export const logoutAsync = (oidc, oidcDatabase) => async (callbackPathOrUrl: string | null | undefined = undefined, extras: StringMap = null) => {
29
+ export const logoutAsync = (oidc, oidcDatabase, fetch, window, console) => async (callbackPathOrUrl: string | null | undefined = undefined, extras: StringMap = null) => {
25
30
  const configuration = oidc.configuration;
26
31
  const oidcServerConfiguration = await oidc.initAsync(configuration.authority, configuration.authority_configuration);
27
32
  if (callbackPathOrUrl && (typeof callbackPathOrUrl !== 'string')) {
@@ -41,13 +46,13 @@ export const logoutAsync = (oidc, oidcDatabase) => async (callbackPathOrUrl: str
41
46
  if (revocationEndpoint) {
42
47
  const promises = [];
43
48
  const accessToken = oidc.tokens.accessToken;
44
- if (accessToken) {
45
- const revokeAccessTokenPromise = performRevocationRequestAsync(revocationEndpoint, accessToken, TOKEN_TYPE.access_token, configuration.client_id);
49
+ if (accessToken && configuration.logout_tokens_to_invalidate.includes(oidcLogoutTokens.access_token)) {
50
+ const revokeAccessTokenPromise = performRevocationRequestAsync(fetch)(revocationEndpoint, accessToken, TOKEN_TYPE.access_token, configuration.client_id);
46
51
  promises.push(revokeAccessTokenPromise);
47
52
  }
48
53
  const refreshToken = oidc.tokens.refreshToken;
49
- if (refreshToken) {
50
- const revokeRefreshTokenPromise = performRevocationRequestAsync(revocationEndpoint, refreshToken, TOKEN_TYPE.refresh_token, configuration.client_id);
54
+ if (refreshToken && configuration.logout_tokens_to_invalidate.includes(oidcLogoutTokens.refresh_token)) {
55
+ const revokeRefreshTokenPromise = performRevocationRequestAsync(fetch)(revocationEndpoint, refreshToken, TOKEN_TYPE.refresh_token, configuration.client_id);
51
56
  promises.push(revokeRefreshTokenPromise);
52
57
  }
53
58
  if (promises.length > 0) {
@@ -55,6 +60,7 @@ export const logoutAsync = (oidc, oidcDatabase) => async (callbackPathOrUrl: str
55
60
  }
56
61
  }
57
62
  } catch (exception) {
63
+ console.warn('logoutAsync: error when revoking tokens, if the error persist, you ay configure property logout_tokens_to_invalidate from configuration to avoid this error');
58
64
  console.warn(exception);
59
65
  }
60
66
  // @ts-ignore
@@ -89,6 +89,9 @@ export class Oidc {
89
89
  if (refresh_time_before_tokens_expiration_in_second > 60) {
90
90
  refresh_time_before_tokens_expiration_in_second = refresh_time_before_tokens_expiration_in_second - Math.floor(Math.random() * 40);
91
91
  }
92
+ if (!configuration.logout_tokens_to_invalidate) {
93
+ configuration.logout_tokens_to_invalidate = ['access_token', 'refresh_token'];
94
+ }
92
95
  this.configuration = {
93
96
  ...configuration,
94
97
  silent_login_uri,
@@ -591,7 +594,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
591
594
  if (this.logoutPromise) {
592
595
  return this.logoutPromise;
593
596
  }
594
- this.logoutPromise = logoutAsync(this, oidcDatabase)(callbackPathOrUrl, extras);
597
+ this.logoutPromise = logoutAsync(this, oidcDatabase, fetch, window, console)(callbackPathOrUrl, extras);
595
598
  return this.logoutPromise.then(result => {
596
599
  this.logoutPromise = null;
597
600
  return result;
@@ -26,7 +26,7 @@ export const fetchFromIssuer = async (openIdIssuerUrl: string, timeCacheSecond =
26
26
  return new OidcAuthorizationServiceConfiguration(result);
27
27
  };
28
28
 
29
- const internalFetch = async (url, headers, timeoutMs = 10000, numberRetry = 0) => {
29
+ const internalFetch = (fetch) => async (url, headers, timeoutMs = 10000, numberRetry = 0) => {
30
30
  let response;
31
31
  try {
32
32
  const controller = new AbortController();
@@ -36,7 +36,7 @@ const internalFetch = async (url, headers, timeoutMs = 10000, numberRetry = 0) =
36
36
  if (e.message === 'AbortError' ||
37
37
  e.message === 'Network request failed') {
38
38
  if (numberRetry <= 1) {
39
- return await internalFetch(url, headers, timeoutMs, numberRetry + 1);
39
+ return await internalFetch(fetch)(url, headers, timeoutMs, numberRetry + 1);
40
40
  } else {
41
41
  throw e;
42
42
  }
@@ -53,7 +53,7 @@ export const TOKEN_TYPE = {
53
53
  access_token: 'access_token',
54
54
  };
55
55
 
56
- export const performRevocationRequestAsync = async (url, token, token_type = TOKEN_TYPE.refresh_token, client_id, timeoutMs = 10000) => {
56
+ export const performRevocationRequestAsync = (fetch) => async (url, token, token_type = TOKEN_TYPE.refresh_token, client_id, timeoutMs = 10000) => {
57
57
  const details = {
58
58
  token,
59
59
  token_type_hint: token_type,
@@ -68,7 +68,7 @@ export const performRevocationRequestAsync = async (url, token, token_type = TOK
68
68
  }
69
69
  const formBodyString = formBody.join('&');
70
70
 
71
- const response = await internalFetch(url, {
71
+ const response = await internalFetch(fetch)(url, {
72
72
  method: 'POST',
73
73
  headers: {
74
74
  'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
@@ -98,7 +98,7 @@ export const performTokenRequestAsync = async (url, details, extras, oldTokens,
98
98
  }
99
99
  const formBodyString = formBody.join('&');
100
100
 
101
- const response = await internalFetch(url, {
101
+ const response = await internalFetch(fetch)(url, {
102
102
  method: 'POST',
103
103
  headers: {
104
104
  'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
@@ -147,7 +147,7 @@ export const performFirstTokenRequestAsync = (storage:any) => async (url, extras
147
147
  formBody.push(`${encodedKey}=${encodedValue}`);
148
148
  }
149
149
  const formBodyString = formBody.join('&');
150
- const response = await internalFetch(url, {
150
+ const response = await internalFetch(fetch)(url, {
151
151
  method: 'POST',
152
152
  headers: {
153
153
  'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
@@ -1,4 +1,6 @@
1
1
 
2
+ export type LogoutToken = 'access_token' | 'refresh_token';
3
+
2
4
  export type OidcConfiguration = {
3
5
  client_id: string;
4
6
  redirect_uri: string;
@@ -19,6 +21,7 @@ export type OidcConfiguration = {
19
21
  storage?: Storage;
20
22
  monitor_session?: boolean;
21
23
  token_renew_mode?: string;
24
+ logout_tokens_to_invalidate?:Array<LogoutToken>;
22
25
  };
23
26
 
24
27
  export interface StringMap {