@axa-fr/react-oidc 6.0.0-beta15 → 6.0.0-beta16

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.
@@ -18,7 +18,7 @@ let database = {
18
18
  default: {
19
19
  configurationName: "default",
20
20
  tokens: null,
21
- isLogin:null,
21
+ status:null,
22
22
  items:[],
23
23
  oidcServerConfiguration: null
24
24
  }
@@ -65,7 +65,7 @@ function hideTokens(currentDatabaseElement) {
65
65
  tokens.issued_at = currentTimeUnixSecond;
66
66
  }
67
67
  currentDatabaseElement.tokens = tokens;
68
- currentDatabaseElement.isLogin = true;
68
+ currentDatabaseElement.status = "LOGGED_IN";
69
69
  const accessTokenPayload = extractTokenPayload(tokens.access_token);
70
70
  const secureTokens = {
71
71
  ...tokens,
@@ -297,7 +297,7 @@ addEventListener('message', event => {
297
297
  tokens: null,
298
298
  items:[],
299
299
  oidcServerConfiguration: null,
300
- isLogin:null,
300
+ status:null,
301
301
  configurationName: configurationName,
302
302
  };
303
303
  currentDatabase = database[configurationName];
@@ -312,7 +312,7 @@ addEventListener('message', event => {
312
312
  case "clear":
313
313
  currentDatabase.tokens = null;
314
314
  currentDatabase.items = null;
315
- currentDatabase.isLogin = false;
315
+ currentDatabase.status = data.data.status;
316
316
  port.postMessage({configurationName});
317
317
  return;
318
318
  case "init":
@@ -333,7 +333,7 @@ addEventListener('message', event => {
333
333
  if(!currentDatabase.tokens){
334
334
  port.postMessage({
335
335
  tokens:null,
336
- isLogin: currentDatabase.isLogin,
336
+ status: currentDatabase.status,
337
337
  configurationName});
338
338
  } else {
339
339
  const tokens = {
@@ -345,16 +345,11 @@ addEventListener('message', event => {
345
345
  }
346
346
  port.postMessage({
347
347
  tokens,
348
- isLogin: currentDatabase.isLogin,
348
+ status: currentDatabase.status,
349
349
  configurationName
350
350
  });
351
351
  }
352
352
  return;
353
-
354
- /*case "getAccessTokenPayload":
355
- const accessTokenPayload = extractAccessTokenPayload(currentDatabase.tokens.access_token);
356
- port.postMessage({configurationName, accessTokenPayload});
357
- return;*/
358
353
 
359
354
  case "setSessionState":
360
355
  currentDatabase.sessionState = data.data.sessionState;
@@ -1,9 +1,10 @@
1
1
  export declare const initSession: (configurationName: any, redirectUri: any, storage?: Storage) => {
2
2
  saveItemsAsync: (items: any) => Promise<void>;
3
3
  loadItemsAsync: () => Promise<any>;
4
- clearAsync: () => Promise<void>;
4
+ clearAsync: (status: any) => Promise<void>;
5
5
  initAsync: () => Promise<{
6
6
  tokens: any;
7
+ status: any;
7
8
  }>;
8
9
  setTokens: (tokens: any) => void;
9
10
  getTokens: () => string;
@@ -1 +1 @@
1
- {"version":3,"file":"initSession.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/initSession.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;CA+CvB,CAAA"}
1
+ {"version":3,"file":"initSession.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/initSession.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;;CA8CvB,CAAA"}
@@ -46,22 +46,22 @@ var initSession = function (configurationName, redirectUri, storage) {
46
46
  var loadItemsAsync = function () {
47
47
  return Promise.resolve(JSON.parse(storage["oidc_items.".concat(configurationName, ":").concat(redirectUri)]));
48
48
  };
49
- var clearAsync = function () {
50
- storage["oidc.".concat(configurationName, ":").concat(redirectUri)] = JSON.stringify({ tokens: null });
49
+ var clearAsync = function (status) {
50
+ storage["oidc.".concat(configurationName, ":").concat(redirectUri)] = JSON.stringify({ tokens: null, status: status });
51
51
  return Promise.resolve();
52
52
  };
53
53
  var initAsync = function () { return __awaiter(void 0, void 0, void 0, function () {
54
+ var data;
54
55
  return __generator(this, function (_a) {
55
56
  if (!storage["oidc.".concat(configurationName, ":").concat(redirectUri)]) {
56
- storage["oidc.".concat(configurationName, ":").concat(redirectUri)] = JSON.stringify({ tokens: null });
57
- return [2 /*return*/, { tokens: null }];
57
+ storage["oidc.".concat(configurationName, ":").concat(redirectUri)] = JSON.stringify({ tokens: null, status: null });
58
+ return [2 /*return*/, { tokens: null, status: null }];
58
59
  }
59
- return [2 /*return*/, Promise.resolve({ tokens: JSON.parse(storage["oidc.".concat(configurationName, ":").concat(redirectUri)]).tokens })];
60
+ data = JSON.parse(storage["oidc.".concat(configurationName, ":").concat(redirectUri)]);
61
+ return [2 /*return*/, Promise.resolve({ tokens: data.tokens, status: data.status })];
60
62
  });
61
63
  }); };
62
64
  var setTokens = function (tokens) {
63
- //console.log("setTokens");
64
- //console.log(tokens);
65
65
  storage["oidc.".concat(configurationName, ":").concat(redirectUri)] = JSON.stringify({ tokens: tokens });
66
66
  };
67
67
  var setSessionState = function (sessionState) {
@@ -1 +1 @@
1
- {"version":3,"file":"initSession.js","sourceRoot":"","sources":["../../src/oidc/vanilla/initSession.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAM,WAAW,GAAG,UAAC,iBAAiB,EAAE,WAAW,EAAE,OAAsB;IAAtB,wBAAA,EAAA,wBAAsB;IAE9E,IAAM,cAAc,GAAE,UAAC,KAAK;QACxB,OAAO,CAAC,qBAAc,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAClF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAA;IAED,IAAM,cAAc,GAAC;QACjB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAc,iBAAiB,cAAI,WAAW,CAAE,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC,CAAA;IAED,IAAM,UAAU,GAAC;QACb,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,CAAC;QACpF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAA;IAED,IAAM,SAAS,GAAC;;YACZ,IAAG,CAAC,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,EAAC;gBACpD,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,CAAC;gBACpF,sBAAO,EAAC,MAAM,EAAC,IAAI,EAAC,EAAC;aACxB;YACD,sBAAO,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAC;;SAC/G,CAAA;IAED,IAAM,SAAS,GAAG,UAAC,MAAM;QACrB,2BAA2B;QAC3B,sBAAsB;QACtB,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAC,MAAM,QAAA,EAAC,CAAC,CAAC;IACnF,CAAC,CAAA;IAED,IAAM,eAAe,GAAG,UAAC,YAAY;QACjC,OAAO,CAAC,6BAAsB,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,YAAY,CAAC;IACrF,CAAC,CAAA;IAED,IAAM,eAAe,GAAE;QACnB,OAAO,OAAO,CAAC,6BAAsB,iBAAiB,cAAI,WAAW,CAAE,CAAC,CAAC;IAC7E,CAAC,CAAA;IAED,IAAM,SAAS,GAAG;QAEd,IAAG,CAAC,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,EAAC;YACpD,OAAO,IAAI,CAAC;SACf;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/G,CAAC,CAAA;IAED,OAAO,EAAE,cAAc,gBAAA,EAAE,cAAc,gBAAA,EAAE,UAAU,YAAA,EAAE,SAAS,WAAA,EAAE,SAAS,WAAA,EAAE,SAAS,WAAA,EAAE,eAAe,iBAAA,EAAE,eAAe,iBAAA,EAAE,CAAC;AAC7H,CAAC,CAAA;AA/CY,QAAA,WAAW,eA+CvB"}
1
+ {"version":3,"file":"initSession.js","sourceRoot":"","sources":["../../src/oidc/vanilla/initSession.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAM,WAAW,GAAG,UAAC,iBAAiB,EAAE,WAAW,EAAE,OAAsB;IAAtB,wBAAA,EAAA,wBAAsB;IAE9E,IAAM,cAAc,GAAE,UAAC,KAAK;QACxB,OAAO,CAAC,qBAAc,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAClF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAA;IAED,IAAM,cAAc,GAAC;QACjB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAc,iBAAiB,cAAI,WAAW,CAAE,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC,CAAA;IAED,IAAM,UAAU,GAAC,UAAC,MAAM;QACpB,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAC,MAAM,EAAC,IAAI,EAAE,MAAM,QAAA,EAAC,CAAC,CAAC;QAC5F,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAA;IAED,IAAM,SAAS,GAAC;;;YACZ,IAAG,CAAC,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,EAAC;gBACpD,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAC,MAAM,EAAC,IAAI,EAAE,MAAM,EAAC,IAAI,EAAC,CAAC,CAAC;gBACjG,sBAAO,EAAC,MAAM,EAAC,IAAI,EAAE,MAAM,EAAC,IAAI,EAAC,EAAC;aACrC;YACK,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,CAAC,CAAC;YAC7E,sBAAO,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAC;;SACzE,CAAA;IAED,IAAM,SAAS,GAAG,UAAC,MAAM;QACrB,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAC,MAAM,QAAA,EAAC,CAAC,CAAC;IACnF,CAAC,CAAA;IAED,IAAM,eAAe,GAAG,UAAC,YAAY;QACjC,OAAO,CAAC,6BAAsB,iBAAiB,cAAI,WAAW,CAAE,CAAC,GAAG,YAAY,CAAC;IACrF,CAAC,CAAA;IAED,IAAM,eAAe,GAAE;QACnB,OAAO,OAAO,CAAC,6BAAsB,iBAAiB,cAAI,WAAW,CAAE,CAAC,CAAC;IAC7E,CAAC,CAAA;IAED,IAAM,SAAS,GAAG;QAEd,IAAG,CAAC,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,EAAC;YACpD,OAAO,IAAI,CAAC;SACf;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,eAAQ,iBAAiB,cAAI,WAAW,CAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/G,CAAC,CAAA;IAED,OAAO,EAAE,cAAc,gBAAA,EAAE,cAAc,gBAAA,EAAE,UAAU,YAAA,EAAE,SAAS,WAAA,EAAE,SAAS,WAAA,EAAE,SAAS,WAAA,EAAE,eAAe,iBAAA,EAAE,eAAe,iBAAA,EAAE,CAAC;AAC7H,CAAC,CAAA;AA9CY,QAAA,WAAW,eA8CvB"}
@@ -2,10 +2,10 @@ export declare const sleepAsync: (milliseconds: any) => Promise<unknown>;
2
2
  export declare const initWorkerAsync: (serviceWorkerRelativeUrl: any, configurationName: any) => Promise<{
3
3
  saveItemsAsync: (items: any) => Promise<unknown>;
4
4
  loadItemsAsync: () => Promise<unknown>;
5
- clearAsync: () => Promise<unknown>;
5
+ clearAsync: (status: any) => Promise<unknown>;
6
6
  initAsync: (oidcServerConfiguration: any, where: any) => Promise<{
7
7
  tokens: any;
8
- isLogin: any;
8
+ status: any;
9
9
  }>;
10
10
  startKeepAliveServiceWorker: () => void;
11
11
  isServiceWorkerProxyActiveAsync: () => Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"initWorker.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/initWorker.ts"],"names":[],"mappings":"AAmCA,eAAO,MAAM,UAAU,yCAEtB,CAAA;AA+BD,eAAO,MAAM,eAAe;;;;;;;;;;;;;EA8F3B,CAAA"}
1
+ {"version":3,"file":"initWorker.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/initWorker.ts"],"names":[],"mappings":"AAmCA,eAAO,MAAM,UAAU,yCAEtB,CAAA;AA+BD,eAAO,MAAM,eAAe;;;;;;;;;;;;;EAoF3B,CAAA"}
@@ -154,8 +154,8 @@ var initWorkerAsync = function (serviceWorkerRelativeUrl, configurationName) { r
154
154
  }
155
155
  });
156
156
  }); };
157
- clearAsync = function () {
158
- return sendMessageAsync(registration)({ type: "clear", data: null, configurationName: configurationName });
157
+ clearAsync = function (status) {
158
+ return sendMessageAsync(registration)({ type: "clear", data: { status: status }, configurationName: configurationName });
159
159
  };
160
160
  initAsync = function (oidcServerConfiguration, where) { return __awaiter(void 0, void 0, void 0, function () {
161
161
  var result;
@@ -169,7 +169,7 @@ var initWorkerAsync = function (serviceWorkerRelativeUrl, configurationName) { r
169
169
  case 1:
170
170
  result = _a.sent();
171
171
  // @ts-ignore
172
- return [2 /*return*/, { tokens: (0, parseTokens_1.parseOriginalTokens)(result.tokens), isLogin: result.isLogin }];
172
+ return [2 /*return*/, { tokens: (0, parseTokens_1.parseOriginalTokens)(result.tokens), status: result.status }];
173
173
  }
174
174
  });
175
175
  }); };
@@ -1 +1 @@
1
- {"version":3,"file":"initWorker.js","sourceRoot":"","sources":["../../src/oidc/vanilla/initWorker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA2B;AAC3B,6CAAkD;AAElD,SAAS,WAAW;IAChB,IAAI,EAAE,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,EAC7B,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,8DAA8D,CAAC,IAAI,EAAE,CAAC;IACvF,IAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC;QACrB,GAAG,GAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACrC,OAAO,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAE,EAAE,CAAC,EAAC,CAAC;KAC3C;IACD,IAAG,CAAC,CAAC,CAAC,CAAC,KAAG,QAAQ,EAAC;QACf,GAAG,GAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAElC,IAAG,GAAG,IAAE,IAAI,EAAE;YACV,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAG,CAAC,OAAO,EAAC;gBACR,IAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAC,GAAG,CAAC,CAAC;gBACpC,IAAG,MAAM,CAAC,MAAM,GAAC,CAAC,EAAC;oBACf,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;iBACvB;aACJ;YAED,OAAO,EAAC,IAAI,EAAC,OAAO,EAAE,OAAO,SAAA,EAAC,CAAC;SAClC;KACJ;IACD,CAAC,GAAC,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACtE,IAAG,CAAC,GAAG,GAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAE,IAAI,EAAE;QAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAC,CAAC,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KAAC;IACnE,OAAO;QACH,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;QACxB,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;KAChB,CAAC;AACN,CAAC;AAED,IAAI,+BAA+B,GAAG,IAAI,CAAC;AAEpC,IAAM,UAAU,GAAG,UAAC,YAAY;IACnC,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,IAAI,OAAA,eAAK,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,EAAvC,CAAuC,CAAC,CAAA;AAC1E,CAAC,CAAA;AAFY,QAAA,UAAU,cAEtB;AAED,IAAM,SAAS,GAAG;IACd,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAC1C,IAAA,kBAAU,EAAC,GAAG,GAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC,CAAA;AAED,IAAM,+BAA+B,GAAG;IACpC,OAAO,KAAK,CAAC,kCAAkC,EAAE;QAC7C,OAAO,EAAE;YACL,cAAc,EAAE,MAAM;SACzB;KAAC,CAAC;SACF,IAAI,CAAC,UAAC,QAAQ;QACX,OAAO,QAAQ,CAAC,UAAU,KAAK,qBAAqB,CAAC;IACzD,CAAC,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,IAAM,gBAAgB,GAAG,UAAC,YAAY,IAAK,OAAA,UAAC,IAAI;IAC5C,OAAO,IAAI,OAAO,CAAC,UAAS,OAAO,EAAE,MAAM;QACvC,IAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;QAC5C,cAAc,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,KAAK;YAC5C,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;gBAChC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC5B;iBAAM;gBACH,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aACvB;QACL,CAAC,CAAC;QACF,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACP,CAAC,EAZ0C,CAY1C,CAAA;AAEM,IAAM,eAAe,GAAG,UAAM,wBAAwB,EAAE,iBAAiB;;;;;gBAE5E,IAAG,CAAC,SAAS,CAAC,aAAa,IAAE,CAAC,wBAAwB,EAAC;oBACnD,sBAAO,IAAI,EAAC;iBACf;gBACK,KAAkB,WAAW,EAAE,EAA9B,IAAI,UAAA,EAAE,OAAO,aAAA,CAAkB;gBACtC,IAAG,IAAI,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAC,EAAE,EAAC;oBACxC,sBAAO,IAAI,EAAC;iBACf;gBACD,IAAG,IAAI,IAAI,OAAO,EAAC;oBACf,IAAG,CAAC,OAAO,EAAE;wBACT,sBAAO,IAAI,EAAC;qBACf;oBACD,IAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAE,EAAE,EAAE;wBACpC,sBAAO,IAAI,EAAC;qBACf;iBACJ;gBACD,IAAG,IAAI,IAAI,IAAI,EAAC;oBACZ,sBAAO,IAAI,EAAC;iBACf;gBAEoB,qBAAM,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAA;;gBAA/E,YAAY,GAAG,SAAgE;;;;gBAGjF,qBAAM,SAAS,CAAC,aAAa,CAAC,KAAK,EAAA;;gBAAnC,SAAmC,CAAA;;;;gBAGnC,sBAAO,IAAI,EAAC;;gBAGV,cAAc,GAAE,UAAC,KAAK;oBACpB,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,mBAAA,EAAC,CAAC,CAAC;gBACnG,CAAC,CAAA;gBAEK,cAAc,GAAC;oBACjB,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,mBAAA,EAAC,CAAC,CAAC;gBAC9F,CAAC,CAAA;gBAEK,eAAe,GAAG;;;oCACb,qBAAM,YAAY,CAAC,UAAU,EAAE,EAAA;oCAAtC,sBAAO,SAA+B,EAAC;;;qBAC1C,CAAA;gBAYK,UAAU,GAAC;oBACb,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,mBAAA,EAAC,CAAC,CAAC;gBAC1F,CAAC,CAAA;gBACK,SAAS,GAAE,UAAO,uBAAuB,EAAE,KAAK;;;;oCACnC,qBAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;oCAChD,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE,EAAC,uBAAuB,yBAAA,EAAE,KAAK,OAAA,EAAC;oCACtC,iBAAiB,mBAAA;iCACpB,CAAC,EAAA;;gCAJI,MAAM,GAAG,SAIb;gCACF,aAAa;gCACb,sBAAO,EAAE,MAAM,EAAG,IAAA,iCAAmB,EAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAC,EAAC;;;qBAClF,CAAA;gBAEK,2BAA2B,GAAG;oBAChC,IAAI,+BAA+B,IAAI,IAAI,EAAE;wBACzC,+BAA+B,GAAG,UAAU,CAAC;wBAC7C,SAAS,EAAE,CAAC;qBACf;gBACL,CAAC,CAAA;gBAEK,oBAAoB,GAAG,UAAC,YAAY;oBACtC,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAC,YAAY,cAAA,EAAC,EAAE,iBAAiB,mBAAA,EAAC,CAAC,CAAC;gBAC9G,CAAC,CAAA;gBAEK,oBAAoB,GAAE;;;;oCACT,qBAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,mBAAA,EAAC,CAAC,EAAA;;gCAAvG,MAAM,GAAG,SAA8F;gCAC7G,aAAa;gCACb,sBAAO,MAAM,CAAC,YAAY,EAAC;;;qBAC9B,CAAA;gBAED,sBAAO;wBACH,cAAc,gBAAA;wBACd,cAAc,gBAAA;wBACd,UAAU,YAAA;wBACV,SAAS,WAAA;wBACV,8BAA8B;wBAC7B,2BAA2B,6BAAA;wBAC3B,+BAA+B,iCAAA;wBAC/B,oBAAoB,sBAAA;wBACpB,oBAAoB,sBAAA;wBACpB,eAAe,iBAAA;qBAClB,EAAC;;;KACL,CAAA;AA9FY,QAAA,eAAe,mBA8F3B"}
1
+ {"version":3,"file":"initWorker.js","sourceRoot":"","sources":["../../src/oidc/vanilla/initWorker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA2B;AAC3B,6CAAkD;AAElD,SAAS,WAAW;IAChB,IAAI,EAAE,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,EAC7B,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,8DAA8D,CAAC,IAAI,EAAE,CAAC;IACvF,IAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC;QACrB,GAAG,GAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACrC,OAAO,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAE,EAAE,CAAC,EAAC,CAAC;KAC3C;IACD,IAAG,CAAC,CAAC,CAAC,CAAC,KAAG,QAAQ,EAAC;QACf,GAAG,GAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAElC,IAAG,GAAG,IAAE,IAAI,EAAE;YACV,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAG,CAAC,OAAO,EAAC;gBACR,IAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAC,GAAG,CAAC,CAAC;gBACpC,IAAG,MAAM,CAAC,MAAM,GAAC,CAAC,EAAC;oBACf,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;iBACvB;aACJ;YAED,OAAO,EAAC,IAAI,EAAC,OAAO,EAAE,OAAO,SAAA,EAAC,CAAC;SAClC;KACJ;IACD,CAAC,GAAC,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACtE,IAAG,CAAC,GAAG,GAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAE,IAAI,EAAE;QAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAC,CAAC,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KAAC;IACnE,OAAO;QACH,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;QACxB,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;KAChB,CAAC;AACN,CAAC;AAED,IAAI,+BAA+B,GAAG,IAAI,CAAC;AAEpC,IAAM,UAAU,GAAG,UAAC,YAAY;IACnC,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,IAAI,OAAA,eAAK,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,EAAvC,CAAuC,CAAC,CAAA;AAC1E,CAAC,CAAA;AAFY,QAAA,UAAU,cAEtB;AAED,IAAM,SAAS,GAAG;IACd,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAC1C,IAAA,kBAAU,EAAC,GAAG,GAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC,CAAA;AAED,IAAM,+BAA+B,GAAG;IACpC,OAAO,KAAK,CAAC,kCAAkC,EAAE;QAC7C,OAAO,EAAE;YACL,cAAc,EAAE,MAAM;SACzB;KAAC,CAAC;SACF,IAAI,CAAC,UAAC,QAAQ;QACX,OAAO,QAAQ,CAAC,UAAU,KAAK,qBAAqB,CAAC;IACzD,CAAC,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,IAAM,gBAAgB,GAAG,UAAC,YAAY,IAAK,OAAA,UAAC,IAAI;IAC5C,OAAO,IAAI,OAAO,CAAC,UAAS,OAAO,EAAE,MAAM;QACvC,IAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;QAC5C,cAAc,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,KAAK;YAC5C,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;gBAChC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC5B;iBAAM;gBACH,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aACvB;QACL,CAAC,CAAC;QACF,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACP,CAAC,EAZ0C,CAY1C,CAAA;AAEM,IAAM,eAAe,GAAG,UAAM,wBAAwB,EAAE,iBAAiB;;;;;gBAE5E,IAAG,CAAC,SAAS,CAAC,aAAa,IAAE,CAAC,wBAAwB,EAAC;oBACnD,sBAAO,IAAI,EAAC;iBACf;gBACK,KAAkB,WAAW,EAAE,EAA9B,IAAI,UAAA,EAAE,OAAO,aAAA,CAAkB;gBACtC,IAAG,IAAI,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAC,EAAE,EAAC;oBACxC,sBAAO,IAAI,EAAC;iBACf;gBACD,IAAG,IAAI,IAAI,OAAO,EAAC;oBACf,IAAG,CAAC,OAAO,EAAE;wBACT,sBAAO,IAAI,EAAC;qBACf;oBACD,IAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAE,EAAE,EAAE;wBACpC,sBAAO,IAAI,EAAC;qBACf;iBACJ;gBACD,IAAG,IAAI,IAAI,IAAI,EAAC;oBACZ,sBAAO,IAAI,EAAC;iBACf;gBAEoB,qBAAM,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAA;;gBAA/E,YAAY,GAAG,SAAgE;;;;gBAGjF,qBAAM,SAAS,CAAC,aAAa,CAAC,KAAK,EAAA;;gBAAnC,SAAmC,CAAA;;;;gBAGnC,sBAAO,IAAI,EAAC;;gBAGV,cAAc,GAAE,UAAC,KAAK;oBACpB,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,mBAAA,EAAC,CAAC,CAAC;gBACnG,CAAC,CAAA;gBAEK,cAAc,GAAC;oBACjB,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,mBAAA,EAAC,CAAC,CAAC;gBAC9F,CAAC,CAAA;gBAEK,eAAe,GAAG;;;oCACb,qBAAM,YAAY,CAAC,UAAU,EAAE,EAAA;oCAAtC,sBAAO,SAA+B,EAAC;;;qBAC1C,CAAA;gBAEK,UAAU,GAAC,UAAC,MAAM;oBACpB,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAC,MAAM,QAAA,EAAC,EAAE,iBAAiB,mBAAA,EAAC,CAAC,CAAC;gBAC9F,CAAC,CAAA;gBACK,SAAS,GAAE,UAAO,uBAAuB,EAAE,KAAK;;;;oCACnC,qBAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;oCAChD,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE,EAAC,uBAAuB,yBAAA,EAAE,KAAK,OAAA,EAAC;oCACtC,iBAAiB,mBAAA;iCACpB,CAAC,EAAA;;gCAJI,MAAM,GAAG,SAIb;gCACF,aAAa;gCACb,sBAAO,EAAE,MAAM,EAAG,IAAA,iCAAmB,EAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAC,EAAC;;;qBAChF,CAAA;gBAEK,2BAA2B,GAAG;oBAChC,IAAI,+BAA+B,IAAI,IAAI,EAAE;wBACzC,+BAA+B,GAAG,UAAU,CAAC;wBAC7C,SAAS,EAAE,CAAC;qBACf;gBACL,CAAC,CAAA;gBAEK,oBAAoB,GAAG,UAAC,YAAY;oBACtC,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAC,YAAY,cAAA,EAAC,EAAE,iBAAiB,mBAAA,EAAC,CAAC,CAAC;gBAC9G,CAAC,CAAA;gBAEK,oBAAoB,GAAE;;;;oCACT,qBAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,mBAAA,EAAC,CAAC,EAAA;;gCAAvG,MAAM,GAAG,SAA8F;gCAC7G,aAAa;gCACb,sBAAO,MAAM,CAAC,YAAY,EAAC;;;qBAC9B,CAAA;gBAED,sBAAO;wBACH,cAAc,gBAAA;wBACd,cAAc,gBAAA;wBACd,UAAU,YAAA;wBACV,SAAS,WAAA;wBACV,8BAA8B;wBAC7B,2BAA2B,6BAAA;wBAC3B,+BAA+B,iCAAA;wBAC/B,oBAAoB,sBAAA;wBACpB,oBAAoB,sBAAA;wBACpB,eAAe,iBAAA;qBAClB,EAAC;;;KACL,CAAA;AApFY,QAAA,eAAe,mBAoF3B"}
@@ -106,9 +106,9 @@ export declare class Oidc {
106
106
  loginCallbackWithAutoTokensRenewPromise: Promise<loginCallbackResult>;
107
107
  loginCallbackWithAutoTokensRenewAsync(): Promise<loginCallbackResult>;
108
108
  userInfoAsync(): Promise<any>;
109
- destroyAsync(): Promise<void>;
110
- logoutSameTabAsync(sub: any): Promise<void>;
111
- logoutOtherTabAsync(sub: any): Promise<void>;
109
+ destroyAsync(status: any): Promise<void>;
110
+ logoutSameTabAsync(clientId: any, sub: any): Promise<void>;
111
+ logoutOtherTabAsync(clientId: any, sub: any): Promise<void>;
112
112
  logoutAsync(callbackPathOrUrl?: string | undefined, extras?: StringMap): Promise<void>;
113
113
  }
114
114
  export default Oidc;
@@ -1 +1 @@
1
- {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
@@ -108,8 +108,8 @@ var performTokenRequestAsync = function (url, details, extras) { return __awaite
108
108
  return [4 /*yield*/, response.json()];
109
109
  case 2:
110
110
  tokens = _c.sent();
111
- console.log(tokens);
112
- return [2 /*return*/, { success: true,
111
+ return [2 /*return*/, {
112
+ success: true,
113
113
  data: (0, parseTokens_1.parseOriginalTokens)(tokens)
114
114
  }];
115
115
  }
@@ -185,28 +185,27 @@ var loginCallbackWithAutoTokensRenewAsync = function (oidc) { return __awaiter(v
185
185
  var autoRenewTokens = function (oidc, refreshToken, expiresAt) {
186
186
  var refreshTimeBeforeTokensExpirationInSecond = oidc.configuration.refresh_time_before_tokens_expiration_in_second;
187
187
  return timer_1.default.setTimeout(function () { return __awaiter(void 0, void 0, void 0, function () {
188
- var timeLeft, timeInfo, tokens;
189
- return __generator(this, function (_a) {
190
- switch (_a.label) {
188
+ var timeLeft, timeInfo, _a, tokens, status;
189
+ return __generator(this, function (_b) {
190
+ switch (_b.label) {
191
191
  case 0:
192
192
  timeLeft = (0, parseTokens_1.computeTimeLeft)(refreshTimeBeforeTokensExpirationInSecond, expiresAt);
193
193
  timeInfo = { timeLeft: timeLeft };
194
194
  oidc.publishEvent(Oidc.eventNames.token_timer, timeInfo);
195
195
  return [4 /*yield*/, oidc.synchroniseTokensAsync(refreshToken)];
196
196
  case 1:
197
- tokens = _a.sent();
197
+ _a = _b.sent(), tokens = _a.tokens, status = _a.status;
198
198
  oidc.tokens = tokens;
199
199
  if (!!oidc.serviceWorker) return [3 /*break*/, 3];
200
200
  return [4 /*yield*/, oidc.session.setTokens(oidc.tokens)];
201
201
  case 2:
202
- _a.sent();
203
- _a.label = 3;
202
+ _b.sent();
203
+ _b.label = 3;
204
204
  case 3:
205
205
  if (!!oidc.tokens) return [3 /*break*/, 5];
206
- return [4 /*yield*/, oidc.destroyAsync()];
206
+ return [4 /*yield*/, oidc.destroyAsync(status)];
207
207
  case 4:
208
- _a.sent();
209
- oidc.publishEvent(eventNames.refreshTokensAsync_error, { message: "refresh token" });
208
+ _b.sent();
210
209
  return [2 /*return*/];
211
210
  case 5:
212
211
  if (oidc.timeoutId) {
@@ -220,8 +219,18 @@ var autoRenewTokens = function (oidc, refreshToken, expiresAt) {
220
219
  var getLoginSessionKey = function (configurationName, redirectUri) {
221
220
  return "oidc_login.".concat(configurationName, ":").concat(redirectUri);
222
221
  };
222
+ var setLoginParams = function (configurationName, redirectUri, data) {
223
+ var sessionKey = getLoginSessionKey(configurationName, redirectUri);
224
+ getLoginParamsCache = data;
225
+ sessionStorage[sessionKey] = JSON.stringify(data);
226
+ };
227
+ var getLoginParamsCache = null;
223
228
  var getLoginParams = function (configurationName, redirectUri) {
224
- return JSON.parse(sessionStorage[getLoginSessionKey(configurationName, redirectUri)]);
229
+ var dataString = sessionStorage[getLoginSessionKey(configurationName, redirectUri)];
230
+ if (!getLoginParamsCache) {
231
+ getLoginParamsCache = JSON.parse(dataString);
232
+ }
233
+ return getLoginParamsCache;
225
234
  };
226
235
  var userInfoAsync = function (oidc) { return __awaiter(void 0, void 0, void 0, function () {
227
236
  var accessToken, oidcServerConfiguration, url, fetchUserInfo, userInfo;
@@ -713,7 +722,7 @@ var Oidc = /** @class */ (function () {
713
722
  return [2 /*return*/, this.loginPromise];
714
723
  }
715
724
  loginLocalAsync = function () { return __awaiter(_this, void 0, void 0, function () {
716
- var location_1, url, configuration, redirectUri, sessionKey, serviceWorker, oidcServerConfiguration, storage, session, extraFinal, queryStringUtil, authorizationHandler, authRequest, exception_2;
725
+ var location_1, url, configuration, redirectUri, serviceWorker, oidcServerConfiguration, storage, session, extraFinal, queryStringUtil, authorizationHandler, authRequest, exception_2;
717
726
  var _a;
718
727
  return __generator(this, function (_b) {
719
728
  switch (_b.label) {
@@ -727,8 +736,7 @@ var Oidc = /** @class */ (function () {
727
736
  if (!scope) {
728
737
  scope = configuration.scope;
729
738
  }
730
- sessionKey = getLoginSessionKey(this.configurationName, redirectUri);
731
- sessionStorage[sessionKey] = JSON.stringify({ callbackPath: url, extras: extras, state: state });
739
+ setLoginParams(this.configurationName, redirectUri, { callbackPath: url, extras: extras, state: state });
732
740
  return [4 /*yield*/, (0, initWorker_1.initWorkerAsync)(configuration.service_worker_relative_url, this.configurationName)];
733
741
  case 1:
734
742
  serviceWorker = _b.sent();
@@ -827,7 +835,7 @@ var Oidc = /** @class */ (function () {
827
835
  _b = _a[_i], key = _b[0], oidc = _b[1];
828
836
  //if(oidc !== this) {
829
837
  // @ts-ignore
830
- return [4 /*yield*/, oidc.logoutOtherTabAsync(idTokenPayload.sub)];
838
+ return [4 /*yield*/, oidc.logoutOtherTabAsync(this.configuration.client_id, idTokenPayload.sub)];
831
839
  case 2:
832
840
  //if(oidc !== this) {
833
841
  // @ts-ignore
@@ -1071,30 +1079,38 @@ var Oidc = /** @class */ (function () {
1071
1079
  return __generator(this, function (_a) {
1072
1080
  switch (_a.label) {
1073
1081
  case 0:
1074
- _a.trys.push([0, 2, , 3]);
1082
+ _a.trys.push([0, 2, , 4]);
1075
1083
  loginParams = getLoginParams(this.configurationName, configuration.redirect_uri);
1076
1084
  return [4 /*yield*/, this.silentLoginAsync(__assign(__assign({}, loginParams.extras), { prompt: "none" }), loginParams.state)];
1077
1085
  case 1:
1078
1086
  silent_token_response = _a.sent();
1079
1087
  if (silent_token_response) {
1080
1088
  this.publishEvent(Oidc.eventNames.token_renewed, {});
1081
- return [2 /*return*/, silent_token_response.tokens];
1089
+ return [2 /*return*/, { tokens: silent_token_response.tokens, status: "LOGGED" }];
1082
1090
  }
1083
- return [3 /*break*/, 3];
1091
+ return [3 /*break*/, 4];
1084
1092
  case 2:
1085
1093
  exceptionSilent_1 = _a.sent();
1094
+ console.error(exceptionSilent_1);
1095
+ this.publishEvent(eventNames.refreshTokensAsync_silent_error, { message: "exceptionSilent", exception: exceptionSilent_1.message });
1086
1096
  if (exceptionSilent_1 && exceptionSilent_1.message && exceptionSilent_1.message.startsWith("oidc")) {
1087
- return [2 /*return*/, null];
1097
+ this.publishEvent(eventNames.refreshTokensAsync_error, { message: "refresh token silent" });
1098
+ return [2 /*return*/, { tokens: null, status: "SESSION_LOST" }];
1088
1099
  }
1100
+ return [4 /*yield*/, (0, initWorker_1.sleepAsync)(1000)];
1101
+ case 3:
1102
+ _a.sent();
1089
1103
  throw exceptionSilent_1;
1090
- case 3: return [2 /*return*/, null];
1104
+ case 4:
1105
+ this.publishEvent(eventNames.refreshTokensAsync_error, { message: "refresh token silent return" });
1106
+ return [2 /*return*/, { tokens: null, status: "SESSION_LOST" }];
1091
1107
  }
1092
1108
  });
1093
1109
  }); };
1094
- if (!(index <= 4)) return [3 /*break*/, 23];
1110
+ if (!(index <= 4)) return [3 /*break*/, 24];
1095
1111
  _e.label = 7;
1096
1112
  case 7:
1097
- _e.trys.push([7, 22, , 23]);
1113
+ _e.trys.push([7, 23, , 24]);
1098
1114
  if (!!refreshToken) return [3 /*break*/, 9];
1099
1115
  this.publishEvent(eventNames.refreshTokensAsync_begin, { refreshToken: refreshToken, tryNumber: index });
1100
1116
  return [4 /*yield*/, localsilentLoginAsync()];
@@ -1104,23 +1120,27 @@ var Oidc = /** @class */ (function () {
1104
1120
  _a = _e.sent(), status_1 = _a.status, tokens = _a.tokens;
1105
1121
  _b = status_1;
1106
1122
  switch (_b) {
1107
- case "NOT_CONNECTED": return [3 /*break*/, 11];
1108
- case "TOKENS_VALID": return [3 /*break*/, 12];
1109
- case "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID": return [3 /*break*/, 12];
1110
- case "LOGOUT_FROM_ANOTHER_TAB": return [3 /*break*/, 13];
1111
- case "REQUIRE_SYNC_TOKENS": return [3 /*break*/, 14];
1123
+ case "SESSION_LOST": return [3 /*break*/, 11];
1124
+ case "NOT_CONNECTED": return [3 /*break*/, 12];
1125
+ case "TOKENS_VALID": return [3 /*break*/, 13];
1126
+ case "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID": return [3 /*break*/, 13];
1127
+ case "LOGOUT_FROM_ANOTHER_TAB": return [3 /*break*/, 14];
1128
+ case "REQUIRE_SYNC_TOKENS": return [3 /*break*/, 15];
1112
1129
  }
1113
- return [3 /*break*/, 16];
1114
- case 11: return [2 /*return*/, null];
1115
- case 12: return [2 /*return*/, tokens];
1116
- case 13:
1117
- this.publishEvent(eventNames.logout_from_another_tab, { "status": "session syncTokensAsync" });
1118
- return [2 /*return*/, null];
1130
+ return [3 /*break*/, 17];
1131
+ case 11:
1132
+ this.publishEvent(eventNames.refreshTokensAsync_error, { message: "refresh token session lost" });
1133
+ return [2 /*return*/, { tokens: null, status: "SESSION_LOST" }];
1134
+ case 12: return [2 /*return*/, { tokens: null, status: null }];
1135
+ case 13: return [2 /*return*/, { tokens: tokens, status: "LOGGED_IN" }];
1119
1136
  case 14:
1137
+ this.publishEvent(eventNames.logout_from_another_tab, { "status": "session syncTokensAsync" });
1138
+ return [2 /*return*/, { tokens: null, status: "LOGGED_OUT" }];
1139
+ case 15:
1120
1140
  this.publishEvent(eventNames.refreshTokensAsync_begin, { refreshToken: refreshToken, status: status_1, tryNumber: index });
1121
1141
  return [4 /*yield*/, localsilentLoginAsync()];
1122
- case 15: return [2 /*return*/, _e.sent()];
1123
- case 16:
1142
+ case 16: return [2 /*return*/, _e.sent()];
1143
+ case 17:
1124
1144
  this.publishEvent(eventNames.refreshTokensAsync_begin, { refreshToken: refreshToken, status: status_1, tryNumber: index });
1125
1145
  clientId = configuration.client_id;
1126
1146
  redirectUri = configuration.redirect_uri;
@@ -1139,29 +1159,31 @@ var Oidc = /** @class */ (function () {
1139
1159
  refresh_token: tokens.refreshToken,
1140
1160
  };
1141
1161
  return [4 /*yield*/, this.initAsync(authority, configuration.authority_configuration)];
1142
- case 17:
1162
+ case 18:
1143
1163
  oidcServerConfiguration = _e.sent();
1144
1164
  return [4 /*yield*/, performTokenRequestAsync(oidcServerConfiguration.tokenEndpoint, details, extras)];
1145
- case 18:
1165
+ case 19:
1146
1166
  tokenResponse = _e.sent();
1147
- if (!tokenResponse.success) return [3 /*break*/, 19];
1167
+ if (!tokenResponse.success) return [3 /*break*/, 20];
1148
1168
  this.publishEvent(eventNames.refreshTokensAsync_end, { success: tokenResponse.success });
1149
1169
  this.publishEvent(Oidc.eventNames.token_renewed, {});
1150
- return [2 /*return*/, tokenResponse.data];
1151
- case 19:
1170
+ return [2 /*return*/, { tokens: tokenResponse.data, status: "LOGGED_IN" }];
1171
+ case 20:
1152
1172
  this.publishEvent(eventNames.refreshTokensAsync_silent_error, {
1153
1173
  message: "bad request",
1154
1174
  tokenResponse: tokenResponse
1155
1175
  });
1156
1176
  return [4 /*yield*/, this.synchroniseTokensAsync(null, index + 1)];
1157
- case 20: return [2 /*return*/, _e.sent()];
1158
- case 21: return [3 /*break*/, 23];
1159
- case 22:
1177
+ case 21: return [2 /*return*/, _e.sent()];
1178
+ case 22: return [3 /*break*/, 24];
1179
+ case 23:
1160
1180
  exception_4 = _e.sent();
1161
1181
  console.error(exception_4);
1162
1182
  this.publishEvent(eventNames.refreshTokensAsync_silent_error, { message: "exception", exception: exception_4.message });
1163
1183
  return [2 /*return*/, this.synchroniseTokensAsync(refreshToken, index + 1)];
1164
- case 23: return [2 /*return*/, null];
1184
+ case 24:
1185
+ this.publishEvent(eventNames.refreshTokensAsync_error, { message: "refresh token" });
1186
+ return [2 /*return*/, { tokens: null, status: "SESSION_LOST" }];
1165
1187
  }
1166
1188
  });
1167
1189
  });
@@ -1169,9 +1191,9 @@ var Oidc = /** @class */ (function () {
1169
1191
  Oidc.prototype.syncTokensInfoAsync = function (configuration, configurationName, currentTokens) {
1170
1192
  var _a;
1171
1193
  return __awaiter(this, void 0, void 0, function () {
1172
- var oidcServerConfiguration, serviceWorker, _b, isLogin, tokens, timeLeft_1, status_2, session, tokens, timeLeft_2, status_3, timeLeft, status;
1173
- return __generator(this, function (_c) {
1174
- switch (_c.label) {
1194
+ var oidcServerConfiguration, serviceWorker, _b, status_2, tokens, timeLeft_1, status_3, session, _c, tokens, status_4, timeLeft_2, status_5, timeLeft, status;
1195
+ return __generator(this, function (_d) {
1196
+ switch (_d.label) {
1175
1197
  case 0:
1176
1198
  // Service Worker can be killed by the browser (when it wants,for example after 10 seconds of inactivity, so we retreieve the session if it happen)
1177
1199
  //const configuration = this.configuration;
@@ -1180,40 +1202,46 @@ var Oidc = /** @class */ (function () {
1180
1202
  }
1181
1203
  return [4 /*yield*/, this.initAsync(configuration.authority, configuration.authority_configuration)];
1182
1204
  case 1:
1183
- oidcServerConfiguration = _c.sent();
1205
+ oidcServerConfiguration = _d.sent();
1184
1206
  return [4 /*yield*/, (0, initWorker_1.initWorkerAsync)(configuration.service_worker_relative_url, configurationName)];
1185
1207
  case 2:
1186
- serviceWorker = _c.sent();
1208
+ serviceWorker = _d.sent();
1187
1209
  if (!serviceWorker) return [3 /*break*/, 4];
1188
1210
  return [4 /*yield*/, serviceWorker.initAsync(oidcServerConfiguration, "syncTokensAsync")];
1189
1211
  case 3:
1190
- _b = _c.sent(), isLogin = _b.isLogin, tokens = _b.tokens;
1191
- if (isLogin == false) {
1212
+ _b = _d.sent(), status_2 = _b.status, tokens = _b.tokens;
1213
+ if (status_2 == "LOGGED_OUT") {
1192
1214
  return [2 /*return*/, { tokens: null, status: "LOGOUT_FROM_ANOTHER_TAB" }];
1193
1215
  }
1194
- else if (isLogin == null) {
1216
+ else if (status_2 == "SESSIONS_LOST") {
1217
+ return [2 /*return*/, { tokens: null, status: "SESSIONS_LOST" }];
1218
+ }
1219
+ else if (!status_2 || !tokens) {
1195
1220
  return [2 /*return*/, { tokens: null, status: "REQUIRE_SYNC_TOKENS" }];
1196
1221
  }
1197
1222
  else if (tokens.issuedAt !== currentTokens.issuedAt) {
1198
1223
  timeLeft_1 = (0, parseTokens_1.computeTimeLeft)(configuration.refresh_time_before_tokens_expiration_in_second, tokens.expiresAt);
1199
- status_2 = (timeLeft_1 > 0) ? "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID" : "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_INVALID";
1200
- return [2 /*return*/, { tokens: tokens, status: status_2 }];
1224
+ status_3 = (timeLeft_1 > 0) ? "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID" : "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_INVALID";
1225
+ return [2 /*return*/, { tokens: tokens, status: status_3 }];
1201
1226
  }
1202
1227
  return [3 /*break*/, 6];
1203
1228
  case 4:
1204
1229
  session = (0, initSession_1.initSession)(configurationName, configuration.redirect_uri, (_a = configuration.storage) !== null && _a !== void 0 ? _a : sessionStorage);
1205
1230
  return [4 /*yield*/, session.initAsync()];
1206
1231
  case 5:
1207
- tokens = (_c.sent()).tokens;
1232
+ _c = _d.sent(), tokens = _c.tokens, status_4 = _c.status;
1208
1233
  if (!tokens) {
1209
1234
  return [2 /*return*/, { tokens: null, status: "LOGOUT_FROM_ANOTHER_TAB" }];
1210
1235
  }
1236
+ else if (status_4 == "SESSIONS_LOST") {
1237
+ return [2 /*return*/, { tokens: null, status: "SESSIONS_LOST" }];
1238
+ }
1211
1239
  else if (tokens.issuedAt !== currentTokens.issuedAt) {
1212
1240
  timeLeft_2 = (0, parseTokens_1.computeTimeLeft)(configuration.refresh_time_before_tokens_expiration_in_second, tokens.expiresAt);
1213
- status_3 = (timeLeft_2 > 0) ? "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID" : "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_INVALID";
1214
- return [2 /*return*/, { tokens: tokens, status: status_3 }];
1241
+ status_5 = (timeLeft_2 > 0) ? "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID" : "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_INVALID";
1242
+ return [2 /*return*/, { tokens: tokens, status: status_5 }];
1215
1243
  }
1216
- _c.label = 6;
1244
+ _d.label = 6;
1217
1245
  case 6:
1218
1246
  timeLeft = (0, parseTokens_1.computeTimeLeft)(configuration.refresh_time_before_tokens_expiration_in_second, currentTokens.expiresAt);
1219
1247
  status = (timeLeft > 0) ? "TOKENS_VALID" : "TOKENS_INVALID";
@@ -1236,7 +1264,7 @@ var Oidc = /** @class */ (function () {
1236
1264
  Oidc.prototype.userInfoAsync = function () {
1237
1265
  return userInfoAsync(this);
1238
1266
  };
1239
- Oidc.prototype.destroyAsync = function () {
1267
+ Oidc.prototype.destroyAsync = function (status) {
1240
1268
  return __awaiter(this, void 0, void 0, function () {
1241
1269
  return __generator(this, function (_a) {
1242
1270
  switch (_a.label) {
@@ -1247,13 +1275,13 @@ var Oidc = /** @class */ (function () {
1247
1275
  this.checkSessionIFrame.stop();
1248
1276
  }
1249
1277
  if (!this.serviceWorker) return [3 /*break*/, 2];
1250
- return [4 /*yield*/, this.serviceWorker.clearAsync()];
1278
+ return [4 /*yield*/, this.serviceWorker.clearAsync(status)];
1251
1279
  case 1:
1252
1280
  _a.sent();
1253
1281
  _a.label = 2;
1254
1282
  case 2:
1255
1283
  if (!this.session) return [3 /*break*/, 4];
1256
- return [4 /*yield*/, this.session.clearAsync()];
1284
+ return [4 /*yield*/, this.session.clearAsync(status)];
1257
1285
  case 3:
1258
1286
  _a.sent();
1259
1287
  _a.label = 4;
@@ -1265,14 +1293,14 @@ var Oidc = /** @class */ (function () {
1265
1293
  });
1266
1294
  });
1267
1295
  };
1268
- Oidc.prototype.logoutSameTabAsync = function (sub) {
1296
+ Oidc.prototype.logoutSameTabAsync = function (clientId, sub) {
1269
1297
  return __awaiter(this, void 0, void 0, function () {
1270
1298
  return __generator(this, function (_a) {
1271
1299
  switch (_a.label) {
1272
1300
  case 0:
1273
- if (!(this.configuration.monitor_session && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub)) return [3 /*break*/, 2];
1301
+ if (!(this.configuration.monitor_session && this.configuration.client_id === clientId && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub)) return [3 /*break*/, 2];
1274
1302
  this.publishEvent(eventNames.logout_from_same_tab, { "message": sub });
1275
- return [4 /*yield*/, this.destroyAsync()];
1303
+ return [4 /*yield*/, this.destroyAsync("LOGGED_OUT")];
1276
1304
  case 1:
1277
1305
  _a.sent();
1278
1306
  _a.label = 2;
@@ -1281,16 +1309,15 @@ var Oidc = /** @class */ (function () {
1281
1309
  });
1282
1310
  });
1283
1311
  };
1284
- Oidc.prototype.logoutOtherTabAsync = function (sub) {
1312
+ Oidc.prototype.logoutOtherTabAsync = function (clientId, sub) {
1285
1313
  return __awaiter(this, void 0, void 0, function () {
1286
1314
  return __generator(this, function (_a) {
1287
1315
  switch (_a.label) {
1288
1316
  case 0:
1289
- if (!(this.configuration.monitor_session && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub)) return [3 /*break*/, 2];
1290
- return [4 /*yield*/, this.destroyAsync()];
1317
+ if (!(this.configuration.monitor_session && this.configuration.client_id === clientId && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub)) return [3 /*break*/, 2];
1318
+ return [4 /*yield*/, this.destroyAsync("LOGGED_OUT")];
1291
1319
  case 1:
1292
1320
  _a.sent();
1293
- console.log("logoutOtherTabAsync(sub)" + this.configurationName);
1294
1321
  this.publishEvent(eventNames.logout_from_another_tab, { message: "SessionMonitor", "sub": sub });
1295
1322
  _a.label = 2;
1296
1323
  case 2: return [2 /*return*/];
@@ -1322,7 +1349,7 @@ var Oidc = /** @class */ (function () {
1322
1349
  url = isUri ? callbackPathOrUrl : window.location.origin + path;
1323
1350
  idToken = this.tokens ? this.tokens.idToken : "";
1324
1351
  sub = this.tokens && this.tokens.idTokenPayload ? this.tokens.idTokenPayload.sub : null;
1325
- return [4 /*yield*/, this.destroyAsync()];
1352
+ return [4 /*yield*/, this.destroyAsync("LOGGED_OUT")];
1326
1353
  case 2:
1327
1354
  _f.sent();
1328
1355
  _i = 0, _a = Object.entries(oidcDatabase);
@@ -1332,7 +1359,7 @@ var Oidc = /** @class */ (function () {
1332
1359
  _b = _a[_i], key = _b[0], oidc = _b[1];
1333
1360
  if (!(oidc !== this)) return [3 /*break*/, 5];
1334
1361
  // @ts-ignore
1335
- return [4 /*yield*/, oidc.logoutSameTabAsync(sub)];
1362
+ return [4 /*yield*/, oidc.logoutSameTabAsync(this.configuration.client_id, sub)];
1336
1363
  case 4:
1337
1364
  // @ts-ignore
1338
1365
  _f.sent();
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axa-fr/react-oidc",
3
- "version": "6.0.0-beta15",
3
+ "version": "6.0.0-beta16",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "jsnext:main": "dist/index.js",
@@ -18,7 +18,7 @@ let database = {
18
18
  default: {
19
19
  configurationName: "default",
20
20
  tokens: null,
21
- isLogin:null,
21
+ status:null,
22
22
  items:[],
23
23
  oidcServerConfiguration: null
24
24
  }
@@ -65,7 +65,7 @@ function hideTokens(currentDatabaseElement) {
65
65
  tokens.issued_at = currentTimeUnixSecond;
66
66
  }
67
67
  currentDatabaseElement.tokens = tokens;
68
- currentDatabaseElement.isLogin = true;
68
+ currentDatabaseElement.status = "LOGGED_IN";
69
69
  const accessTokenPayload = extractTokenPayload(tokens.access_token);
70
70
  const secureTokens = {
71
71
  ...tokens,
@@ -297,7 +297,7 @@ addEventListener('message', event => {
297
297
  tokens: null,
298
298
  items:[],
299
299
  oidcServerConfiguration: null,
300
- isLogin:null,
300
+ status:null,
301
301
  configurationName: configurationName,
302
302
  };
303
303
  currentDatabase = database[configurationName];
@@ -312,7 +312,7 @@ addEventListener('message', event => {
312
312
  case "clear":
313
313
  currentDatabase.tokens = null;
314
314
  currentDatabase.items = null;
315
- currentDatabase.isLogin = false;
315
+ currentDatabase.status = data.data.status;
316
316
  port.postMessage({configurationName});
317
317
  return;
318
318
  case "init":
@@ -333,7 +333,7 @@ addEventListener('message', event => {
333
333
  if(!currentDatabase.tokens){
334
334
  port.postMessage({
335
335
  tokens:null,
336
- isLogin: currentDatabase.isLogin,
336
+ status: currentDatabase.status,
337
337
  configurationName});
338
338
  } else {
339
339
  const tokens = {
@@ -345,16 +345,11 @@ addEventListener('message', event => {
345
345
  }
346
346
  port.postMessage({
347
347
  tokens,
348
- isLogin: currentDatabase.isLogin,
348
+ status: currentDatabase.status,
349
349
  configurationName
350
350
  });
351
351
  }
352
352
  return;
353
-
354
- /*case "getAccessTokenPayload":
355
- const accessTokenPayload = extractAccessTokenPayload(currentDatabase.tokens.access_token);
356
- port.postMessage({configurationName, accessTokenPayload});
357
- return;*/
358
353
 
359
354
  case "setSessionState":
360
355
  currentDatabase.sessionState = data.data.sessionState;
@@ -9,22 +9,21 @@
9
9
  return Promise.resolve(JSON.parse(storage[`oidc_items.${configurationName}:${redirectUri}`]));
10
10
  }
11
11
 
12
- const clearAsync=() =>{
13
- storage[`oidc.${configurationName}:${redirectUri}`] = JSON.stringify({tokens:null});
12
+ const clearAsync=(status) =>{
13
+ storage[`oidc.${configurationName}:${redirectUri}`] = JSON.stringify({tokens:null, status});
14
14
  return Promise.resolve();
15
15
  }
16
16
 
17
17
  const initAsync=async () => {
18
18
  if(!storage[`oidc.${configurationName}:${redirectUri}`]){
19
- storage[`oidc.${configurationName}:${redirectUri}`] = JSON.stringify({tokens:null});
20
- return {tokens:null};
19
+ storage[`oidc.${configurationName}:${redirectUri}`] = JSON.stringify({tokens:null, status:null});
20
+ return {tokens:null, status:null};
21
21
  }
22
- return Promise.resolve({ tokens : JSON.parse(storage[`oidc.${configurationName}:${redirectUri}`]).tokens });
22
+ const data = JSON.parse(storage[`oidc.${configurationName}:${redirectUri}`]);
23
+ return Promise.resolve({ tokens : data.tokens, status: data.status });
23
24
  }
24
25
 
25
26
  const setTokens = (tokens) => {
26
- //console.log("setTokens");
27
- //console.log(tokens);
28
27
  storage[`oidc.${configurationName}:${redirectUri}`] = JSON.stringify({tokens});
29
28
  }
30
29
 
@@ -107,19 +107,9 @@ export const initWorkerAsync = async(serviceWorkerRelativeUrl, configurationName
107
107
  const unregisterAsync = async () => {
108
108
  return await registration.unregister();
109
109
  }
110
-
111
- /* const getAccessTokenPayloadAsync=async () => {
112
- const result = await sendMessageAsync(registration)({
113
- type: "getAccessTokenPayload",
114
- data: null,
115
- configurationName
116
- });
117
- // @ts-ignore
118
- return result.accessTokenPayload;
119
- }*/
120
-
121
- const clearAsync=() =>{
122
- return sendMessageAsync(registration)({type: "clear", data: null, configurationName});
110
+
111
+ const clearAsync=(status) =>{
112
+ return sendMessageAsync(registration)({type: "clear", data: {status}, configurationName});
123
113
  }
124
114
  const initAsync= async (oidcServerConfiguration, where) => {
125
115
  const result = await sendMessageAsync(registration)({
@@ -128,7 +118,7 @@ export const initWorkerAsync = async(serviceWorkerRelativeUrl, configurationName
128
118
  configurationName
129
119
  });
130
120
  // @ts-ignore
131
- return { tokens : parseOriginalTokens(result.tokens), isLogin: result.isLogin};
121
+ return { tokens : parseOriginalTokens(result.tokens), status: result.status};
132
122
  }
133
123
 
134
124
  const startKeepAliveServiceWorker = () => {
@@ -48,8 +48,8 @@ const performTokenRequestAsync= async (url, details, extras) => {
48
48
  return {success:false, status: response.status}
49
49
  }
50
50
  const tokens = await response.json();
51
- console.log(tokens);
52
- return { success : true,
51
+ return {
52
+ success : true,
53
53
  data: parseOriginalTokens(tokens)
54
54
  };
55
55
  }
@@ -70,7 +70,6 @@ const internalFetch = async (url, headers, numberRetry=0) => {
70
70
  throw e;
71
71
  }
72
72
  } else {
73
-
74
73
  console.error(e.message);
75
74
  throw e; // rethrow other unexpected errors
76
75
  }
@@ -156,44 +155,40 @@ const autoRenewTokens = (oidc, refreshToken, expiresAt) => {
156
155
  const timeLeft = computeTimeLeft(refreshTimeBeforeTokensExpirationInSecond, expiresAt);
157
156
  const timeInfo = { timeLeft };
158
157
  oidc.publishEvent(Oidc.eventNames.token_timer, timeInfo);
159
- // if(timeLeft <= 0) {
160
- const tokens = await oidc.synchroniseTokensAsync(refreshToken);
158
+ const {tokens, status} = await oidc.synchroniseTokensAsync(refreshToken);
161
159
  oidc.tokens= tokens;
162
160
  if(!oidc.serviceWorker){
163
161
  await oidc.session.setTokens(oidc.tokens);
164
162
  }
165
163
  if(!oidc.tokens){
166
- await oidc.destroyAsync();
167
- oidc.publishEvent(eventNames.refreshTokensAsync_error, {message: `refresh token` });
164
+ await oidc.destroyAsync(status);
168
165
  return;
169
166
  }
170
167
 
171
168
  if(oidc.timeoutId) {
172
169
  oidc.timeoutId = autoRenewTokens(oidc, tokens.refreshToken, oidc.tokens.expiresAt);
173
170
  }
174
- /*} else{
175
- const tokens = await oidc.syncTokensAsync();
176
- oidc.tokens = tokens;
177
- if(!oidc.serviceWorker){
178
- await oidc.session.setTokens(oidc.tokens);
179
- }
180
- if(!oidc.tokens){
181
- oidc.publishEvent(eventNames.refreshTokensAsync_error, {message: `sync` });
182
- await oidc.destroyAsync();
183
- return;
184
- }
185
- if(tokens && oidc.timeoutId) {
186
- oidc.timeoutId = autoRenewTokens(oidc, tokens.refreshToken, tokens.expiresAt);
187
- }
188
- }*/
171
+
189
172
  }, 1000);
190
173
  }
191
174
 
192
175
  const getLoginSessionKey = (configurationName:string, redirectUri:string) => {
193
176
  return `oidc_login.${configurationName}:${redirectUri}`;
194
177
  }
178
+
179
+ const setLoginParams = (configurationName:string, redirectUri:string, data) =>{
180
+ const sessionKey = getLoginSessionKey(configurationName, redirectUri);
181
+ getLoginParamsCache = data
182
+ sessionStorage[sessionKey] = JSON.stringify(data);
183
+ }
184
+
185
+ let getLoginParamsCache = null;
195
186
  const getLoginParams = (configurationName, redirectUri) => {
196
- return JSON.parse(sessionStorage[getLoginSessionKey(configurationName, redirectUri)]);
187
+ const dataString = sessionStorage[getLoginSessionKey(configurationName, redirectUri)];
188
+ if(!getLoginParamsCache){
189
+ getLoginParamsCache = JSON.parse(dataString);
190
+ }
191
+ return getLoginParamsCache;
197
192
  }
198
193
 
199
194
  const userInfoAsync = async (oidc) => {
@@ -623,9 +618,8 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
623
618
  scope = configuration.scope;
624
619
  }
625
620
 
626
- const sessionKey = getLoginSessionKey(this.configurationName, redirectUri);
627
- sessionStorage[sessionKey] = JSON.stringify({callbackPath: url, extras, state});
628
-
621
+ setLoginParams(this.configurationName, redirectUri, {callbackPath: url, extras, state});
622
+
629
623
  let serviceWorker = await initWorkerAsync(configuration.service_worker_relative_url, this.configurationName);
630
624
  const oidcServerConfiguration = await this.initAsync(configuration.authority, configuration.authority_configuration);
631
625
  let storage;
@@ -700,7 +694,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
700
694
  for (const [key, oidc] of Object.entries(oidcDatabase)) {
701
695
  //if(oidc !== this) {
702
696
  // @ts-ignore
703
- await oidc.logoutOtherTabAsync(idTokenPayload.sub);
697
+ await oidc.logoutOtherTabAsync(this.configuration.client_id, idTokenPayload.sub);
704
698
  //}
705
699
  }
706
700
  //await this.destroyAsync();
@@ -891,15 +885,20 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
891
885
  }, loginParams.state);
892
886
  if (silent_token_response) {
893
887
  this.publishEvent(Oidc.eventNames.token_renewed, {});
894
- return silent_token_response.tokens;
888
+ return {tokens:silent_token_response.tokens, status:"LOGGED"};
895
889
  }
896
890
  } catch (exceptionSilent) {
891
+ console.error(exceptionSilent);
892
+ this.publishEvent(eventNames.refreshTokensAsync_silent_error, {message: "exceptionSilent" ,exception: exceptionSilent.message});
897
893
  if(exceptionSilent && exceptionSilent.message && exceptionSilent.message.startsWith("oidc")){
898
- return null;
899
- }
894
+ this.publishEvent(eventNames.refreshTokensAsync_error, {message: `refresh token silent` });
895
+ return {tokens:null, status:"SESSION_LOST"};
896
+ }
897
+ await sleepAsync(1000);
900
898
  throw exceptionSilent;
901
899
  }
902
- return null;
900
+ this.publishEvent(eventNames.refreshTokensAsync_error, {message: `refresh token silent return` });
901
+ return {tokens:null, status:"SESSION_LOST"};
903
902
  }
904
903
 
905
904
  if (index <=4) {
@@ -911,16 +910,18 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
911
910
  return await localsilentLoginAsync();
912
911
  }
913
912
  const { status, tokens } = await this.syncTokensInfoAsync(configuration, this.configurationName, this.tokens);
914
- // this.publishEvent(eventNames.refreshTokensAsync, {message: `status ${status}` });
915
913
  switch (status) {
914
+ case "SESSION_LOST":
915
+ this.publishEvent(eventNames.refreshTokensAsync_error, {message: `refresh token session lost` });
916
+ return {tokens:null, status:"SESSION_LOST"};
916
917
  case "NOT_CONNECTED":
917
- return null;
918
+ return {tokens:null, status:null};
918
919
  case "TOKENS_VALID":
919
920
  case "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID":
920
- return tokens;
921
+ return {tokens, status:"LOGGED_IN"};
921
922
  case "LOGOUT_FROM_ANOTHER_TAB":
922
923
  this.publishEvent(eventNames.logout_from_another_tab, {"status": "session syncTokensAsync"});
923
- return null;
924
+ return {tokens:null, status:"LOGGED_OUT"};
924
925
  case "REQUIRE_SYNC_TOKENS":
925
926
  this.publishEvent(eventNames.refreshTokensAsync_begin, {refreshToken:refreshToken, status, tryNumber: index});
926
927
  return await localsilentLoginAsync();
@@ -946,7 +947,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
946
947
  if (tokenResponse.success) {
947
948
  this.publishEvent(eventNames.refreshTokensAsync_end, {success: tokenResponse.success});
948
949
  this.publishEvent(Oidc.eventNames.token_renewed, {});
949
- return tokenResponse.data;
950
+ return {tokens: tokenResponse.data, status:"LOGGED_IN"};
950
951
  } else {
951
952
  this.publishEvent(eventNames.refreshTokensAsync_silent_error, {
952
953
  message: "bad request",
@@ -961,7 +962,9 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
961
962
  return this.synchroniseTokensAsync(refreshToken, index+1);
962
963
  }
963
964
  }
964
- return null;
965
+
966
+ this.publishEvent(eventNames.refreshTokensAsync_error, {message: `refresh token` });
967
+ return {tokens:null, status:"SESSION_LOST"};
965
968
  }
966
969
 
967
970
  async syncTokensInfoAsync(configuration, configurationName, currentTokens) {
@@ -974,10 +977,12 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
974
977
  const oidcServerConfiguration = await this.initAsync(configuration.authority, configuration.authority_configuration);
975
978
  const serviceWorker = await initWorkerAsync(configuration.service_worker_relative_url, configurationName);
976
979
  if (serviceWorker) {
977
- const {isLogin, tokens} = await serviceWorker.initAsync(oidcServerConfiguration, "syncTokensAsync");
978
- if (isLogin == false) {
979
- return { tokens : null, status: "LOGOUT_FROM_ANOTHER_TAB"};
980
- } else if (isLogin == null) {
980
+ const {status, tokens} = await serviceWorker.initAsync(oidcServerConfiguration, "syncTokensAsync");
981
+ if (status == "LOGGED_OUT") {
982
+ return {tokens: null, status: "LOGOUT_FROM_ANOTHER_TAB"};
983
+ }else if (status == "SESSIONS_LOST") {
984
+ return { tokens : null, status: "SESSIONS_LOST"};
985
+ } else if (!status || !tokens) {
981
986
  return { tokens : null, status: "REQUIRE_SYNC_TOKENS"};
982
987
  } else if(tokens.issuedAt !== currentTokens.issuedAt) {
983
988
  const timeLeft = computeTimeLeft(configuration.refresh_time_before_tokens_expiration_in_second, tokens.expiresAt);
@@ -986,10 +991,13 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
986
991
  }
987
992
  } else {
988
993
  const session = initSession(configurationName, configuration.redirect_uri, configuration.storage ?? sessionStorage);
989
- const {tokens} = await session.initAsync();
994
+ const {tokens, status } = await session.initAsync();
990
995
  if (!tokens) {
991
- return { tokens : null, status: "LOGOUT_FROM_ANOTHER_TAB"};
992
- } else if(tokens.issuedAt !== currentTokens.issuedAt){
996
+ return {tokens: null, status: "LOGOUT_FROM_ANOTHER_TAB"};
997
+ } else if (status == "SESSIONS_LOST") {
998
+ return { tokens : null, status: "SESSIONS_LOST"};
999
+ }
1000
+ else if(tokens.issuedAt !== currentTokens.issuedAt){
993
1001
  const timeLeft = computeTimeLeft(configuration.refresh_time_before_tokens_expiration_in_second, tokens.expiresAt);
994
1002
  const status = (timeLeft > 0) ? "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID" : "TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_INVALID";
995
1003
  return { tokens : tokens, status };
@@ -1017,36 +1025,35 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
1017
1025
  return userInfoAsync(this);
1018
1026
  }
1019
1027
 
1020
- async destroyAsync() {
1028
+ async destroyAsync(status) {
1021
1029
  timer.clearTimeout(this.timeoutId);
1022
1030
  this.timeoutId=null;
1023
1031
  if(this.checkSessionIFrame){
1024
1032
  this.checkSessionIFrame.stop();
1025
1033
  }
1026
1034
  if(this.serviceWorker){
1027
- await this.serviceWorker.clearAsync();
1035
+ await this.serviceWorker.clearAsync(status);
1028
1036
  }
1029
1037
  if(this.session){
1030
- await this.session.clearAsync();
1038
+ await this.session.clearAsync(status);
1031
1039
  }
1032
1040
  this.tokens = null;
1033
1041
  this.userInfo = null;
1034
1042
  // this.events = [];
1035
1043
  }
1036
1044
 
1037
- async logoutSameTabAsync(sub){
1045
+ async logoutSameTabAsync(clientId, sub){
1038
1046
  // @ts-ignore
1039
- if(this.configuration.monitor_session && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub) {
1047
+ if(this.configuration.monitor_session&& this.configuration.client_id === clientId && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub) {
1040
1048
  this.publishEvent(eventNames.logout_from_same_tab, {"message": sub});
1041
- await this.destroyAsync();
1049
+ await this.destroyAsync("LOGGED_OUT");
1042
1050
  }
1043
1051
  }
1044
1052
 
1045
- async logoutOtherTabAsync(sub){
1053
+ async logoutOtherTabAsync(clientId, sub){
1046
1054
  // @ts-ignore
1047
- if(this.configuration.monitor_session && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub) {
1048
- await this.destroyAsync();
1049
- console.log("logoutOtherTabAsync(sub)" +this.configurationName);
1055
+ if(this.configuration.monitor_session && this.configuration.client_id === clientId && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub) {
1056
+ await this.destroyAsync("LOGGED_OUT");
1050
1057
  this.publishEvent(eventNames.logout_from_another_tab, {message : "SessionMonitor", "sub": sub});
1051
1058
  }
1052
1059
  }
@@ -1069,11 +1076,11 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
1069
1076
  const idToken = this.tokens ? this.tokens.idToken : "";
1070
1077
  // @ts-ignore
1071
1078
  const sub = this.tokens && this.tokens.idTokenPayload ? this.tokens.idTokenPayload.sub : null;
1072
- await this.destroyAsync();
1079
+ await this.destroyAsync("LOGGED_OUT");
1073
1080
  for (const [key, oidc] of Object.entries(oidcDatabase)) {
1074
1081
  if(oidc !== this) {
1075
1082
  // @ts-ignore
1076
- await oidc.logoutSameTabAsync(sub);
1083
+ await oidc.logoutSameTabAsync(this.configuration.client_id, sub);
1077
1084
  }
1078
1085
  }
1079
1086