@asgardeo/auth-spa 0.2.19 → 0.2.22
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/.eslintrc.js +1 -2
- package/README.md +53 -24
- package/babel.config.js +1 -2
- package/dist/asgardeo-spa.production.esm.js +105 -44
- package/dist/asgardeo-spa.production.esm.js.map +1 -1
- package/dist/asgardeo-spa.production.js +106 -45
- package/dist/asgardeo-spa.production.js.map +1 -1
- package/dist/asgardeo-spa.production.min.js +1 -1
- package/dist/asgardeo-spa.production.min.js.map +1 -1
- package/dist/polyfilled/asgardeo-spa.production.esm.js +103 -42
- package/dist/polyfilled/asgardeo-spa.production.esm.js.map +1 -1
- package/dist/polyfilled/asgardeo-spa.production.js +103 -42
- package/dist/polyfilled/asgardeo-spa.production.js.map +1 -1
- package/dist/polyfilled/asgardeo-spa.production.min.js +1 -1
- package/dist/polyfilled/asgardeo-spa.production.min.js.map +1 -1
- package/dist/src/client.d.ts +10 -6
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/client.js +26 -14
- package/dist/src/client.js.map +1 -1
- package/dist/src/clients/main-thread-client.d.ts.map +1 -1
- package/dist/src/clients/main-thread-client.js +61 -48
- package/dist/src/clients/main-thread-client.js.map +1 -1
- package/dist/src/clients/web-worker-client.d.ts +1 -1
- package/dist/src/clients/web-worker-client.d.ts.map +1 -1
- package/dist/src/clients/web-worker-client.js +51 -32
- package/dist/src/clients/web-worker-client.js.map +1 -1
- package/dist/src/{exception/exception.d.ts → constants/errors.d.ts} +3 -11
- package/dist/src/constants/errors.d.ts.map +1 -0
- package/dist/src/{exception/exception.js → constants/errors.js} +3 -14
- package/dist/src/constants/errors.js.map +1 -0
- package/dist/src/constants/hooks.d.ts +2 -1
- package/dist/src/constants/hooks.d.ts.map +1 -1
- package/dist/src/constants/hooks.js +1 -0
- package/dist/src/constants/hooks.js.map +1 -1
- package/dist/src/constants/index.d.ts +1 -0
- package/dist/src/constants/index.d.ts.map +1 -1
- package/dist/src/constants/index.js +1 -0
- package/dist/src/constants/index.js.map +1 -1
- package/dist/src/constants/parameters.d.ts +1 -0
- package/dist/src/constants/parameters.d.ts.map +1 -1
- package/dist/src/constants/parameters.js +1 -0
- package/dist/src/constants/parameters.js.map +1 -1
- package/dist/src/helpers/session-management-helper.d.ts +1 -1
- package/dist/src/helpers/session-management-helper.d.ts.map +1 -1
- package/dist/src/helpers/session-management-helper.js +33 -43
- package/dist/src/helpers/session-management-helper.js.map +1 -1
- package/dist/src/index-polyfill.d.ts +0 -1
- package/dist/src/index-polyfill.d.ts.map +1 -1
- package/dist/src/index-polyfill.js +0 -1
- package/dist/src/index-polyfill.js.map +1 -1
- package/dist/src/models/client.d.ts +4 -4
- package/dist/src/models/client.d.ts.map +1 -1
- package/dist/src/models/http-client.d.ts +1 -1
- package/dist/src/models/http-client.d.ts.map +1 -1
- package/dist/src/models/index.d.ts +1 -0
- package/dist/src/models/index.d.ts.map +1 -1
- package/dist/src/models/index.js +1 -0
- package/dist/src/models/index.js.map +1 -1
- package/dist/src/models/message.d.ts +1 -0
- package/dist/src/models/message.d.ts.map +1 -1
- package/dist/src/models/session-management-helper.d.ts +2 -1
- package/dist/src/models/session-management-helper.d.ts.map +1 -1
- package/dist/src/{exception/index.js → models/sign-out-error.d.ts} +6 -3
- package/dist/src/models/sign-out-error.d.ts.map +1 -0
- package/{src/exception/index.ts → dist/src/models/sign-out-error.js} +3 -3
- package/dist/src/models/sign-out-error.js.map +1 -0
- package/dist/src/models/web-worker.d.ts +3 -3
- package/dist/src/models/web-worker.d.ts.map +1 -1
- package/dist/src/models/web-worker.js.map +1 -1
- package/dist/src/public-api.d.ts +1 -1
- package/dist/src/public-api.d.ts.map +1 -1
- package/dist/src/public-api.js +1 -1
- package/dist/src/public-api.js.map +1 -1
- package/dist/src/utils/crypto-utils.d.ts +33 -0
- package/dist/src/utils/crypto-utils.d.ts.map +1 -0
- package/dist/src/utils/crypto-utils.js +55 -0
- package/dist/src/utils/crypto-utils.js.map +1 -0
- package/dist/src/utils/spa-utils.d.ts +5 -3
- package/dist/src/utils/spa-utils.d.ts.map +1 -1
- package/dist/src/utils/spa-utils.js +26 -10
- package/dist/src/utils/spa-utils.js.map +1 -1
- package/dist/src/worker/client.worker.d.ts.map +1 -1
- package/dist/src/worker/client.worker.js +5 -5
- package/dist/src/worker/client.worker.js.map +1 -1
- package/dist/src/worker/worker-core.d.ts.map +1 -1
- package/dist/src/worker/worker-core.js +57 -49
- package/dist/src/worker/worker-core.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +31 -30
- package/rollup.config.js +3 -5
- package/src/client.ts +45 -50
- package/src/clients/main-thread-client.ts +96 -89
- package/src/clients/web-worker-client.ts +73 -48
- package/src/constants/errors.ts +19 -0
- package/src/constants/hooks.ts +2 -1
- package/src/constants/index.ts +1 -0
- package/src/constants/parameters.ts +1 -0
- package/src/helpers/session-management-helper.ts +31 -40
- package/src/index-polyfill.ts +0 -1
- package/src/models/client.ts +5 -5
- package/src/models/http-client.ts +3 -2
- package/src/models/index.ts +1 -0
- package/src/models/message.ts +1 -0
- package/src/models/session-management-helper.ts +3 -2
- package/{dist/src/exception/index.d.ts → src/models/sign-out-error.ts} +6 -3
- package/src/models/web-worker.ts +8 -2
- package/src/public-api.ts +2 -1
- package/src/utils/crypto-utils.ts +74 -0
- package/src/utils/spa-utils.ts +33 -10
- package/src/worker/client.worker.ts +6 -11
- package/src/worker/worker-core.ts +98 -101
- package/dist/src/exception/exception.d.ts.map +0 -1
- package/dist/src/exception/exception.js.map +0 -1
- package/dist/src/exception/index.d.ts.map +0 -1
- package/dist/src/exception/index.js.map +0 -1
- package/src/exception/exception.ts +0 -44
package/dist/src/client.d.ts
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* specific language governing permissions and limitations
|
|
16
16
|
* under the License.
|
|
17
17
|
*/
|
|
18
|
-
import { AuthClientConfig, BasicUserInfo, CustomGrantConfig, DecodedIDTokenPayload, OIDCEndpoints } from "@asgardeo/auth-js";
|
|
18
|
+
import { AuthClientConfig, BasicUserInfo, CustomGrantConfig, DecodedIDTokenPayload, FetchResponse, OIDCEndpoints } from "@asgardeo/auth-js";
|
|
19
19
|
import { Hooks } from "./constants";
|
|
20
20
|
import { HttpClientInstance } from "./http-client";
|
|
21
21
|
import { AuthSPAClientConfig, Config, HttpRequestConfig, HttpResponse, SignInConfig } from "./models";
|
|
@@ -33,6 +33,7 @@ export declare class AsgardeoSPAClient {
|
|
|
33
33
|
private _startedInitialize;
|
|
34
34
|
private _onSignInCallback;
|
|
35
35
|
private _onSignOutCallback;
|
|
36
|
+
private _onSignOutFailedCallback;
|
|
36
37
|
private _onEndUserSession;
|
|
37
38
|
private _onInitialize;
|
|
38
39
|
private _onCustomGrant;
|
|
@@ -88,7 +89,7 @@ export declare class AsgardeoSPAClient {
|
|
|
88
89
|
* auth.initialize({
|
|
89
90
|
* signInRedirectURL: "http://localhost:3000/sign-in",
|
|
90
91
|
* clientID: "client ID",
|
|
91
|
-
*
|
|
92
|
+
* baseUrl: "https://api.asgardeo.io"
|
|
92
93
|
* });
|
|
93
94
|
* ```
|
|
94
95
|
*
|
|
@@ -139,6 +140,9 @@ export declare class AsgardeoSPAClient {
|
|
|
139
140
|
* 2. forceInit: Specifies if the OIDC Provider Meta Data should be loaded again from the `well-known`
|
|
140
141
|
* endpoint.
|
|
141
142
|
* 3. Any other parameters that should be appended to the authorization request.
|
|
143
|
+
* @param {string} authorizationCode - The authorization code. (Optional)
|
|
144
|
+
* @param {string} sessionState - The session state. (Optional)
|
|
145
|
+
* @param {string} state - The state. (Optional)
|
|
142
146
|
*
|
|
143
147
|
* @return {Promise<BasicUserInfo>} - A promise that resolves with the user information.
|
|
144
148
|
*
|
|
@@ -153,7 +157,7 @@ export declare class AsgardeoSPAClient {
|
|
|
153
157
|
*
|
|
154
158
|
* @preserve
|
|
155
159
|
*/
|
|
156
|
-
signIn(config?: SignInConfig, authorizationCode?: string, sessionState?: string): Promise<BasicUserInfo | undefined>;
|
|
160
|
+
signIn(config?: SignInConfig, authorizationCode?: string, sessionState?: string, state?: string): Promise<BasicUserInfo | undefined>;
|
|
157
161
|
/**
|
|
158
162
|
* This method allows you to sign in silently.
|
|
159
163
|
* First, this method sends a prompt none request to see if there is an active user session in the identity server.
|
|
@@ -309,7 +313,7 @@ export declare class AsgardeoSPAClient {
|
|
|
309
313
|
*
|
|
310
314
|
* @preserve
|
|
311
315
|
*/
|
|
312
|
-
requestCustomGrant(config: CustomGrantConfig): Promise<
|
|
316
|
+
requestCustomGrant(config: CustomGrantConfig): Promise<FetchResponse<any> | BasicUserInfo | undefined>;
|
|
313
317
|
/**
|
|
314
318
|
* This method ends a user session. The access token is revoked and the session information is destroyed.
|
|
315
319
|
*
|
|
@@ -476,7 +480,7 @@ export declare class AsgardeoSPAClient {
|
|
|
476
480
|
* @preserve
|
|
477
481
|
*/
|
|
478
482
|
on(hook: Hooks.CustomGrant, callback: (response?: any) => void, id: string): Promise<void>;
|
|
479
|
-
on(hook: Hooks
|
|
483
|
+
on(hook: Exclude<Hooks, Hooks.CustomGrant>, callback: (response?: any) => void): Promise<void>;
|
|
480
484
|
/**
|
|
481
485
|
* This method enables callback functions attached to the http client.
|
|
482
486
|
*
|
|
@@ -521,7 +525,7 @@ export declare class AsgardeoSPAClient {
|
|
|
521
525
|
* const config = {
|
|
522
526
|
* signInRedirectURL: "http://localhost:3000/sign-in",
|
|
523
527
|
* clientID: "client ID",
|
|
524
|
-
*
|
|
528
|
+
* baseUrl: "https://api.asgardeo.io"
|
|
525
529
|
* }
|
|
526
530
|
* const auth.updateConfig(config);
|
|
527
531
|
* ```
|
package/dist/src/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/src/client.js
CHANGED
|
@@ -24,9 +24,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
24
24
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
25
25
|
});
|
|
26
26
|
};
|
|
27
|
+
import { AsgardeoAuthException } from "@asgardeo/auth-js";
|
|
27
28
|
import { MainThreadClient, WebWorkerClient } from "./clients";
|
|
28
29
|
import { Hooks, Storage } from "./constants";
|
|
29
|
-
import { AsgardeoSPAException } from "./exception";
|
|
30
30
|
import { SPAUtils } from "./utils";
|
|
31
31
|
/**
|
|
32
32
|
* Default configurations.
|
|
@@ -52,6 +52,7 @@ export class AsgardeoSPAClient {
|
|
|
52
52
|
this._startedInitialize = false;
|
|
53
53
|
this._onSignInCallback = () => null;
|
|
54
54
|
this._onSignOutCallback = () => null;
|
|
55
|
+
this._onSignOutFailedCallback = () => null;
|
|
55
56
|
this._onEndUserSession = () => null;
|
|
56
57
|
this._onInitialize = () => null;
|
|
57
58
|
this._onCustomGrant = new Map();
|
|
@@ -73,10 +74,10 @@ export class AsgardeoSPAClient {
|
|
|
73
74
|
}
|
|
74
75
|
let iterationToWait = 0;
|
|
75
76
|
const sleep = () => {
|
|
76
|
-
return new Promise((resolve) => setTimeout(resolve,
|
|
77
|
+
return new Promise((resolve) => setTimeout(resolve, 1));
|
|
77
78
|
};
|
|
78
79
|
while (!this._initialized) {
|
|
79
|
-
if (iterationToWait ===
|
|
80
|
+
if (iterationToWait === 1e4) {
|
|
80
81
|
// eslint-disable-next-line no-console
|
|
81
82
|
console.warn("It is taking longer than usual for the object to be initialized");
|
|
82
83
|
}
|
|
@@ -150,7 +151,7 @@ export class AsgardeoSPAClient {
|
|
|
150
151
|
* auth.initialize({
|
|
151
152
|
* signInRedirectURL: "http://localhost:3000/sign-in",
|
|
152
153
|
* clientID: "client ID",
|
|
153
|
-
*
|
|
154
|
+
* baseUrl: "https://api.asgardeo.io"
|
|
154
155
|
* });
|
|
155
156
|
* ```
|
|
156
157
|
*
|
|
@@ -181,7 +182,7 @@ export class AsgardeoSPAClient {
|
|
|
181
182
|
else {
|
|
182
183
|
if (!this._client) {
|
|
183
184
|
const webWorkerClientConfig = config;
|
|
184
|
-
this._client = WebWorkerClient(Object.assign(Object.assign({}, DefaultConfig), webWorkerClientConfig));
|
|
185
|
+
this._client = (yield WebWorkerClient(Object.assign(Object.assign({}, DefaultConfig), webWorkerClientConfig)));
|
|
185
186
|
return this._client
|
|
186
187
|
.initialize()
|
|
187
188
|
.then(() => {
|
|
@@ -245,6 +246,9 @@ export class AsgardeoSPAClient {
|
|
|
245
246
|
* 2. forceInit: Specifies if the OIDC Provider Meta Data should be loaded again from the `well-known`
|
|
246
247
|
* endpoint.
|
|
247
248
|
* 3. Any other parameters that should be appended to the authorization request.
|
|
249
|
+
* @param {string} authorizationCode - The authorization code. (Optional)
|
|
250
|
+
* @param {string} sessionState - The session state. (Optional)
|
|
251
|
+
* @param {string} state - The state. (Optional)
|
|
248
252
|
*
|
|
249
253
|
* @return {Promise<BasicUserInfo>} - A promise that resolves with the user information.
|
|
250
254
|
*
|
|
@@ -259,7 +263,7 @@ export class AsgardeoSPAClient {
|
|
|
259
263
|
*
|
|
260
264
|
* @preserve
|
|
261
265
|
*/
|
|
262
|
-
signIn(config, authorizationCode, sessionState) {
|
|
266
|
+
signIn(config, authorizationCode, sessionState, state) {
|
|
263
267
|
var _a;
|
|
264
268
|
return __awaiter(this, void 0, void 0, function* () {
|
|
265
269
|
yield this._isInitialized();
|
|
@@ -269,7 +273,7 @@ export class AsgardeoSPAClient {
|
|
|
269
273
|
return;
|
|
270
274
|
}
|
|
271
275
|
config === null || config === void 0 ? true : delete config.callOnlyOnRedirect;
|
|
272
|
-
return (_a = this._client) === null || _a === void 0 ? void 0 : _a.signIn(config, authorizationCode, sessionState).then((response) => {
|
|
276
|
+
return (_a = this._client) === null || _a === void 0 ? void 0 : _a.signIn(config, authorizationCode, sessionState, state).then((response) => {
|
|
273
277
|
if (this._onSignInCallback) {
|
|
274
278
|
if (response.allowedScopes || response.displayName || response.email || response.username) {
|
|
275
279
|
this._onSignInCallback(response);
|
|
@@ -484,7 +488,7 @@ export class AsgardeoSPAClient {
|
|
|
484
488
|
yield this._validateMethod();
|
|
485
489
|
}
|
|
486
490
|
if (!config.id) {
|
|
487
|
-
return Promise.reject(new
|
|
491
|
+
return Promise.reject(new AsgardeoAuthException("SPA-AUTH_CLIENT-RCG-NF01", "The custom grant request id not found.", "The id attribute of the custom grant config object passed as an argument should have a value."));
|
|
488
492
|
}
|
|
489
493
|
const customGrantResponse = yield ((_a = this._client) === null || _a === void 0 ? void 0 : _a.requestCustomGrant(config));
|
|
490
494
|
const customGrantCallback = this._onCustomGrant.get(config.id);
|
|
@@ -563,9 +567,9 @@ export class AsgardeoSPAClient {
|
|
|
563
567
|
const mainThreadClient = this._client;
|
|
564
568
|
return mainThreadClient.getHttpClient();
|
|
565
569
|
}
|
|
566
|
-
throw new
|
|
570
|
+
throw new AsgardeoAuthException("SPA-AUTH_CLIENT-GHC-IV01", "Http client cannot be returned.", "The http client cannot be returned when the storage type is set to webWorker.");
|
|
567
571
|
}
|
|
568
|
-
throw new
|
|
572
|
+
throw new AsgardeoAuthException("SPA-AUTH_CLIENT-GHC-NF02", "The SDK is not initialized.", "The SDK has not been initialized yet. Initialize the SDK using the initialize method " +
|
|
569
573
|
"before calling this method.");
|
|
570
574
|
}
|
|
571
575
|
/**
|
|
@@ -644,7 +648,7 @@ export class AsgardeoSPAClient {
|
|
|
644
648
|
return __awaiter(this, void 0, void 0, function* () {
|
|
645
649
|
yield this._validateMethod();
|
|
646
650
|
if (this._storage && [(Storage.WebWorker, Storage.BrowserMemory)].includes(this._storage)) {
|
|
647
|
-
return Promise.reject(new
|
|
651
|
+
return Promise.reject(new AsgardeoAuthException("SPA-AUTH_CLIENT-GAT-IV01", "The access token cannot be returned.", "The access token cannot be returned when the storage type is set to webWorker or browserMemory."));
|
|
648
652
|
}
|
|
649
653
|
const mainThreadClient = this._client;
|
|
650
654
|
return mainThreadClient.getAccessToken();
|
|
@@ -730,12 +734,20 @@ export class AsgardeoSPAClient {
|
|
|
730
734
|
case Hooks.CustomGrant:
|
|
731
735
|
id && this._onCustomGrant.set(id, callback);
|
|
732
736
|
break;
|
|
737
|
+
case Hooks.SignOutFailed: {
|
|
738
|
+
this._onSignOutFailedCallback = callback;
|
|
739
|
+
const signOutFail = SPAUtils.didSignOutFail();
|
|
740
|
+
if (signOutFail) {
|
|
741
|
+
this._onSignOutFailedCallback(signOutFail);
|
|
742
|
+
}
|
|
743
|
+
break;
|
|
744
|
+
}
|
|
733
745
|
default:
|
|
734
|
-
throw new
|
|
746
|
+
throw new AsgardeoAuthException("SPA-AUTH_CLIENT-ON-IV01", "Invalid hook.", "The provided hook is invalid.");
|
|
735
747
|
}
|
|
736
748
|
}
|
|
737
749
|
else {
|
|
738
|
-
throw new
|
|
750
|
+
throw new AsgardeoAuthException("SPA-AUTH_CLIENT-ON-IV02", "Invalid callback function.", "The provided callback function is invalid.");
|
|
739
751
|
}
|
|
740
752
|
});
|
|
741
753
|
}
|
|
@@ -795,7 +807,7 @@ export class AsgardeoSPAClient {
|
|
|
795
807
|
* const config = {
|
|
796
808
|
* signInRedirectURL: "http://localhost:3000/sign-in",
|
|
797
809
|
* clientID: "client ID",
|
|
798
|
-
*
|
|
810
|
+
* baseUrl: "https://api.asgardeo.io"
|
|
799
811
|
* }
|
|
800
812
|
* const auth.updateConfig(config);
|
|
801
813
|
* ```
|
package/dist/src/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main-thread-client.d.ts","sourceRoot":"","sources":["../../../src/clients/main-thread-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"main-thread-client.d.ts","sourceRoot":"","sources":["../../../src/clients/main-thread-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAIH,gBAAgB,EAanB,MAAM,mBAAmB,CAAC;AAe3B,OAAO,EAKH,sBAAsB,EACtB,yBAAyB,EAE5B,MAAM,WAAW,CAAC;AAmBnB,eAAO,MAAM,gBAAgB,WACjB,iBAAiB,sBAAsB,CAAC,KACjD,QAAQ,yBAAyB,CA6qBnC,CAAC"}
|
|
@@ -24,13 +24,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
24
24
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
25
25
|
});
|
|
26
26
|
};
|
|
27
|
-
import { AUTHORIZATION_CODE, AsgardeoAuthClient, ResponseMode, SESSION_STATE } from "@asgardeo/auth-js";
|
|
28
|
-
import { CHECK_SESSION_SIGNED_IN, CHECK_SESSION_SIGNED_OUT, CUSTOM_GRANT_CONFIG, ERROR, ERROR_DESCRIPTION, PROMPT_NONE_IFRAME, RP_IFRAME, SILENT_SIGN_IN_STATE, Storage } from "../constants";
|
|
29
|
-
import { AsgardeoSPAException } from "../exception";
|
|
27
|
+
import { AUTHORIZATION_CODE, AsgardeoAuthClient, AsgardeoAuthException, AuthenticationUtils, ResponseMode, SESSION_STATE, STATE } from "@asgardeo/auth-js";
|
|
28
|
+
import { ACCESS_TOKEN_INVALID, CHECK_SESSION_SIGNED_IN, CHECK_SESSION_SIGNED_OUT, CUSTOM_GRANT_CONFIG, ERROR, ERROR_DESCRIPTION, PROMPT_NONE_IFRAME, RP_IFRAME, SILENT_SIGN_IN_STATE, Storage } from "../constants";
|
|
30
29
|
import { SPAHelper, SessionManagementHelper } from "../helpers";
|
|
31
30
|
import { HttpClient } from "../http-client";
|
|
32
31
|
import { LocalStore, MemoryStore, SessionStore } from "../stores";
|
|
33
32
|
import { SPAUtils } from "../utils";
|
|
33
|
+
import { SPACryptoUtils } from "../utils/crypto-utils";
|
|
34
34
|
const initiateStore = (store) => {
|
|
35
35
|
switch (store) {
|
|
36
36
|
case Storage.LocalStorage:
|
|
@@ -46,11 +46,12 @@ const initiateStore = (store) => {
|
|
|
46
46
|
export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, function* () {
|
|
47
47
|
var _a;
|
|
48
48
|
const _store = initiateStore(config.storage);
|
|
49
|
-
const
|
|
49
|
+
const _cryptoUtils = new SPACryptoUtils();
|
|
50
|
+
const _authenticationClient = new AsgardeoAuthClient(_store, _cryptoUtils);
|
|
50
51
|
yield _authenticationClient.initialize(config);
|
|
51
52
|
const _spaHelper = new SPAHelper(_authenticationClient);
|
|
52
53
|
const _dataLayer = _authenticationClient.getDataLayer();
|
|
53
|
-
const _sessionManagementHelper = SessionManagementHelper(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
54
|
+
const _sessionManagementHelper = yield SessionManagementHelper(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
54
55
|
return _authenticationClient.signOut();
|
|
55
56
|
}), (_a = config.storage) !== null && _a !== void 0 ? _a : Storage.SessionStorage, (sessionState) => _dataLayer.setSessionDataParameter(SESSION_STATE, sessionState !== null && sessionState !== void 0 ? sessionState : ""));
|
|
56
57
|
let _getSignOutURLFromSessionStorage = false;
|
|
@@ -82,8 +83,9 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
82
83
|
var _b, _c;
|
|
83
84
|
let matches = false;
|
|
84
85
|
const config = yield _dataLayer.getConfigData();
|
|
85
|
-
|
|
86
|
-
|
|
86
|
+
const serverOrigin = config.baseUrl || config.serverOrigin;
|
|
87
|
+
for (const baseUrl of [...((_b = (yield (config === null || config === void 0 ? void 0 : config.resourceServerURLs))) !== null && _b !== void 0 ? _b : []), serverOrigin]) {
|
|
88
|
+
if (baseUrl && ((_c = requestConfig === null || requestConfig === void 0 ? void 0 : requestConfig.url) === null || _c === void 0 ? void 0 : _c.startsWith(baseUrl))) {
|
|
87
89
|
matches = true;
|
|
88
90
|
break;
|
|
89
91
|
}
|
|
@@ -95,7 +97,7 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
95
97
|
return Promise.resolve(response);
|
|
96
98
|
})
|
|
97
99
|
.catch((error) => __awaiter(void 0, void 0, void 0, function* () {
|
|
98
|
-
var _d;
|
|
100
|
+
var _d, _e, _f;
|
|
99
101
|
if (((_d = error === null || error === void 0 ? void 0 : error.response) === null || _d === void 0 ? void 0 : _d.status) === 401 || !(error === null || error === void 0 ? void 0 : error.response)) {
|
|
100
102
|
// Try to refresh the token
|
|
101
103
|
let refreshTokenResponse;
|
|
@@ -105,13 +107,14 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
105
107
|
catch (refreshError) {
|
|
106
108
|
if (_isHttpHandlerEnabled) {
|
|
107
109
|
if (typeof _httpErrorCallback === "function") {
|
|
108
|
-
yield _httpErrorCallback(error);
|
|
110
|
+
yield _httpErrorCallback(Object.assign(Object.assign({}, error), { code: ACCESS_TOKEN_INVALID }));
|
|
109
111
|
}
|
|
110
112
|
if (typeof _httpFinishCallback === "function") {
|
|
111
113
|
_httpFinishCallback();
|
|
112
114
|
}
|
|
113
115
|
}
|
|
114
|
-
|
|
116
|
+
throw new AsgardeoAuthException("SPA-MAIN_THREAD_CLIENT-HR-SE01", (_e = refreshError === null || refreshError === void 0 ? void 0 : refreshError.name) !== null && _e !== void 0 ? _e : "Refresh token request failed.", (_f = refreshError === null || refreshError === void 0 ? void 0 : refreshError.message) !== null && _f !== void 0 ? _f : "An error occurred while trying to refresh the " +
|
|
117
|
+
"access token following a 401 response from the server.");
|
|
115
118
|
}
|
|
116
119
|
// Retry the request after refreshing the token
|
|
117
120
|
if (refreshTokenResponse) {
|
|
@@ -144,19 +147,23 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
144
147
|
}));
|
|
145
148
|
}
|
|
146
149
|
else {
|
|
147
|
-
|
|
150
|
+
throw new AsgardeoAuthException("SPA-MAIN_THREAD_CLIENT-HR-IV02", "Request to the provided endpoint is prohibited.", "Requests can only be sent to resource servers specified by the `resourceServerURLs`" +
|
|
148
151
|
" attribute while initializing the SDK. The specified endpoint in this request " +
|
|
149
|
-
"cannot be found among the `resourceServerURLs`")
|
|
152
|
+
"cannot be found among the `resourceServerURLs`");
|
|
150
153
|
}
|
|
151
154
|
});
|
|
152
155
|
const httpRequestAll = (requestConfigs) => __awaiter(void 0, void 0, void 0, function* () {
|
|
153
|
-
var
|
|
156
|
+
var _g, _h, _j;
|
|
154
157
|
let matches = true;
|
|
155
158
|
const config = yield _dataLayer.getConfigData();
|
|
159
|
+
const serverOrigin = config.baseUrl || config.serverOrigin;
|
|
156
160
|
for (const requestConfig of requestConfigs) {
|
|
157
161
|
let urlMatches = false;
|
|
158
|
-
for (const baseUrl of [
|
|
159
|
-
|
|
162
|
+
for (const baseUrl of [
|
|
163
|
+
...((_h = (_g = (yield config)) === null || _g === void 0 ? void 0 : _g.resourceServerURLs) !== null && _h !== void 0 ? _h : []),
|
|
164
|
+
serverOrigin
|
|
165
|
+
]) {
|
|
166
|
+
if (baseUrl && ((_j = requestConfig.url) === null || _j === void 0 ? void 0 : _j.startsWith(baseUrl))) {
|
|
160
167
|
urlMatches = true;
|
|
161
168
|
break;
|
|
162
169
|
}
|
|
@@ -178,8 +185,8 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
178
185
|
return Promise.resolve(responses);
|
|
179
186
|
})
|
|
180
187
|
.catch((error) => __awaiter(void 0, void 0, void 0, function* () {
|
|
181
|
-
var
|
|
182
|
-
if (((
|
|
188
|
+
var _k, _l, _m;
|
|
189
|
+
if (((_k = error === null || error === void 0 ? void 0 : error.response) === null || _k === void 0 ? void 0 : _k.status) === 401 || !(error === null || error === void 0 ? void 0 : error.response)) {
|
|
183
190
|
let refreshTokenResponse;
|
|
184
191
|
try {
|
|
185
192
|
refreshTokenResponse = yield _authenticationClient.refreshAccessToken();
|
|
@@ -187,16 +194,17 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
187
194
|
catch (refreshError) {
|
|
188
195
|
if (_isHttpHandlerEnabled) {
|
|
189
196
|
if (typeof _httpErrorCallback === "function") {
|
|
190
|
-
yield _httpErrorCallback(error);
|
|
197
|
+
yield _httpErrorCallback(Object.assign(Object.assign({}, error), { code: ACCESS_TOKEN_INVALID }));
|
|
191
198
|
}
|
|
192
199
|
if (typeof _httpFinishCallback === "function") {
|
|
193
200
|
_httpFinishCallback();
|
|
194
201
|
}
|
|
195
202
|
}
|
|
196
|
-
|
|
203
|
+
throw new AsgardeoAuthException("SPA-MAIN_THREAD_CLIENT-HRA-SE01", (_l = refreshError === null || refreshError === void 0 ? void 0 : refreshError.name) !== null && _l !== void 0 ? _l : "Refresh token request failed.", (_m = refreshError === null || refreshError === void 0 ? void 0 : refreshError.message) !== null && _m !== void 0 ? _m : "An error occurred while trying to refresh the " +
|
|
204
|
+
"access token following a 401 response from the server.");
|
|
197
205
|
}
|
|
198
206
|
if (refreshTokenResponse) {
|
|
199
|
-
return _httpClient.all &&
|
|
207
|
+
return (_httpClient.all &&
|
|
200
208
|
_httpClient
|
|
201
209
|
.all(requests)
|
|
202
210
|
.then((response) => {
|
|
@@ -212,7 +220,7 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
212
220
|
}
|
|
213
221
|
}
|
|
214
222
|
return Promise.reject(error);
|
|
215
|
-
}));
|
|
223
|
+
})));
|
|
216
224
|
}
|
|
217
225
|
}
|
|
218
226
|
if (_isHttpHandlerEnabled) {
|
|
@@ -227,9 +235,9 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
227
235
|
})));
|
|
228
236
|
}
|
|
229
237
|
else {
|
|
230
|
-
|
|
238
|
+
throw new AsgardeoAuthException("SPA-MAIN_THREAD_CLIENT-HRA-IV02", "Request to the provided endpoint is prohibited.", "Requests can only be sent to resource servers specified by the `resourceServerURLs`" +
|
|
231
239
|
" attribute while initializing the SDK. The specified endpoint in this request " +
|
|
232
|
-
"cannot be found among the `resourceServerURLs`")
|
|
240
|
+
"cannot be found among the `resourceServerURLs`");
|
|
233
241
|
}
|
|
234
242
|
});
|
|
235
243
|
const getHttpClient = () => {
|
|
@@ -246,13 +254,13 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
246
254
|
return true;
|
|
247
255
|
};
|
|
248
256
|
const checkSession = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
249
|
-
var
|
|
257
|
+
var _o, _p, _q;
|
|
250
258
|
const oidcEndpoints = yield _authenticationClient.getOIDCServiceEndpoints();
|
|
251
259
|
const config = yield _dataLayer.getConfigData();
|
|
252
|
-
_sessionManagementHelper.initialize(config.clientID, (
|
|
260
|
+
_sessionManagementHelper.initialize(config.clientID, (_o = oidcEndpoints.checkSessionIframe) !== null && _o !== void 0 ? _o : "", () => __awaiter(void 0, void 0, void 0, function* () { return (yield _authenticationClient.getBasicUserInfo()).sessionState; }), (_p = config.checkSessionInterval) !== null && _p !== void 0 ? _p : 3, (_q = config.sessionRefreshInterval) !== null && _q !== void 0 ? _q : 300, config.signInRedirectURL, (params) => __awaiter(void 0, void 0, void 0, function* () { return _authenticationClient.getAuthorizationURL(params); }));
|
|
253
261
|
});
|
|
254
|
-
const signIn = (signInConfig, authorizationCode, sessionState) => __awaiter(void 0, void 0, void 0, function* () {
|
|
255
|
-
var
|
|
262
|
+
const signIn = (signInConfig, authorizationCode, sessionState, state) => __awaiter(void 0, void 0, void 0, function* () {
|
|
263
|
+
var _r, _s, _t;
|
|
256
264
|
const config = yield _dataLayer.getConfigData();
|
|
257
265
|
const shouldStopContinue = yield _sessionManagementHelper.receivePromptNoneResponse((sessionState) => __awaiter(void 0, void 0, void 0, function* () {
|
|
258
266
|
yield _dataLayer.setSessionDataParameter(SESSION_STATE, sessionState !== null && sessionState !== void 0 ? sessionState : "");
|
|
@@ -280,17 +288,20 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
280
288
|
}
|
|
281
289
|
let resolvedAuthorizationCode;
|
|
282
290
|
let resolvedSessionState;
|
|
291
|
+
let resolvedState;
|
|
283
292
|
if ((config === null || config === void 0 ? void 0 : config.responseMode) === ResponseMode.formPost && authorizationCode) {
|
|
284
293
|
resolvedAuthorizationCode = authorizationCode;
|
|
285
294
|
resolvedSessionState = sessionState !== null && sessionState !== void 0 ? sessionState : "";
|
|
295
|
+
resolvedState = state !== null && state !== void 0 ? state : "";
|
|
286
296
|
}
|
|
287
297
|
else {
|
|
288
|
-
resolvedAuthorizationCode = (
|
|
289
|
-
resolvedSessionState = (
|
|
298
|
+
resolvedAuthorizationCode = (_r = new URL(window.location.href).searchParams.get(AUTHORIZATION_CODE)) !== null && _r !== void 0 ? _r : "";
|
|
299
|
+
resolvedSessionState = (_s = new URL(window.location.href).searchParams.get(SESSION_STATE)) !== null && _s !== void 0 ? _s : "";
|
|
300
|
+
resolvedState = (_t = new URL(window.location.href).searchParams.get(STATE)) !== null && _t !== void 0 ? _t : "";
|
|
290
301
|
SPAUtils.removeAuthorizationCode();
|
|
291
302
|
}
|
|
292
|
-
if (resolvedAuthorizationCode) {
|
|
293
|
-
return requestAccessToken(resolvedAuthorizationCode, resolvedSessionState);
|
|
303
|
+
if (resolvedAuthorizationCode && resolvedState) {
|
|
304
|
+
return requestAccessToken(resolvedAuthorizationCode, resolvedSessionState, resolvedState);
|
|
294
305
|
}
|
|
295
306
|
const error = new URL(window.location.href).searchParams.get(ERROR);
|
|
296
307
|
const errorDescription = new URL(window.location.href).searchParams.get(ERROR_DESCRIPTION);
|
|
@@ -299,11 +310,12 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
299
310
|
url.searchParams.delete(ERROR);
|
|
300
311
|
url.searchParams.delete(ERROR_DESCRIPTION);
|
|
301
312
|
history.pushState(null, document.title, url.toString());
|
|
302
|
-
|
|
313
|
+
throw new AsgardeoAuthException("SPA-MAIN_THREAD_CLIENT-SI-SE01", error, errorDescription !== null && errorDescription !== void 0 ? errorDescription : "");
|
|
303
314
|
}
|
|
304
315
|
return _authenticationClient.getAuthorizationURL(signInConfig).then((url) => __awaiter(void 0, void 0, void 0, function* () {
|
|
305
316
|
if (config.storage === Storage.BrowserMemory && config.enablePKCE) {
|
|
306
|
-
|
|
317
|
+
const pkceKey = AuthenticationUtils.extractPKCEKeyFromStateParam(resolvedState);
|
|
318
|
+
SPAUtils.setPKCE(pkceKey, (yield _authenticationClient.getPKCECode(resolvedState)));
|
|
307
319
|
}
|
|
308
320
|
location.href = url;
|
|
309
321
|
yield SPAUtils.waitTillPageRedirect();
|
|
@@ -333,18 +345,18 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
333
345
|
return true;
|
|
334
346
|
});
|
|
335
347
|
const requestCustomGrant = (config) => __awaiter(void 0, void 0, void 0, function* () {
|
|
336
|
-
var
|
|
348
|
+
var _u, _v, _w;
|
|
337
349
|
let useDefaultEndpoint = true;
|
|
338
350
|
let matches = false;
|
|
339
|
-
const
|
|
351
|
+
const serverOrigin = config.baseUrl || config.serverOrigin;
|
|
340
352
|
// If the config does not contains a token endpoint, default token endpoint will be used.
|
|
341
353
|
if (config === null || config === void 0 ? void 0 : config.tokenEndpoint) {
|
|
342
354
|
useDefaultEndpoint = false;
|
|
343
355
|
for (const baseUrl of [
|
|
344
|
-
...((
|
|
345
|
-
|
|
356
|
+
...((_v = (_u = (yield _dataLayer.getConfigData())) === null || _u === void 0 ? void 0 : _u.resourceServerURLs) !== null && _v !== void 0 ? _v : []),
|
|
357
|
+
serverOrigin
|
|
346
358
|
]) {
|
|
347
|
-
if ((
|
|
359
|
+
if (baseUrl && ((_w = config.tokenEndpoint) === null || _w === void 0 ? void 0 : _w.startsWith(baseUrl))) {
|
|
348
360
|
matches = true;
|
|
349
361
|
break;
|
|
350
362
|
}
|
|
@@ -373,7 +385,7 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
373
385
|
});
|
|
374
386
|
}
|
|
375
387
|
else {
|
|
376
|
-
return Promise.reject(new
|
|
388
|
+
return Promise.reject(new AsgardeoAuthException("SPA-MAIN_THREAD_CLIENT-RCG-IV01", "Request to the provided endpoint is prohibited.", "Requests can only be sent to resource servers specified by the `resourceServerURLs`" +
|
|
377
389
|
" attribute while initializing the SDK. The specified token endpoint in this request " +
|
|
378
390
|
"cannot be found among the `resourceServerURLs`"));
|
|
379
391
|
}
|
|
@@ -402,14 +414,14 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
402
414
|
})
|
|
403
415
|
.catch((error) => Promise.reject(error));
|
|
404
416
|
};
|
|
405
|
-
const requestAccessToken = (resolvedAuthorizationCode, resolvedSessionState) => __awaiter(void 0, void 0, void 0, function* () {
|
|
417
|
+
const requestAccessToken = (resolvedAuthorizationCode, resolvedSessionState, resolvedState) => __awaiter(void 0, void 0, void 0, function* () {
|
|
406
418
|
const config = yield _dataLayer.getConfigData();
|
|
407
419
|
if (config.storage === Storage.BrowserMemory && config.enablePKCE) {
|
|
408
|
-
const pkce = SPAUtils.getPKCE();
|
|
409
|
-
yield _authenticationClient.setPKCECode(pkce);
|
|
420
|
+
const pkce = SPAUtils.getPKCE(AuthenticationUtils.extractPKCEKeyFromStateParam(resolvedState));
|
|
421
|
+
yield _authenticationClient.setPKCECode(AuthenticationUtils.extractPKCEKeyFromStateParam(resolvedState), pkce);
|
|
410
422
|
}
|
|
411
423
|
return _authenticationClient
|
|
412
|
-
.requestAccessToken(resolvedAuthorizationCode, resolvedSessionState)
|
|
424
|
+
.requestAccessToken(resolvedAuthorizationCode, resolvedSessionState, resolvedState)
|
|
413
425
|
.then(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
414
426
|
// Disable this temporarily
|
|
415
427
|
/* if (config.storage === Storage.BrowserMemory) {
|
|
@@ -436,7 +448,7 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
436
448
|
* if the user is signed in or with `false` if there is no active user session in the server.
|
|
437
449
|
*/
|
|
438
450
|
const trySignInSilently = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
439
|
-
var
|
|
451
|
+
var _x;
|
|
440
452
|
const config = yield _dataLayer.getConfigData();
|
|
441
453
|
if (SPAUtils.isInitializedSilentSignIn()) {
|
|
442
454
|
yield _sessionManagementHelper.receivePromptNoneResponse();
|
|
@@ -451,7 +463,7 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
451
463
|
});
|
|
452
464
|
}
|
|
453
465
|
const rpIFrame = document.getElementById(RP_IFRAME);
|
|
454
|
-
const promptNoneIFrame = (
|
|
466
|
+
const promptNoneIFrame = (_x = rpIFrame === null || rpIFrame === void 0 ? void 0 : rpIFrame.contentDocument) === null || _x === void 0 ? void 0 : _x.getElementById(PROMPT_NONE_IFRAME);
|
|
455
467
|
try {
|
|
456
468
|
const urlString = yield _authenticationClient.getAuthorizationURL({
|
|
457
469
|
prompt: "none",
|
|
@@ -462,7 +474,8 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
462
474
|
urlObject.searchParams.set("response_mode", "query");
|
|
463
475
|
const url = urlObject.toString();
|
|
464
476
|
if (config.storage === Storage.BrowserMemory && config.enablePKCE) {
|
|
465
|
-
|
|
477
|
+
const state = urlObject.searchParams.get(STATE);
|
|
478
|
+
SPAUtils.setPKCE(AuthenticationUtils.extractPKCEKeyFromStateParam(state !== null && state !== void 0 ? state : ""), (yield _authenticationClient.getPKCECode(state !== null && state !== void 0 ? state : "")));
|
|
466
479
|
}
|
|
467
480
|
promptNoneIFrame.src = url;
|
|
468
481
|
}
|
|
@@ -474,7 +487,7 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
474
487
|
resolve(false);
|
|
475
488
|
}, 10000);
|
|
476
489
|
const listenToPromptNoneIFrame = (e) => __awaiter(void 0, void 0, void 0, function* () {
|
|
477
|
-
var _a, _b;
|
|
490
|
+
var _a, _b, _c;
|
|
478
491
|
const data = e.data;
|
|
479
492
|
if ((data === null || data === void 0 ? void 0 : data.type) == CHECK_SESSION_SIGNED_OUT) {
|
|
480
493
|
window.removeEventListener("message", listenToPromptNoneIFrame);
|
|
@@ -482,7 +495,7 @@ export const MainThreadClient = (config) => __awaiter(void 0, void 0, void 0, fu
|
|
|
482
495
|
resolve(false);
|
|
483
496
|
}
|
|
484
497
|
if ((data === null || data === void 0 ? void 0 : data.type) == CHECK_SESSION_SIGNED_IN && ((_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.code)) {
|
|
485
|
-
requestAccessToken(data.data.code, (_b = data === null || data === void 0 ? void 0 : data.data) === null || _b === void 0 ? void 0 : _b.sessionState)
|
|
498
|
+
requestAccessToken(data.data.code, (_b = data === null || data === void 0 ? void 0 : data.data) === null || _b === void 0 ? void 0 : _b.sessionState, (_c = data === null || data === void 0 ? void 0 : data.data) === null || _c === void 0 ? void 0 : _c.state)
|
|
486
499
|
.then((response) => {
|
|
487
500
|
window.removeEventListener("message", listenToPromptNoneIFrame);
|
|
488
501
|
resolve(response);
|