@auth0/auth0-spa-js 2.17.1 → 2.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/auth0-spa-js.development.js +57 -38
- package/dist/auth0-spa-js.development.js.map +1 -1
- package/dist/auth0-spa-js.production.esm.js +1 -1
- package/dist/auth0-spa-js.production.esm.js.map +1 -1
- package/dist/auth0-spa-js.production.js +1 -1
- package/dist/auth0-spa-js.production.js.map +1 -1
- package/dist/auth0-spa-js.worker.development.js.map +1 -1
- package/dist/auth0-spa-js.worker.production.js.map +1 -1
- package/dist/lib/auth0-spa-js.cjs.js +57 -38
- package/dist/lib/auth0-spa-js.cjs.js.map +1 -1
- package/dist/typings/Auth0Client.d.ts +24 -0
- package/dist/typings/global.d.ts +42 -0
- package/dist/typings/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/Auth0Client.ts +57 -2
- package/src/global.ts +44 -0
- package/src/utils.ts +9 -4
- package/src/version.ts +1 -1
package/README.md
CHANGED
|
@@ -30,7 +30,7 @@ npm install @auth0/auth0-spa-js
|
|
|
30
30
|
From the CDN:
|
|
31
31
|
|
|
32
32
|
```html
|
|
33
|
-
<script src="https://cdn.auth0.com/js/auth0-spa-js/2.
|
|
33
|
+
<script src="https://cdn.auth0.com/js/auth0-spa-js/2.18/auth0-spa-js.production.js"></script>
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
### Configure Auth0
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
var e = new Error(message);
|
|
16
16
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
17
17
|
};
|
|
18
|
-
var version = "2.
|
|
18
|
+
var version = "2.18.0";
|
|
19
19
|
const DEFAULT_AUTHORIZE_TIMEOUT_IN_SECONDS = 60;
|
|
20
20
|
const DEFAULT_POPUP_CONFIG_OPTIONS = {
|
|
21
21
|
timeoutInSeconds: DEFAULT_AUTHORIZE_TIMEOUT_IN_SECONDS
|
|
@@ -218,9 +218,16 @@
|
|
|
218
218
|
const getCrypto = () => window.crypto;
|
|
219
219
|
const createRandomString = () => {
|
|
220
220
|
const charset = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_~.";
|
|
221
|
+
const validMax = 256 - 256 % charset.length;
|
|
221
222
|
let random = "";
|
|
222
|
-
|
|
223
|
-
|
|
223
|
+
while (random.length < 43) {
|
|
224
|
+
const bytes = getCrypto().getRandomValues(new Uint8Array(43 - random.length));
|
|
225
|
+
for (const byte of bytes) {
|
|
226
|
+
if (random.length < 43 && byte < validMax) {
|
|
227
|
+
random += charset[byte % charset.length];
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
224
231
|
return random;
|
|
225
232
|
};
|
|
226
233
|
const encode$2 = value => btoa(value);
|
|
@@ -2484,55 +2491,40 @@
|
|
|
2484
2491
|
};
|
|
2485
2492
|
}
|
|
2486
2493
|
function AsyncGenerator(e) {
|
|
2487
|
-
var
|
|
2488
|
-
function resume(
|
|
2494
|
+
var t, n;
|
|
2495
|
+
function resume(t, n) {
|
|
2489
2496
|
try {
|
|
2490
|
-
var
|
|
2491
|
-
Promise.resolve(u ? o.v : o).then(function(
|
|
2497
|
+
var r = e[t](n), o = r.value, u = o instanceof _OverloadYield;
|
|
2498
|
+
Promise.resolve(u ? o.v : o).then(function(n) {
|
|
2492
2499
|
if (u) {
|
|
2493
|
-
var i = "return" ===
|
|
2494
|
-
if (!o.k ||
|
|
2495
|
-
|
|
2500
|
+
var i = "return" === t && o.k ? t : "next";
|
|
2501
|
+
if (!o.k || n.done) return resume(i, n);
|
|
2502
|
+
n = e[i](n).value;
|
|
2496
2503
|
}
|
|
2497
|
-
settle(
|
|
2504
|
+
settle(!!r.done, n);
|
|
2498
2505
|
}, function(e) {
|
|
2499
2506
|
resume("throw", e);
|
|
2500
2507
|
});
|
|
2501
2508
|
} catch (e) {
|
|
2502
|
-
settle(
|
|
2509
|
+
settle(2, e);
|
|
2503
2510
|
}
|
|
2504
2511
|
}
|
|
2505
|
-
function settle(e,
|
|
2506
|
-
|
|
2507
|
-
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
done: !0
|
|
2511
|
-
});
|
|
2512
|
-
break;
|
|
2513
|
-
|
|
2514
|
-
case "throw":
|
|
2515
|
-
r.reject(n);
|
|
2516
|
-
break;
|
|
2517
|
-
|
|
2518
|
-
default:
|
|
2519
|
-
r.resolve({
|
|
2520
|
-
value: n,
|
|
2521
|
-
done: !1
|
|
2522
|
-
});
|
|
2523
|
-
}
|
|
2524
|
-
(r = r.next) ? resume(r.key, r.arg) : t = null;
|
|
2512
|
+
function settle(e, r) {
|
|
2513
|
+
2 === e ? t.reject(r) : t.resolve({
|
|
2514
|
+
value: r,
|
|
2515
|
+
done: e
|
|
2516
|
+
}), (t = t.next) ? resume(t.key, t.arg) : n = null;
|
|
2525
2517
|
}
|
|
2526
|
-
this._invoke = function(e,
|
|
2518
|
+
this._invoke = function(e, r) {
|
|
2527
2519
|
return new Promise(function(o, u) {
|
|
2528
2520
|
var i = {
|
|
2529
2521
|
key: e,
|
|
2530
|
-
arg:
|
|
2522
|
+
arg: r,
|
|
2531
2523
|
resolve: o,
|
|
2532
2524
|
reject: u,
|
|
2533
2525
|
next: null
|
|
2534
2526
|
};
|
|
2535
|
-
|
|
2527
|
+
n ? n = n.next = i : (t = n = i, resume(e, r));
|
|
2536
2528
|
});
|
|
2537
2529
|
}, "function" != typeof e.return && (this.return = void 0);
|
|
2538
2530
|
}
|
|
@@ -6333,7 +6325,7 @@
|
|
|
6333
6325
|
let USER_AGENT;
|
|
6334
6326
|
if (typeof navigator === "undefined" || !((_navigator$userAgent = navigator.userAgent) !== null && _navigator$userAgent !== void 0 && (_navigator$userAgent$ = _navigator$userAgent.startsWith) !== null && _navigator$userAgent$ !== void 0 && _navigator$userAgent$.call(_navigator$userAgent, "Mozilla/5.0 "))) {
|
|
6335
6327
|
const NAME = "jose";
|
|
6336
|
-
const VERSION = "v6.2.
|
|
6328
|
+
const VERSION = "v6.2.2";
|
|
6337
6329
|
USER_AGENT = "".concat(NAME, "/").concat(VERSION);
|
|
6338
6330
|
}
|
|
6339
6331
|
const customFetch = Symbol();
|
|
@@ -7699,6 +7691,31 @@
|
|
|
7699
7691
|
});
|
|
7700
7692
|
}
|
|
7701
7693
|
}
|
|
7694
|
+
_extractSessionTransferToken(paramName) {
|
|
7695
|
+
const params = new URLSearchParams(window.location.search);
|
|
7696
|
+
return params.get(paramName) || undefined;
|
|
7697
|
+
}
|
|
7698
|
+
_clearSessionTransferTokenFromUrl(paramName) {
|
|
7699
|
+
try {
|
|
7700
|
+
const url = new URL(window.location.href);
|
|
7701
|
+
if (url.searchParams.has(paramName)) {
|
|
7702
|
+
url.searchParams.delete(paramName);
|
|
7703
|
+
window.history.replaceState({}, "", url.toString());
|
|
7704
|
+
}
|
|
7705
|
+
} catch (_a) {}
|
|
7706
|
+
}
|
|
7707
|
+
_applySessionTransferToken(authorizationParams) {
|
|
7708
|
+
const paramName = this.options.sessionTransferTokenQueryParamName;
|
|
7709
|
+
if (!paramName || authorizationParams.session_transfer_token) {
|
|
7710
|
+
return authorizationParams;
|
|
7711
|
+
}
|
|
7712
|
+
const token = this._extractSessionTransferToken(paramName);
|
|
7713
|
+
if (!token) return authorizationParams;
|
|
7714
|
+
this._clearSessionTransferTokenFromUrl(paramName);
|
|
7715
|
+
return Object.assign(Object.assign({}, authorizationParams), {
|
|
7716
|
+
session_transfer_token: token
|
|
7717
|
+
});
|
|
7718
|
+
}
|
|
7702
7719
|
async _prepareAuthorizeUrl(authorizationParams, authorizeOptions, fallbackRedirectUri) {
|
|
7703
7720
|
var _a;
|
|
7704
7721
|
const state = encode$2(createRandomString());
|
|
@@ -7729,7 +7746,8 @@
|
|
|
7729
7746
|
throw new PopupOpenError;
|
|
7730
7747
|
}
|
|
7731
7748
|
}
|
|
7732
|
-
const
|
|
7749
|
+
const authorizationParams = this._applySessionTransferToken(options.authorizationParams || {});
|
|
7750
|
+
const params = await this._prepareAuthorizeUrl(authorizationParams, {
|
|
7733
7751
|
response_mode: "web_message"
|
|
7734
7752
|
}, window.location.origin);
|
|
7735
7753
|
config.popup.location.href = params.url;
|
|
@@ -7767,7 +7785,8 @@
|
|
|
7767
7785
|
var _a;
|
|
7768
7786
|
const _b = patchOpenUrlWithOnRedirect(options), {openUrl: openUrl, fragment: fragment, appState: appState} = _b, urlOptions = __rest(_b, [ "openUrl", "fragment", "appState" ]);
|
|
7769
7787
|
const organization = ((_a = urlOptions.authorizationParams) === null || _a === void 0 ? void 0 : _a.organization) || this.options.authorizationParams.organization;
|
|
7770
|
-
const
|
|
7788
|
+
const authorizationParams = this._applySessionTransferToken(urlOptions.authorizationParams || {});
|
|
7789
|
+
const _c = await this._prepareAuthorizeUrl(authorizationParams), {url: url} = _c, transaction = __rest(_c, [ "url" ]);
|
|
7771
7790
|
this.transactionManager.create(Object.assign(Object.assign(Object.assign({}, transaction), {
|
|
7772
7791
|
appState: appState,
|
|
7773
7792
|
response_type: exports.ResponseType.Code
|