1// Okta Auth JS - 4.0.0 2var OktaAuth = function(r) { 3 var n = {}; 4 5 function o(e) { 6 if (n[e]) return n[e].exports; 7 var t = n[e] = { 8 i: e, 9 l: !1, 10 exports: {} 11 }; 12 return r[e].call(t.exports, t, t.exports, o), t.l = !0, t.exports 13 } 14 return o.m = r, o.c = n, o.d = function(e, t, r) { 15 o.o(e, t) || Object.defineProperty(e, t, { 16 enumerable: !0, 17 get: r 18 }) 19 }, o.r = function(e) { 20 "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { 21 value: "Module" 22 }), Object.defineProperty(e, "__esModule", { 23 value: !0 24 }) 25 }, o.t = function(t, e) { 26 if (1 & e && (t = o(t)), 8 & e) return t; 27 if (4 & e && "object" == typeof t && t && t.__esModule) return t; 28 var r = Object.create(null); 29 if (o.r(r), Object.defineProperty(r, "default", { 30 enumerable: !0, 31 value: t 32 }), 2 & e && "string" != typeof t) 33 for (var n in t) o.d(r, n, function(e) { 34 return t[e] 35 }.bind(null, n)); 36 return r 37 }, o.n = function(e) { 38 var t = e && e.__esModule ? function() { 39 return e.default 40 } : function() { 41 return e 42 }; 43 return o.d(t, "a", t), t 44 }, o.o = function(e, t) { 45 return Object.prototype.hasOwnProperty.call(e, t) 46 }, o.p = "", o(o.s = 30) 47}([function(e, t) { 48 e.exports = function(e) { 49 return e && e.__esModule ? e : { 50 default: e 51 } 52 } 53}, function(e, t) { 54 e.exports = function(e, t) { 55 if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") 56 } 57}, function(e, t, r) { 58 "use strict"; 59 60 function n(e) { 61 return e.replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "") 62 } 63 64 function o(e) { 65 return e.replace(/-/g, "+").replace(/_/g, "/") 66 } 67 68 function a(e) { 69 if (e) { 70 var t = JSON.stringify(e); 71 if (t) return JSON.parse(t) 72 } 73 return e 74 } 75 76 function i() { 77 return "undefined" != typeof window ? window.console : "undefined" != typeof console ? console : void 0 78 } 79 80 function s() { 81 var e = i(); 82 return e && e.log ? e : { 83 log: function() {} 84 } 85 } 86 87 function u(e) { 88 s().log("[okta-auth-sdk] DEPRECATION: " + e) 89 } 90 t.stringToBase64Url = function(e) { 91 return n(btoa(e)) 92 }, t.base64ToBase64Url = n, t.base64UrlToBase64 = o, t.base64UrlToString = function(e) { 93 var t = o(e); 94 switch (t.length % 4) { 95 case 0: 96 break; 97 case 2: 98 t += "=="; 99 break; 100 case 3: 101 t += "="; 102 break; 103 default: 104 throw "Not a valid Base64Url" 105 } 106 var r = atob(t); 107 try { 108 return decodeURIComponent(escape(r)) 109 } catch (e) { 110 return r 111 } 112 }, t.stringToBuffer = function(e) { 113 for (var t = new Uint8Array(e.length), r = 0; r < e.length; r++) t[r] = e.charCodeAt(r); 114 return t 115 }, t.base64UrlDecode = function(e) { 116 return atob(o(e)) 117 }, t.bind = function(t, r) { 118 var n = Array.prototype.slice.call(arguments, 2); 119 return function() { 120 var e = Array.prototype.slice.call(arguments), 121 e = n.concat(e); 122 return t.apply(r, e) 123 } 124 }, t.isAbsoluteUrl = function(e) { 125 return /^(?:[a-z]+:)?\/\//i.test(e) 126 }, t.isString = function(e) { 127 return "[object String]" === Object.prototype.toString.call(e) 128 }, t.isObject = function(e) { 129 return "[object Object]" === Object.prototype.toString.call(e) 130 }, t.isNumber = function(e) { 131 return "[object Number]" === Object.prototype.toString.call(e) 132 }, t.isoToUTCString = function(e) { 133 e = e.match(/\d+/g), e = Date.UTC(e[0], e[1] - 1, e[2], e[3], e[4], e[5]); 134 return new Date(e).toUTCString() 135 }, t.toQueryParams = function(e) { 136 var t = []; 137 if (null !== e) 138 for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && void 0 !== e[r] && null !== e[r] && t.push(r + "=" + encodeURIComponent(e[r])); 139 return t.length ? "?" + t.join("&") : "" 140 }, t.genRandomString = function(e) { 141 for (var t = "abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", r = "", n = 0, o = t.length; n < e; ++n) r += t[Math.floor(Math.random() * o)]; 142 return r 143 }, t.extend = function() { 144 var r = arguments[0];
145 return [].slice.call(arguments, 1).forEach(function(e) { 146 for (var t in e) Object.prototype.hasOwnProperty.call(e, t) && void 0 !== e[t] && (r[t] = e[t]) 147 }), r 148 }, t.removeNils = function(e) { 149 var t, r, n = {}; 150 for (t in e) !Object.prototype.hasOwnProperty.call(e, t) || null != (r = e[t]) && (n[t] = r); 151 return n 152 }, t.clone = a, t.omit = function(e) { 153 for (var t, r = {}, n = arguments.length, o = new Array(1 < n ? n - 1 : 0), i = 1; i < n; i++) o[i - 1] = arguments[i]; 154 for (t in e) Object.prototype.hasOwnProperty.call(e, t) && -1 == o.indexOf(t) && (r[t] = e[t]); 155 return a(r) 156 }, t.find = function(e, t) { 157 for (var r = e.length; r--;) { 158 var n, o = e[r], 159 i = !0; 160 for (n in t) 161 if (Object.prototype.hasOwnProperty.call(t, n) && o[n] !== t[n]) { 162 i = !1; 163 break 164 } 165 if (i) return o 166 } 167 }, t.getLink = function(e, t, r) { 168 if (e && e._links) { 169 t = a(e._links[t]); 170 return !(t && t.name && r) || t.name === r ? t : void 0 171 } 172 }, t.getNativeConsole = i, t.getConsole = s, t.warn = function(e) { 173 s().log("[okta-auth-sdk] WARN: " + e) 174 }, t.deprecate = u, t.deprecateWrap = function(e, t) { 175 return function() { 176 return u(e), t.apply(null, arguments) 177 } 178 }, t.removeTrailingSlash = function(e) { 179 if (e) { 180 e = e.replace(/^\s+|\s+$/gm, ""); 181 return e.replace(/\/+$/, "") 182 } 183 }, t.isIE11OrLess = function() { 184 return !!document.documentMode && document.documentMode <= 11 185 }, t.isFunction = function(e) { 186 return !!e && "[object Function]" === {}.toString.call(e) 187 }, t.delay = function(t) { 188 return new Promise(function(e) { 189 setTimeout(e, t) 190 }) 191 }, t.isPromise = function(e) { 192 return e && e.finally && "function" == typeof e.finally 193 } 194}, function(e, t, r) { 195 "use strict"; 196 var n = r(0); 197 t.default = void 0; 198 var a = n(r(1)), 199 s = n(r(7)), 200 u = n(r(8)), 201 c = n(r(5)); 202 r = function(e) { 203 (0, s.default)(i, e); 204 var r, n, o = (r = i, n = function() { 205 if ("undefined" == typeof Reflect || !Reflect.construct) return !1; 206 if (Reflect.construct.sham) return !1; 207 if ("function" == typeof Proxy) return !0; 208 try { 209 return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 210 } catch (e) { 211 return !1 212 } 213 }(), function() { 214 var e, t = (0, c.default)(r); 215 return t = n ? (e = (0, c.default)(this).constructor, Reflect.construct(t, arguments, e)) : t.apply(this, arguments), (0, u.default)(this, t) 216 }); 217 218 function i(e, t) { 219 var r; 220 return (0, a.default)(this, i), (r = o.call(this, e)).name = "AuthSdkError", r.errorCode = "INTERNAL", r.errorSummary = e, r.errorLink = "INTERNAL", r.errorId = "INTERNAL", r.errorCauses = [], t && (r.xhr = t), r 221 } 222 return i 223 }(n(r(11)).default); 224 t.default = r, e.exports = t.default 225}, function(e, t, r) { 226 "use strict"; 227 var n = r(0); 228 t.default = void 0; 229 var h = r(2), 230 g = n(r(23)), 231 y = r(6); 232 233 function o(r, t) { 234 var n = (t = t || {}).url, 235 e = t.method, 236 o = t.args, 237 i = t.saveAuthnState, 238 a = t.accessToken, 239 s = !1 !== t.withCredentials, 240 u = r.options.storageUtil, 241 c = u.storage, 242 f = u.getHttpCache(r.options.cookies); 243 if (t.cacheResponse) { 244 var l = f.getStorage()[n]; 245 if (l && Date.now() / 1e3 < l.expiresAt) return Promise.resolve(l.response) 246 } 247 l = { 248 Accept: "application/json", 249 "Content-Type": "application/json", 250 "X-Okta-User-Agent-Extended": r.userAgent 251 }; 252 Object.assign(l, r.options.headers, t.headers), a && (0, h.isString)(a) && (l.Authorization = "Bearer " + a); 253 var d, p, s = { 254 headers: l, 255 data: o || void 0, 256 withCredentials: s 257 }; 258 return r.options.httpRequestClient(e, n, s).then(function(e) { 259 return (p = e.responseText) && (0, h.isString)(p) && (p = JSON.parse(p)), i && (p.stateToken || c.delete(y.STATE_TOKEN_KEY_NAME)), p && p.stateToken && p.expiresAt && c.set(y.STATE_TOKEN_KEY_NAME, p.stateToken, p.expiresAt, r.options.cookies), p && t.cac
259heResponse && f.updateStorage(n, { 260 expiresAt: Math.floor(Date.now() / 1e3) + y.DEFAULT_CACHE_DURATION, 261 response: p 262 }), p 263 }).catch(function(e) { 264 var t = e.responseText || {}; 265 if ((0, h.isString)(t)) try { 266 t = JSON.parse(t) 267 } catch (e) { 268 t = { 269 errorSummary: "Unknown error" 270 } 271 } 272 throw 500 <= e.status && (t.errorSummary = "Unknown error"), r.options.transformErrorXHR && (e = r.options.transformErrorXHR((0, h.clone)(e))), "E0000011" === (d = new g.default(t, e)).errorCode && c.delete(y.STATE_TOKEN_KEY_NAME), d 273 }) 274 } 275 r = { 276 get: function(e, t, r) { 277 t = { 278 url: t = (0, h.isAbsoluteUrl)(t) ? t : e.getIssuerOrigin() + t, 279 method: "GET" 280 }; 281 return Object.assign(t, r), o(e, t) 282 }, 283 post: function(e, t, r, n) { 284 r = { 285 url: t = (0, h.isAbsoluteUrl)(t) ? t : e.getIssuerOrigin() + t, 286 method: "POST", 287 args: r, 288 saveAuthnState: !0 289 }; 290 return Object.assign(r, n), o(e, r) 291 }, 292 httpRequest: o 293 }; 294 t.default = r, e.exports = t.default 295}, function(t, e) { 296 function r(e) { 297 return t.exports = r = Object.setPrototypeOf ? Object.getPrototypeOf : function(e) { 298 return e.__proto__ || Object.getPrototypeOf(e) 299 }, r(e) 300 } 301 t.exports = r 302}, function(e, t, r) { 303 "use strict"; 304 t.ID_TOKEN_STORAGE_KEY = t.ACCESS_TOKEN_STORAGE_KEY = t.PKCE_STORAGE_NAME = t.CACHE_STORAGE_NAME = t.TOKEN_STORAGE_NAME = t.REDIRECT_NONCE_COOKIE_NAME = t.REDIRECT_STATE_COOKIE_NAME = t.REDIRECT_OAUTH_PARAMS_COOKIE_NAME = t.DEFAULT_CACHE_DURATION = t.DEFAULT_MAX_CLOCK_SKEW = t.DEFAULT_POLLING_DELAY = t.STATE_TOKEN_KEY_NAME = void 0, t.STATE_TOKEN_KEY_NAME = "oktaStateToken", t.DEFAULT_POLLING_DELAY = 500, t.DEFAULT_MAX_CLOCK_SKEW = 300, t.DEFAULT_CACHE_DURATION = 86400, t.REDIRECT_OAUTH_PARAMS_COOKIE_NAME = "okta-oauth-redirect-params", t.REDIRECT_STATE_COOKIE_NAME = "okta-oauth-state", t.REDIRECT_NONCE_COOKIE_NAME = "okta-oauth-nonce", t.TOKEN_STORAGE_NAME = "okta-token-storage", t.CACHE_STORAGE_NAME = "okta-cache-storage", t.PKCE_STORAGE_NAME = "okta-pkce-storage", t.ACCESS_TOKEN_STORAGE_KEY = "accessToken", t.ID_TOKEN_STORAGE_KEY = "idToken" 305}, function(e, t, r) { 306 var n = r(15); 307 e.exports = function(e, t) { 308 if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function"); 309 e.prototype = Object.create(t && t.prototype, { 310 constructor: { 311 value: e, 312 writable: !0, 313 configurable: !0 314 } 315 }), t && n(e, t) 316 } 317}, function(e, t, r) { 318 var n = r(9), 319 o = r(14); 320 e.exports = function(e, t) { 321 return !t || "object" !== n(t) && "function" != typeof t ? o(e) : t 322 } 323}, function(t, e) { 324 function r(e) { 325 return "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? t.exports = r = function(e) { 326 return typeof e 327 } : t.exports = r = function(e) { 328 return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e 329 }, r(e) 330 } 331 t.exports = r 332}, function(e, t) { 333 function n(e, t) { 334 for (var r = 0; r < t.length; r++) { 335 var n = t[r]; 336 n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n) 337 } 338 } 339 e.exports = function(e, t, r) { 340 return t && n(e.prototype, t), r && n(e, r), e 341 } 342}, function(e, t, r) { 343 "use strict"; 344 var n = r(0); 345 t.default = void 0; 346 var i = n(r(1)), 347 a = n(r(14)), 348 s = n(r(7)), 349 u = n(r(8)), 350 c = n(r(5)); 351 r = function(e) { 352 (0, s.default)(o, e); 353 var r, n, t = (r = o, n = function() { 354 if ("undefined" == typeof Reflect || !Reflect.construct) return !1; 355 if (Reflect.construct.sham) return !1; 356 if ("function" == typeof Proxy) return !0; 357 try { 358 return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 359 } catch (e) { 360 return !1 361 } 362 }(), function() { 363 var e, t = (0, c.default)(r); 364 return t = n ? (e = (0, c.default)(this).constructor, Reflect.construct(t, arguments, e)) : t.apply(this, arguments), (0, u.default)(this, t) 365 }); 366 367 function o(e) { 368 return (0, i.default)(this, o), e = t.call(this, e), Object.setPrototypeOf((0, a.default)(e), (this instanceof o ? this.constructor : void 0).prototype), e 369 } 370 return o 371 }((0, n(r(33)).default)(Error)); 372 t.default = r, e.exports = t.default 373}, function(e, t, r) { 374 "use strict"; 375 376 function n(e, t) { 377 var r = {}; 378 return Object.assign(r, t), !r.stateToken && e.stateToken && (r.stateToken = e.stateToken), r 379 } 380 t.addStateToken = n, t.getStateToken = function(e) { 381 return n(e) 382 } 383}, function(e, t, r) { 384 "use strict"; 385 var n = r(0); 386 t.default = void 0; 387 var o = n(r(27)), 388 i = r(6), 389 a = n(r(3)), 390 s = r(40), 391 u = { 392 browserHasLocalStorage: function() { 393 try { 394 var e = u.getLocalStorage(); 395 return u.testStorage(e) 396 } catch (e) { 397 return !1 398 } 399 }, 400 browserHasSessionStorage: function() { 401 try { 402 var e = u.getSessionStorage(); 403 return u.testStorage(e) 404 } catch (e) { 405 return !1 406 } 407 }, 408 getPKCEStorage: function(e) { 409 return !(e = e || {}).preferLocalStorage && u.browserHasSessionStorage() ? (0, o.default)(u.getSessionStorage(), i.PKCE_STORAGE_NAME) : u.browserHasLocalStorage() ? (0, o.default)(u.getLocalStorage(), i.PKCE_STORAGE_NAME) : (0, o.default)(u.getCookieStorage(e), i.PKCE_STORAGE_NAME) 410 }, 411 getHttpCache: function(e) { 412 return u.browserHasLocalStorage() ? (0, o.default)(u.getLocalStorage(), i.CACHE_STORAGE_NAME) : u.browserHasSessionStorage() ? (0, o.default)(u.getSessionStorage(), i.CACHE_STORAGE_NAME) : (0, o.default)(u.getCookieStorage(e), i.CACHE_STORAGE_NAME) 413 }, 414 getLocalStorage: function() { 415 return localStorage 416 }, 417 getSessionStorage: function() { 418 return sessionStorage 419 }, 420 getCookieStorage: function(e) { 421 var r = e.secure, 422 n = e.sameSite; 423 if (void 0 === r || void 0 === n) throw new a.default('getCookieStorage: "secure" and "sameSite" options must be provided'); 424 return { 425 getItem: u.storage.get, 426 setItem: function(e, t) { 427 u.storage.set(e, t, "2200-01-01T00:00:00.000Z", { 428 secure: r, 429 sameSite: n 430 }) 431 } 432 } 433 }, 434 getInMemoryStorage: function() { 435 var r = {}; 436 return { 437 getItem: function(e) { 438 return r[e] 439 }, 440 setItem: function(e, t) { 441 r[e] = t 442 } 443 } 444 }, 445 testStorage: function(e) { 446 var t = "okta-test-storage"; 447 try { 448 return e.setItem(t, t), e.removeItem(t), !0 449 } catch (e) { 450 return !1 451 } 452 }, 453 storage: { 454 set: function(e, t, r, n) { 455 var o = n.secure, 456 i = n.sameSite; 457 if (void 0 === o || void 0 === i) throw new a.default('storage.set: "secure" and "sameSite" options must be provided'); 458 i = { 459 path: n.path || "/", 460 secure: o, 461 sameSite: i 462 }; 463 return Date.parse(r) && (i.expires = new Date(r)), s.set(e, t, i), u.storage.get(e) 464 }, 465 get: function(e) { 466 return s.get(e) 467 }, 468 delete: function(e) { 469 return s.remove(e, { 470 path: "/" 471 }) 472 } 473 } 474 }; 475 t.default = u, e.exports = t.default 476}, function(e, t) { 477 e.exports = function(e) { 478 if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); 479 return e 480 } 481}, function(r, e) { 482 function n(e, t) {
483 return r.exports = n = Object.setPrototypeOf || function(e, t) { 484 return e.__proto__ = t, e 485 }, n(e, t) 486 } 487 r.exports = n 488}, function(e, t, r) { 489 "use strict"; 490 var n = r(0); 491 t.AuthTransaction = void 0; 492 var o = n(r(1)), 493 f = n(r(4)), 494 l = r(2), 495 d = n(r(3)), 496 p = r(12), 497 h = r(24), 498 g = r(22); 499 500 function y(e, t, r, n) { 501 if (r = r || t, r = (0, l.clone)(r), Array.isArray(r)) { 502 for (var o = [], i = 0, a = r.length; i < a; i++) o.push(y(e, t, r[i], n)); 503 return o 504 } 505 var s, u = r._embedded || {}; 506 for (s in u) Object.prototype.hasOwnProperty.call(u, s) && ((0, l.isObject)(u[s]) || Array.isArray(u[s])) && (u[s] = y(e, t, u[s], n)); 507 var c = function(e, t, r, n) { 508 var o, i, a = {}; 509 for (o in r._links) Object.prototype.hasOwnProperty.call(r._links, o) && (i = r._links[o], "next" === o && (o = i.name), i.type ? a[o] = i : "poll" === o ? a.poll = (0, h.getPollFn)(e, t, n) : (i = function r(i, a, s, u, c) { 510 if (Array.isArray(u)) return function(e, t) { 511 if (!e) throw new d.default("Must provide a link name"); 512 if (!(e = (0, l.find)(u, { 513 name: e 514 }))) throw new d.default("No link found for that name"); 515 return r(i, a, s, e, c)(t) 516 }; 517 if (u.hints && u.hints.allow && 1 === u.hints.allow.length) switch (u.hints.allow[0]) { 518 case "GET": 519 return function() { 520 return f.default.get(i, u.href) 521 }; 522 case "POST": 523 return function(e) { 524 c && c.isPolling && (c.isPolling = !1); 525 var t = (0, p.addStateToken)(a, e); 526 "MFA_ENROLL" !== a.status && "FACTOR_ENROLL" !== a.status || Object.assign(t, { 527 factorType: s.factorType, 528 provider: s.provider 529 }); 530 var r = {}, 531 n = t.autoPush; 532 if (void 0 !== n) { 533 if ("function" == typeof n) try { 534 r.autoPush = !!n() 535 } catch (e) { 536 return Promise.reject(new d.default("AutoPush resulted in an error.")) 537 } else null !== n && (r.autoPush = !!n); 538 t = (0, l.omit)(t, "autoPush") 539 } 540 var o = t.rememberDevice; 541 if (void 0 !== o) { 542 if ("function" == typeof o) try { 543 r.rememberDevice = !!o() 544 } catch (e) { 545 return Promise.reject(new d.default("RememberDevice resulted in an error.")) 546 } else null !== o && (r.rememberDevice = !!o); 547 t = (0, l.omit)(t, "rememberDevice") 548 } else t.profile && void 0 !== t.profile.updatePhone && (t.profile.updatePhone && (r.updatePhone = !0), t.profile = (0, l.omit)(t.profile, "updatePhone")); 549 return e = u.href + (0, l.toQueryParams)(r), (0, g.postToTransaction)(i, e, t) 550 } 551 } 552 }(e, t, r, i, n)) && (a[o] = i)); 553 return a 554 }(e, t, r, n); 555 return Object.assign(u, c), r = (0, l.omit)(r, "_embedded", "_links"), Object.assign(r, u), r 556 } 557 t.AuthTransaction = function e(t) { 558 var r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : null; 559 (0, o.default)(this, e), r && (this.data = r, Object.assign(this, y(t, r, r, {})), delete this.stateToken, "RECOVERY_CHALLENGE" !== r.status || r._links || (this.cancel = function() { 560 return Promise.resolve(new e(t)) 561 })) 562 } 563}, function(e, t, r) { 564 "use strict"; 565 var n = r(0); 566 t.generateState = function() { 567 return (0, s.genRandomString)(64) 568 }, t.generateNonce = function() { 569 return (0, s.genRandomString)(64) 570 }, t.getWellKnown = c, t.getKey = function(r, e, n) { 571 var o = a.default.getHttpCache(r.options.cookies); 572 return c(r, e).then(function(e) { 573 var t = e.jwks_uri, 574 e = o.getStorage()[t]; 575 if (e && Date.now() / 1e3 < e.expiresAt) { 576 e = (0, s.find)(e.response.keys, { 577 kid: n 578 }); 579 if (e) return e 580 } 581 return o.clearStorage(t), i.default.get(r, t, { 582 cacheResponse: !0 583 }).then(function(e) { 584 e = (0, s.find)(e.keys, { 585 kid: n 586 }); 587 if (e) return e; 588 throw new u.default("The key id, " + n + ", was not found in the server's keys") 589 }) 590 }) 591 }, t.validateClaims = function(e, t, r) { 592 var n = r.clientId, 593 o = r.issuer, 594 r = r.nonce; 595 if (!t || !o || !n) throw new u.default("The jwt, iss, and aud arguments are all required"); 596 if (r && t.nonce !== r) throw new u.default("OAuth flow response nonce doesn't match request nonce"); 597 r = Math.floor(Date.now() / 1e3); 598 if (t.iss !== o) throw new u.default("The issuer [" + t.iss + "] does not match [" + o + "]"); 599 if (t.aud !== n) throw new u.default("The audience [" + t.aud + "] does not match [" + n + "]"); 600 if (t.iat > t.exp) throw new u.default("The JWT expired before it was issued"); 601 if (r - e.options.maxClockSkew > t.exp) throw new u.default("The JWT expired and is no longer valid"); 602 if (t.iat > r + e.options.maxClockSkew) throw new u.default("The JWT was issued in the future") 603 }, t.getOAuthUrls = function(e, t) { 604 if (2 < arguments.length) throw new u.default('As of version 3.0, "getOAuthUrls" takes only a single set of options'); 605 t = t || {}; 606 var r = (0, s.removeTrailingSlash)(t.authorizeUrl) || e.options.authorizeUrl, 607 n = (0, s.removeTrailingSlash)(t.issuer) || e.options.issuer, 608 o = (0, s.removeTrailingSlash)(t.userinfoUrl) || e.options.userinfoUrl, 609 i = (0, s.removeTrailingSlash)(t.tokenUrl) || e.options.tokenUrl, 610 a = (0, s.removeTrailingSlash)(t.logoutUrl) || e.options.logoutUrl, 611 t = (0, s.removeTrailingSlash)(t.revokeUrl) || e.options.revokeUrl, 612 e = 0 < n.indexOf("/oauth2") ? n : n + "/oauth2"; 613 return { 614 issuer: n, 615 authorizeUrl: r || e + "/v1/authorize", 616 userinfoUrl: o || e + "/v1/userinfo", 617 tokenUrl: i || e + "/v1/token", 618 revokeUrl: t = t || e + "/v1/revoke", 619 logoutUrl: a || e + "/v1/logout" 620 } 621 }, t.loadFrame = function(e) { 622 var t = document.createElement("iframe"); 623 return t.style.display = "none", t.src = e, document.body.appendChild(t) 624 }, t.loadPopup = function(e, t) { 625 var r = t.popupTitle || "External Identity Provider User Authentication", 626 n = "toolbar=no, scrollbars=yes, resizable=yes, top=100, left=500, width=600, height=600"; 627 if ((0, s.isIE11OrLess)()) { 628 t = window.open("/", r, n); 629 return t.location.href = e, t 630 } 631 return window.open(e, r, n) 632 }
632, t.urlParamsToObject = function(e) { 633 var t = /\+/g, 634 r = /([^&=]+)=?([^&]*)/g, 635 n = e; 636 "#" === n.charAt(0) && "/" === n.charAt(1) && (n = n.substring(2)), "#" !== n.charAt(0) && "?" !== n.charAt(0) || (n = n.substring(1)); 637 for (var o = {}; a = r.exec(n);) { 638 var i = a[1], 639 a = a[2]; 640 o[i] = "id_token" === i || "access_token" === i || "code" === i ? a : decodeURIComponent(a.replace(t, " ")) 641 } 642 return o 643 }, t.isLoginRedirect = function(e) { 644 e = e.options; 645 return e.pkce || "code" === e.responseType || "query" === e.responseMode ? "fragment" === e.responseMode ? o(window.location.hash) : o(window.location.search) : (e = window.location.hash, /((id|access)_token=)/i.test(e)) 646 }, t.addListener = function(e, t, r) { 647 e.addEventListener ? e.addEventListener(t, r) : e.attachEvent("on" + t, r) 648 }, t.removeListener = function(e, t, r) { 649 e.removeEventListener ? e.removeEventListener(t, r) : e.detachEvent("on" + t, r) 650 }; 651 var i = n(r(4)), 652 s = r(2), 653 a = n(r(13)), 654 u = n(r(3)); 655 656 function c(e, t) { 657 t = t || e.options.issuer; 658 return i.default.get(e, t + "/.well-known/openid-configuration", { 659 cacheResponse: !0 660 }) 661 } 662 663 function o(e) { 664 return /(code=)/i.test(e) 665 } 666}, function(e, t, r) { 667 var a = r(9); 668 669 function s() { 670 if ("function" != typeof WeakMap) return null; 671 var e = new WeakMap; 672 return s = function() { 673 return e 674 }, e 675 } 676 e.exports = function(e) { 677 if (e && e.__esModule) return e; 678 if (null === e || "object" !== a(e) && "function" != typeof e) return { 679 default: e 680 }; 681 var t = s(); 682 if (t && t.has(e)) return t.get(e); 683 var r, n, o = {}, 684 i = Object.defineProperty && Object.getOwnPropertyDescriptor; 685 for (r in e) Object.prototype.hasOwnProperty.call(e, r) && ((n = i ? Object.getOwnPropertyDescriptor(e, r) : null) && (n.get || n.set) ? Object.defineProperty(o, r, n) : o[r] = e[r]); 686 return o.default = e, t && t.set(e, o), o 687 } 688}, function(e, t, r) { 689 e.exports = r(31) 690}, function(e, t, r) { 691 "use strict"; 692 var n = r(0); 693 t.assertValidConfig = function(e) { 694 var t = (e = e || {}).issuer; 695 if (!t) throw new o.default('No issuer passed to constructor. Required usage: new OktaAuth({issuer: "https://{yourOktaDomain}.com/oauth2/{authServerId}"})'); 696 if (!new RegExp("^http?s?://.+").test(e.issuer)) throw new o.default('Issuer must be a valid URL. Required usage: new OktaAuth({issuer: "https://{yourOktaDomain}.com/oauth2/{authServerId}"})'); 697 if (-1 !== t.indexOf("-admin.")) throw new o.default('Issuer URL passed to constructor contains "-admin" in subdomain. Required usage: new OktaAuth({issuer: "https://{yourOktaDomain}.com})'); 698 e = e.userAgent; 699 if (e && e.template && -1 === e.template.indexOf("$OKTA_AUTH_JS")) throw new o.default('UserAgentTemplate must include "$OKTA_AUTH_JS" placeholder. Required usage: new OktaAuth({userAgentTemplate: "xxx $OKTA_AUTH_JS xxx"})') 700 }, t.getUserAgent = function(e, t) { 701 e = e.userAgent || {}; 702 return e.value || (e.template ? e.template.replace("$OKTA_AUTH_JS", t) : t) 703 }; 704 var o = n(r(3)) 705}, function(e, t, r) { 706 "use strict"; 707 var n = r(22); 708 Object.keys(n).forEach(function(e) { 709 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 710 enumerable: !0, 711 get: function() { 712 return n[e] 713 } 714 }) 715 }); 716 var o = r(16); 717 Object.keys(o).forEach(function(e) { 718 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 719 enumerable: !0, 720 get: function() { 721 return o[e] 722 } 723 }) 724 }); 725 var i = r(24);
726 Object.keys(i).forEach(function(e) { 727 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 728 enumerable: !0, 729 get: function() { 730 return i[e] 731 } 732 }) 733 }); 734 var a = r(37); 735 Object.keys(a).forEach(function(e) { 736 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 737 enumerable: !0, 738 get: function() { 739 return a[e] 740 } 741 }) 742 }); 743 var s = r(12); 744 Object.keys(s).forEach(function(e) { 745 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 746 enumerable: !0, 747 get: function() { 748 return s[e] 749 } 750 }) 751 }) 752}, function(e, t, r) { 753 "use strict"; 754 var n = r(0); 755 t.transactionStatus = function(e, t) { 756 return t = (0, s.addStateToken)(e, t), o.default.post(e, e.getIssuerOrigin() + "/api/v1/authn", t) 757 }, t.resumeTransaction = function(t, e) { 758 if (!e || !e.stateToken) { 759 var r = t.tx.exists._get(a.STATE_TOKEN_KEY_NAME); 760 if (!r) return Promise.reject(new i.default("No transaction to resume")); 761 e = { 762 stateToken: r 763 } 764 } 765 return t.tx.status(e).then(function(e) { 766 return new u.AuthTransaction(t, e) 767 }) 768 }, t.transactionExists = function(e) { 769 return !!e.tx.exists._get(a.STATE_TOKEN_KEY_NAME) 770 }, t.postToTransaction = function(t, e, r, n) { 771 return o.default.post(t, e, r, n).then(function(e) { 772 return new u.AuthTransaction(t, e) 773 }) 774 }, t.introspect = function(t, e) { 775 if (!e || !e.stateToken) { 776 var r = t.tx.exists._get(a.STATE_TOKEN_KEY_NAME); 777 if (!r) return Promise.reject(new i.default("No transaction to evaluate")); 778 e = { 779 stateToken: r 780 } 781 } 782 return r = t, e = e, e = (0, s.addStateToken)(r, e), o.default.post(r, r.getIssuerOrigin() + "/api/v1/authn/introspect", e).then(function(e) { 783 return new u.AuthTransaction(t, e) 784 }) 785 }; 786 var o = n(r(4)), 787 i = n(r(3)), 788 a = r(6), 789 s = r(12), 790 u = r(16) 791}, function(e, t, r) { 792 "use strict"; 793 var n = r(0); 794 t.default = void 0; 795 var a = n(r(1)), 796 s = n(r(7)), 797 u = n(r(8)), 798 c = n(r(5)); 799 r = function(e) { 800 (0, s.default)(i, e); 801 var r, n, o = (r = i, n = function() { 802 if ("undefined" == typeof Reflect || !Reflect.construct) return !1; 803 if (Reflect.construct.sham) return !1; 804 if ("function" == typeof Proxy) return !0; 805 try { 806 return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 807 } catch (e) { 808 return !1 809 } 810 }(), function() { 811 var e, t = (0, c.default)(r); 812 return t = n ? (e = (0, c.default)(this).constructor, Reflect.construct(t, arguments, e)) : t.apply(this, arguments), (0, u.default)(this, t) 813 }); 814 815 function i(e, t) { 816 (0, a.default)(this, i); 817 var r = e.errorSummary; 818 return (r = o.call(this, r)).name = "AuthApiError", r.errorSummary = e.errorSummary, r.errorCode = e.errorCode, r.errorLink = e.errorLink, r.errorId = e.errorId, r.errorCauses = e.errorCauses, t && (r.xhr = t), r 819 } 820 return i 821 }(n(r(11)).default); 822 t.default = r, e.exports = t.default 823}, function(e, t, r) { 824 "use strict"; 825 var n = r(0); 826 t.getPollFn = function(u, c, f) { 827 return function(e) { 828 var t, n, o, i; 829 (0, d.isNumber)(e) ? t = e: (0, d.isObject)(e) && (t = e.delay, n = e.rememberDevice, o = e.autoPush, i = e.transactionCallBack), t || 0 === t || (t = p.DEFAULT_POLLING_DELAY); 830 var a = (0, d.getLink)(c, "next", "poll"); 831 f.isPolling = !0; 832 var s = 0; 833 return function r() { 834 return f.isPolling ? function() { 835 var e = {}; 836 if ("function" == typeof o) try { 837 e.autoPush = !!o() 838 } catch (e) { 839 return Promise.reject(new h.default("AutoPush resulted in an error.")) 840 } else null != o && (e.autoPush = !!o); 841 if ("function" == typeof n) try { 842 e.rememberDevice = !!n() 843 } catch (e) { 844 return Promise.reject(new h.default("RememberDevice resulted in an error.")) 845 } else null != n && (e.rememberDevice = !!n); 846 var t = a.href + (0, d.toQueryParams)(e); 847 return l.default.post(u, t, (0, v.getStateToken)(c), { 848 saveAuthnState: !1 849 }) 850 }().then(function(e) { 851 if (s = 0, e.factorResult && "WAITING" === e.factorResult) { 852 if (!f.isPolling) throw new g.default; 853 return "function" == typeof i && i(e), (0, d.delay)(t).then(r) 854 } 855 return f.isPolling = !1, new y.AuthTransaction(u, e) 856 }).catch(function(e) { 857 if (e.xhr && (0 === e.xhr.status || 429 === e.xhr.status) && s <= 4) { 858 var t = 1e3 * Math.pow(2, s); 859 return s++, (0, d.delay)(t).then(r) 860 } 861 throw e 862 }) : Promise.reject(new g.default) 863 }().catch(function(e) { 864 throw f.isPolling = !1, e 865 }) 866 } 867 }; 868 var l = n(r(4)), 869 d = r(2), 870 p = r(6), 871 h = n(r(3)), 872 g = n(r(25)), 873 y = r(16), 874 v = r(12) 875}, function(e, t, r) { 876 "use strict"; 877 var n = r(0); 878 t.default = void 0; 879 var i = n(r(1)), 880 a = n(r(7)), 881 s = n(r(8)), 882 u = n(r(5)); 883 r = function(e) { 884 (0, a.default)(o, e); 885 var r, n, t = (r = o, n = function() { 886 if ("undefined" == typeof Reflect || !Reflect.construct) return !1; 887 if (Reflect.construct.sham) return !1; 888 if ("function" == typeof Proxy) return !0; 889 try { 890 return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 891 } catch (e) { 892 return !1 893 } 894 }(), function() { 895 var e, t = (0, u.default)(r); 896 return t = n ? (e = (0, u.default)(this).constructor, Reflect.construct(t, arguments, e)) : t.apply(this, arguments), (0, s.default)(this, t) 897 }); 898 899 function o() { 900 return (0, i.default)(this, o), t.call(this, "The poll was stopped by the sdk") 901 } 902 return o 903 }(n(r(11)).default); 904 t.default = r, e.exports = t.default 905}, function(e, t, r) { 906 "use strict"; 907 t.getUserAgent = o, t.isFingerprintSupported = function() { 908 var e = o(); 909 return e && !n.test(e) 910 }, t.isPopupPostMessageSupported = function() { 911 var e = document.documentMode && document.documentMode < 10; 912 return !(!window.postMessage || e) 913 }, t.isTokenVerifySupported = i, t.hasTextEncoder = a, t.isPKCESupported = function() { 914 return i() && a() 915 }
915, t.isHTTPS = function() { 916 return "https:" === window.location.protocol 917 }, t.isLocalhost = function() { 918 return "localhost" === window.location.hostname 919 }; 920 var n = /windows phone|iemobile|wpdesktop/i; 921 922 function o() { 923 return navigator.userAgent 924 } 925 926 function i() { 927 return "undefined" != typeof crypto && crypto.subtle && "undefined" != typeof Uint8Array 928 } 929 930 function a() { 931 return "undefined" != typeof TextEncoder 932 } 933}, function(e, t, r) { 934 "use strict"; 935 var n = r(0); 936 t.default = void 0; 937 var a = n(r(3)); 938 t.default = function(r, n) { 939 if ("string" != typeof n || !n.length) throw new a.default('"storageName" is required'); 940 941 function o() { 942 var e = (e = r.getItem(n)) || "{}"; 943 try { 944 return JSON.parse(e) 945 } catch (e) { 946 throw new a.default("Unable to parse storage string: " + n) 947 } 948 } 949 950 function i(e) { 951 try { 952 var t = JSON.stringify(e); 953 r.setItem(n, t) 954 } catch (e) { 955 throw new a.default("Unable to set storage: " + n) 956 } 957 } 958 return { 959 getStorage: o, 960 setStorage: i, 961 clearStorage: function(e) { 962 if (!e) return i({}); 963 var t = o(); 964 delete t[e], i(t) 965 }, 966 updateStorage: function(e, t) { 967 var r = o(); 968 r[e] = t, i(r) 969 } 970 } 971 }, e.exports = t.default 972}, function(e, t, r) { 973 "use strict"; 974 var n = r(0); 975 t.default = void 0; 976 var a = n(r(1)), 977 s = n(r(7)), 978 u = n(r(8)), 979 c = n(r(5)); 980 r = function(e) { 981 (0, s.default)(i, e); 982 var r, n, o = (r = i, n = function() { 983 if ("undefined" == typeof Reflect || !Reflect.construct) return !1; 984 if (Reflect.construct.sham) return !1; 985 if ("function" == typeof Proxy) return !0; 986 try { 987 return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 988 } catch (e) { 989 return !1 990 } 991 }(), function() { 992 var e, t = (0, c.default)(r); 993 return t = n ? (e = (0, c.default)(this).constructor, Reflect.construct(t, arguments, e)) : t.apply(this, arguments), (0, u.default)(this, t) 994 }); 995 996 function i(e, t) { 997 var r; 998 return (0, a.default)(this, i), (r = o.call(this, t)).name = "OAuthError", r.errorCode = e, r.errorSummary = t, r 999 } 1000 return i 1001 }(n(r(11)).default); 1002 t.default = r, e.exports = t.default 1003}, function(e, t, r) { 1004 "use strict"; 1005 var n = r(45); 1006 Object.keys(n).forEach(function(e) { 1007 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1008 enumerable: !0, 1009 get: function() { 1010 return n[e] 1011 } 1012 }) 1013 }); 1014 var o = r(46); 1015 Object.keys(o).forEach(function(e) { 1016 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1017 enumerable: !0, 1018 get: function() { 1019 return o[e] 1020 } 1021 }) 1022 }); 1023 var i = r(47);
1024 Object.keys(i).forEach(function(e) { 1025 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1026 enumerable: !0, 1027 get: function() { 1028 return i[e] 1029 } 1030 }) 1031 }); 1032 var a = r(48); 1033 Object.keys(a).forEach(function(e) { 1034 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1035 enumerable: !0, 1036 get: function() { 1037 return a[e] 1038 } 1039 }) 1040 }); 1041 var s = r(49); 1042 Object.keys(s).forEach(function(e) { 1043 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1044 enumerable: !0, 1045 get: function() { 1046 return s[e] 1047 } 1048 }) 1049 }); 1050 var u = r(50); 1051 Object.keys(u).forEach(function(e) { 1052 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1053 enumerable: !0, 1054 get: function() { 1055 return u[e] 1056 } 1057 }) 1058 }); 1059 var c = r(51); 1060 Object.keys(c).forEach(function(e) { 1061 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1062 enumerable: !0, 1063 get: function() { 1064 return c[e] 1065 } 1066 }) 1067 }); 1068 var f = r(52); 1069 Object.keys(f).forEach(function(e) { 1070 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1071 enumerable: !0, 1072 get: function() { 1073 return f[e] 1074 } 1075 }) 1076 }); 1077 var l = r(53); 1078 Object.keys(l).forEach(function(e) { 1079 "default" !== e && "__esModule" !== e && Object.defineProperty(t, e, { 1080 enumerable: !0, 1081 get: function() { 1082 return l[e] 1083 } 1084 }) 1085 }) 1086}, function(e, t, r) { 1087 "use strict"; 1088 var n = r(18), 1089 o = r(0); 1090 t.default = void 0; 1091 var f = o(r(19)), 1092 a = o(r(1)), 1093 s = o(r(10)), 1094 u = o(r(14)), 1095 c = o(r(7)), 1096 l = o(r(8)), 1097 d = o(r(5)), 1098 i = o(r(32)), 1099 n = n(r(26)), 1100 p = o(r(38)), 1101 h = o(r(13)), 1102 g = r(2), 1103 y = r(20), 1104 v = r(6), 1105 m = r(41), 1106 w = r(42), 1107 b = r(54), 1108 T = r(17), 1109 k = o(r(4)), 1110 E = o(r(56)), 1111 O = o(r(57)), 1112 _ = r(21); 1113 1114 function S(e, a, s, u) { 1115 return new(s = s || Promise)(function(r, t) { 1116 function n(e) { 1117 try { 1118 i(u.next(e)) 1119 } catch (e) { 1120 t(e) 1121 } 1122 } 1123 1124 function o(e) { 1125 try { 1126 i(u.throw(e)) 1127 } catch (e) { 1128 t(e) 1129 } 1130 } 1131 1132 function i(e) { 1133 var t; 1134 e.done ? r(e.value) : ((t = e.value) instanceof s ? t : new s(function(e) { 1135 e(t) 1136 })).then(n, o) 1137 } 1138 i((u = u.apply(e, a || [])).next()) 1139 }) 1140 } 1141 var A = r(59), 1142 i = function(e) { 1143 (0, c.default)(i, e); 1144 var r, n, o = (r = i, n = function() { 1145 if ("undefined" == typeof Reflect || !Reflect.construct) return !1; 1146 if (Reflect.construct.sham) return !1; 1147 if ("function" == typeof Proxy) return !0; 1148 try { 1149 return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 1150 } catch (e) { 1151 return !1 1152 } 1153 }(), function() { 1154 var e, t = (0, d.default)(r); 1155 return t = n ? (e = (0, d.default)(this).constructor, Reflect.construct(t, arguments, e)) : t.apply(this, arguments), (0, l.default)(this, t) 1156 }); 1157 1158 function i(e) { 1159 var r; 1160 (0, a.default)(this, i), e = Object.assign({ 1161 httpRequestClient: p.default, 1162 storageUtil: h.default 1163 }, e), r = o.call(this, e); 1164 var t = Object.assign({ 1165 secure: !0 1166 }, e.cookies); 1167 r.features.isLocalhost() && !r.features.isHTTPS() && (t.secure = !1), void 0 === t.sameSite && (t.sameSite = t.secure ? "none" : "lax"), t.secure && !r.features.isHTTPS() && (console.warn('The current page is not being served with the HTTPS protocol.\nFor security reasons, we strongly recommend using HTTPS.\nIf you cannot use HTTPS, set "cookies.secure" option to fal
1167se.'), t.secure = !1), r.options = Object.assign(r.options, { 1168 clientId: e.clientId, 1169 authorizeUrl: (0, g.removeTrailingSlash)(e.authorizeUrl), 1170 userinfoUrl: (0, g.removeTrailingSlash)(e.userinfoUrl), 1171 tokenUrl: (0, g.removeTrailingSlash)(e.tokenUrl), 1172 revokeUrl: (0, g.removeTrailingSlash)(e.revokeUrl), 1173 logoutUrl: (0, g.removeTrailingSlash)(e.logoutUrl), 1174 pkce: !1 !== e.pkce, 1175 redirectUri: e.redirectUri, 1176 postLogoutRedirectUri: e.postLogoutRedirectUri, 1177 responseMode: e.responseMode, 1178 transformErrorXHR: e.transformErrorXHR, 1179 cookies: t 1180 }), r.userAgent = (0, y.getUserAgent)(e, "okta-auth-js/".concat("4.0.0")), e.maxClockSkew || 0 === e.maxClockSkew ? r.options.maxClockSkew = e.maxClockSkew : r.options.maxClockSkew = v.DEFAULT_MAX_CLOCK_SKEW, r.options.ignoreSignature = !!e.ignoreSignature, r.session = { 1181 close: m.closeSession.bind(null, (0, u.default)(r)), 1182 exists: m.sessionExists.bind(null, (0, u.default)(r)), 1183 get: m.getSession.bind(null, (0, u.default)(r)), 1184 refresh: m.refreshSession.bind(null, (0, u.default)(r)), 1185 setCookieAndRedirect: m.setCookieAndRedirect.bind(null, (0, u.default)(r)) 1186 }, r._tokenQueue = new E.default, r.token = { 1187 getWithoutPrompt: w.getWithoutPrompt.bind(null, (0, u.default)(r)), 1188 getWithPopup: w.getWithPopup.bind(null, (0, u.default)(r)), 1189 getWithRedirect: w.getWithRedirect.bind(null, (0, u.default)(r)), 1190 parseFromUrl: w.parseFromUrl.bind(null, (0, u.default)(r)), 1191 decode: w.decodeToken, 1192 revoke: w.revokeToken.bind(null, (0, u.default)(r)), 1193 renew: w.renewToken.bind(null, (0, u.default)(r)), 1194 getUserInfo: w.getUserInfo.bind(null, (0, u.default)(r)), 1195 verify: w.verifyToken.bind(null, (0, u.default)(r)), 1196 isLoginRedirect: T.isLoginRedirect.bind(null, (0, u.default)(r)) 1197 }; 1198 var n = ["decode", "isLoginRedirect"]; 1199 return Object.keys(r.token).forEach(function(e) { 1200 var t; 1201 0 <= n.indexOf(e) || (t = r.token[e], r.token[e] = E.default.prototype.push.bind(r._tokenQueue, t, null)) 1202 }), Object.assign(r.token.getWithRedirect, { 1203 _setLocation: function(e) { 1204 window.location = e 1205 } 1206 }), Object.assign(r.token.parseFromUrl, { 1207 _getHistory: function() { 1208 return window.history 1209 }, 1210 _getLocation: function() { 1211 return window.location 1212 }, 1213 _getDocument: function() { 1214 return window.document 1215 } 1216 }), r.fingerprint = O.default.bind(null, (0, u.default)(r)), r.emitter = new A, r.tokenManager = new b.TokenManager((0, u.default)(r), e.tokenManager), r 1217 } 1218 return (0, s.default)(i, [{ 1219 key: "signIn", 1220 value: function(t) { 1221 var r = this; 1222 t = (0, g.clone)(t || {}); 1223 1224 function n(e) { 1225 return delete t.sendFingerprint, (0, _.postToTransaction)(r, "/api/v1/authn", t, e) 1226 } 1227 return t.sendFingerprint ? this.fingerprint().then(function(e) { 1228 return n({ 1229 headers: { 1230 "X-Device-Fingerprint": e 1231 } 1232 }) 1233 }) : n() 1234 } 1235 }, { 1236 key: "closeSession", 1237 value: function() { 1238 return this.tokenManager.clear(), this.session.close().catch(function(e) { 1239 if ("AuthApiError" !== e.name || "E0000007" !== e.errorCode) throw e 1240 }) 1241 } 1242 }, { 1243 key: "revokeAccessToken", 1244 value: function(t) { 1245 return S(this, void 0, void 0, f.default.mark(function e() { 1246 return f.default.wrap(function(e) { 1247 for (;;) switch (e.prev = e.next) { 1248 case 0: 1249 if (t) { 1250 e.next = 5; 1251 break 1252 } 1253 return e.next = 3, this.tokenManager.get(v.ACCESS_TOKEN_STORAGE_KEY); 1254 case 3: 1255 t = e.sent, this.tokenManager.remove(v.ACCESS_TOKEN_STORAGE_KEY); 1256 case 5: 1257 if (t) { 1258 e.next = 7; 1259 break 1260 } 1261 return e.abrupt("return", Promise.resolve()); 1262 case 7: 1263 return e.abrupt("return", this.token.revoke(t)); 1264 case 8: 1265 case "end": 1266 return e.stop() 1267 } 1268 }, e, this) 1269 })) 1270 } 1271 }, { 1272 key: "signOut", 1273 value: function(c) { 1274 return S(this, void 0, void 0, f.default.mark(function e() { 1275 var t, r, n, o, i, a, s, u; 1276 return f.default.wrap(function(e) { 1277 for (;;) switch (e.prev = e.next) { 1278 case 0: 1279 if (c = Object.assign({}, c), u = window.location.origin, t = window.location.href, r = c.postLogoutRedirectUri || this.options.postLogoutRedirectUri || u, n = c.accessToken, o = !1 !== c.revokeAccessToken, i = c.idToken, a = (0, T.getOAuthUrls)(this).logoutUrl, void 0 === i) return e.next = 11, this.tokenManager.get(v.ID_TOKEN_STORAGE_KEY); 1280 e.next = 12; 1281 break; 1282 case 11: 1283 i = e.sent; 1284 case 12: 1285 if (o && void 0 === n) return e.next = 15, this.tokenManager.get(v.ACCESS_TOKEN_STORAGE_KEY); 1286 e.next = 16; 1287 break; 1288 case 15: 1289 n = e.sent; 1290 case 16: 1291 if (this.tokenManager.clear(), o && n) return e.next = 20, this.revokeAccessToken(n); 1292 e.next = 20; 1293 break; 1294 case 20: 1295 if (i) { 1296 e.next = 22; 1297 break 1298 } 1299 return e.abrupt("return", this.closeSession().then(function() { 1300 r === t ? window.location.reload() : window.location.assign(r) 1301 })); 1302 case 22: 1303 s = c.state, u = i.idToken, u = a + "?id_token_hint=" + encodeURIComponent(u) + "&post_logout_redirect_uri=" + encodeURIComponent(r), s && (u += "&state=" + encodeURIComponent(s)), window.location.assign(u); 1304 case 27: 1305 case "end": 1306 return e.stop() 1307 } 1308 }, e, this) 1309 })) 1310 } 1311 }, { 1312 key: "webfinger", 1313 value: function(e) { 1314 e = "/.well-known/webfinger" + (0, g.toQueryParams)(e); 1315 return k.default.get(this, e, { 1316 headers: { 1317 Accept: "application/jrd+json" 1318 } 1319 }) 1320 } 1321 }]), i 1322 }(i.default); 1323 i.features = i.prototype.features = n; 1324 t.default = i, e.exports = t.default 1325}, function(e, t, r) { 1326 var n = function(a) { 1327 "use strict"; 1328 var e = Object.prototype, 1329 u = e.hasOwnProperty, 1330 t = "function" == typeof Symbol ? Symbol : {}, 1331 n = t.iterator || "@@iterator", 1332 r = t.asyncIterator || "@@asyncIterator", 1333 o = t.toStringTag || "@@toStringTag"; 1334 1335 function s(e, t, r, n) { 1336 var o, i, a, s, t = t && t.prototype instanceof l ? t : l, 1337 t = Object.create(t.prototype), 1338 n = new w(n || []); 1339 return t._invoke = (o = e, i = r, a = n, s = "suspendedStart", function(e, t) { 1340 if ("executing" === s) throw new Error("Generator is already running"); 1341 if ("completed" === s) { 1342 if ("throw" === e) throw t; 1343 return T() 1344 } 1345 for (a.method = e, a.arg = t;;) { 1346 var r = a.delegate; 1347 if (r) { 1348 var n = function e(t, r) { 1349 var n = t.iterator[r.method]; 1350 if (void 0 === n) { 1351 if (r.delegate = null, "throw" === r.method) { 1352 if (t.iterator.return && (r.method = "return", r.arg = void 0, e(t, r), "throw" === r.method)) return f; 1353 r.method = "throw", r.arg = new TypeError("The iterator does not provide a 'throw' method") 1354 } 1355 return f 1356 } 1357 n = c(n, t.iterator, r.arg); 1358 if ("throw" === n.type) return r.method = "throw", r.arg = n.arg, r.delegate = null, f; 1359 var n = n.arg; 1360 return n ? n.done ? (r[t.resultName] = n.value, r.next = t.nextLoc, "return" !== r.method && (r.method = "next", r.arg = void 0), r.delegate = null, f) : n : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, f) 1361 }(r, a); 1362 if (n) { 1363 if (n === f) continue; 1364 return n 1365 } 1366 } 1367 if ("next" === a.method) a.sent = a._sent = a.arg; 1368 else if ("throw" === a.method) { 1369 if ("suspendedStart" === s) throw s = "completed", a.arg; 1370 a.dispatchException(a.arg) 1371 } else "return" === a.method && a.abrupt("return", a.arg); 1372 s = "executing"; 1373 n = c(o, i, a); 1374 if ("normal" === n.type) { 1375 if (s = a.done ? "completed" : "suspendedYield", n.arg === f) continue; 1376 return { 1377 value: n.arg, 1378 done: a.done 1379 } 1380 } 1381 "throw" === n.type && (s = "completed", a.method = "throw", a.arg = n.arg) 1382 } 1383 }), t 1384 } 1385 1386 function c(e, t, r) { 1387 try { 1388 return { 1389 type: "normal", 1390 arg: e.call(t, r) 1391 } 1392 } catch (e) { 1393 return { 1394 type: "throw", 1395 arg: e 1396 } 1397 } 1398 } 1399 a.wrap = s; 1400 var f = {}; 1401 1402 function l() {} 1403 1404 function i() {} 1405 1406 function d() {} 1407 var p = {}; 1408 p[n] = function() { 1409 return this 1410 }; 1411 t = Object.getPrototypeOf, t = t && t(t(b([]))); 1412 t && t !== e && u.call(t, n) && (p = t); 1413 var h = d.prototype = l.prototype = Object.create(p); 1414 1415 function g(e) { 1416 ["next", "throw", "return"].forEach(function(t) { 1417 e[t] = function(e) { 1418 return this._invoke(t, e) 1419 } 1420 }) 1421 } 1422 1423 function y(a, s) { 1424 var t; 1425 this._invoke = function(r, n) { 1426 function e() { 1427 return new s(function(e, t) { 1428 ! function t(e, r, n, o) { 1429 e = c(a[e], a, r); 1430 if ("throw" !== e.type) { 1431 var i = e.arg, 1432 r = i.value; 1433 return r && "object" == typeof r && u.call(r, "__await") ? s.resolve(r.__await).then(function(e) { 1434 t("next", e, n, o) 1435 }, function(e) { 1436 t("throw", e, n, o) 1437 }) : s.resolve(r).then(function(e) { 1438 i.value = e, n(i) 1439 }, function(e) { 1440 return t("throw", e, n, o) 1441 }) 1442 } 1443 o(e.arg) 1444 }(r, n, e, t) 1445 }) 1446 } 1447 return t = t ? t.then(e, e) : e() 1448 } 1449 } 1450 1451 function v(e) { 1452 var t = { 1453 tryLoc: e[0] 1454 }; 1455 1 in e && (t.catchLoc = e[1]), 2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]), this.tryEntries.push(t) 1456 } 1457 1458 function m(e) { 1459 var t = e.completion || {}; 1460 t.type = "normal", delete t.arg, e.completion = t 1461 } 1462 1463 function w(e) { 1464 this.tryEntries = [{ 1465 tryLoc: "root" 1466 }], e.forEach(v, this), this.reset(!0) 1467 } 1468 1469 function b(t) { 1470 if (t) { 1471 var e = t[n]; 1472 if (e) return e.call(t); 1473 if ("function" == typeof t.next) return t; 1474 if (!isNaN(t.length)) { 1475 var r = -1, 1476 e = function e() { 1477 for (; ++r < t.length;) 1478 if (u.call(t, r)) return e.value = t[r], e.done = !1, e; 1479 return e.value = void 0, e.done = !0, e 1480 }; 1481 return e.next = e 1482 } 1483 } 1484 return { 1485 next: T 1486 } 1487 } 1488 1489 function T() { 1490 return { 1491 value: void 0, 1492 done: !0 1493 } 1494 } 1495 return (i.prototype = h.constructor = d).constructor = i, d[o] = i.displayName = "GeneratorFunction", a.isGeneratorFunction = function(e) { 1496 e = "function" == typeof e && e.constructor; 1497 return !!e && (e === i || "GeneratorFunction" === (e.displayName || e.name)) 1498 }, a.mark = function(e) { 1499 return Object.setPrototypeOf ? Object.setPrototypeOf(e, d) : (e.__proto__ = d, o in e || (e[o] = "GeneratorFunction")), e.prototype = Object.create(h), e 1500 }, a.awrap = function(e) { 1501 return { 1502 __await: e 1503 } 1504 }, g(y.prototype), y.prototype[r] = function() { 1505 return this 1506 }, a.AsyncIterator = y, a.async = function(e, t, r, n, o) { 1507 void 0 === o && (o = Promise); 1508 var i = new y(s(e, t, r, n), o); 1509 return a.isGeneratorFunction(t) ? i : i.next().then(function(e) { 1510 return e.done ? e.value : i.next() 1511 }) 1512 }, g(h), h[o] = "Generator", h[n] = function() {
1512 1513 return this 1514 }, h.toString = function() { 1515 return "[object Generator]" 1516 }, a.keys = function(r) { 1517 var e, n = []; 1518 for (e in r) n.push(e); 1519 return n.reverse(), 1520 function e() { 1521 for (; n.length;) { 1522 var t = n.pop(); 1523 if (t in r) return e.value = t, e.done = !1, e 1524 } 1525 return e.done = !0, e 1526 } 1527 }, a.values = b, w.prototype = { 1528 constructor: w, 1529 reset: function(e) { 1530 if (this.prev = 0, this.next = 0, this.sent = this._sent = void 0, this.done = !1, this.delegate = null, this.method = "next", this.arg = void 0, this.tryEntries.forEach(m), !e) 1531 for (var t in this) "t" === t.charAt(0) && u.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = void 0) 1532 }, 1533 stop: function() { 1534 this.done = !0; 1535 var e = this.tryEntries[0].completion; 1536 if ("throw" === e.type) throw e.arg; 1537 return this.rval 1538 }, 1539 dispatchException: function(r) { 1540 if (this.done) throw r; 1541 var n = this; 1542 1543 function e(e, t) { 1544 return i.type = "throw", i.arg = r, n.next = e, t && (n.method = "next", n.arg = void 0), !!t 1545 } 1546 for (var t = this.tryEntries.length - 1; 0 <= t; --t) { 1547 var o = this.tryEntries[t], 1548 i = o.completion; 1549 if ("root" === o.tryLoc) return e("end"); 1550 if (o.tryLoc <= this.prev) { 1551 var a = u.call(o, "catchLoc"), 1552 s = u.call(o, "finallyLoc"); 1553 if (a && s) { 1554 if (this.prev < o.catchLoc) return e(o.catchLoc, !0); 1555 if (this.prev < o.finallyLoc) return e(o.finallyLoc) 1556 } else if (a) { 1557 if (this.prev < o.catchLoc) return e(o.catchLoc, !0) 1558 } else { 1559 if (!s) throw new Error("try statement without catch or finally"); 1560 if (this.prev < o.finallyLoc) return e(o.finallyLoc) 1561 } 1562 } 1563 } 1564 }, 1565 abrupt: function(e, t) { 1566 for (var r = this.tryEntries.length - 1; 0 <= r; --r) { 1567 var n = this.tryEntries[r]; 1568 if (n.tryLoc <= this.prev && u.call(n, "finallyLoc") && this.prev < n.finallyLoc) { 1569 var o = n; 1570 break 1571 } 1572 } 1573 o && ("break" === e || "continue" === e) && o.tryLoc <= t && t <= o.finallyLoc && (o = null); 1574 var i = o ? o.completion : {}; 1575 return i.type = e, i.arg = t, o ? (this.method = "next", this.next = o.finallyLoc, f) : this.complete(i) 1576 }, 1577 complete: function(e, t) { 1578 if ("throw" === e.type) throw e.arg; 1579 return "break" === e.type || "continue" === e.type ? this.next = e.arg : "return" === e.type ? (this.rval = this.arg = e.arg, this.method = "return", this.next = "end") : "normal" === e.type && t && (this.next = t), f 1580 }, 1581 finish: function(e) { 1582 for (var t = this.tryEntries.length - 1; 0 <= t; --t) { 1583 var r = this.tryEntries[t]; 1584 if (r.finallyLoc === e) return this.complete(r.completion, r.afterLoc), m(r), f 1585 } 1586 }, 1587 catch: function(e) { 1588 for (var t = this.tryEntries.length - 1; 0 <= t; --t) { 1589 var r = this.tryEntries[t]; 1590 if (r.tryLoc === e) { 1591 var n, o = r.completion; 1592 return "throw" === o.type && (n = o.arg, m(r)), n 1593 } 1594 } 1595 throw new Error("illegal catch attempt") 1596 }, 1597 delegateYield: function(e, t, r) { 1598 return this.delegate = { 1599 iterator: b(e), 1600 resultName: t, 1601 nextLoc: r 1602 }, "next" === this.method && (this.arg = void 0), f 1603 } 1604 }, a 1605 }(e.exports); 1606 try { 1607 regeneratorRuntime = n 1608 } catch (e) { 1609 Function("r", "regeneratorRuntime = r")(n) 1610 } 1611}, function(e, t, r) { 1612 "use strict"; 1613 var n = r(0); 1614 t.default = void 0; 1615 var o = n(r(1)), 1616 n = n(r(10)), 1617 i = r(20), 1618 a = r(2), 1619 s = r(21), 1620 n = ((0, n.default)(u, [{ 1621 key: "signIn", 1622 value: function(e) { 1623 return (0, s.postToTransaction)(this, "/api/v1/authn", e) 1624 } 1625 }, { 1626 key: "getIssuerOrigin", 1627 value: function() { 1628 return this.options.issuer.split("/oauth2/")[0] 1629 } 1630 }, { 1631 key: "forgotPassword", 1632 value: function(e) { 1633 return (0, s.postToTransaction)(this, "/api/v1/authn/recovery/password", e) 1634 } 1635 }, { 1636 key: "unlockAccount", 1637 value: function(e) { 1638 return (0, s.postToTransaction)(this, "/api/v1/authn/recovery/unlock", e) 1639 } 1640 }, { 1641 key: "verifyRecoveryToken", 1642 value: function(e) { 1643 return (0, s.postToTransaction)(this, "/api/v1/authn/recovery/token", e) 1644 } 1645 }]), u); 1646 1647 function u(e) { 1648 var t = this; 1649 (0, o.default)(this, u), (0, i.assertValidConfig)(e), this.options = { 1650 issuer: (0, a.removeTrailingSlash)(e.issuer), 1651 httpRequestClient: e.httpRequestClient, 1652 storageUtil: e.storageUtil, 1653 headers: e.headers 1654 }, this.tx = { 1655 status: s.transactionStatus.bind(null, this), 1656 resume: s.resumeTransaction.bind(null, this), 1657 exists: Object.assign(s.transactionExists.bind(null, this), { 1658 _get: function(e) { 1659 return t.options.storageUtil.storage.get(e) 1660 } 1661 }), 1662 introspect: s.introspect.bind(null, this) 1663 } 1664 } 1665 t.default = n, e.exports = t.default 1666}, function(t, e, r) { 1667 var n = r(5), 1668 o = r(15), 1669 i = r(34), 1670 a = r(35); 1671 1672 function s(e) { 1673 var r = "function" == typeof Map ? new Map : void 0; 1674 return t.exports = s = function(e) { 1675 if (null === e || !i(e)) return e; 1676 if ("function" != typeof e) throw new TypeError("Super expression must either be null or a function"); 1677 if (void 0 !== r) { 1678 if (r.has(e)) return r.get(e); 1679 r.set(e, t) 1680 } 1681 1682 function t() { 1683 return a(e, arguments, n(this).constructor) 1684 } 1685 return t.prototype = Object.create(e.prototype, { 1686 constructor: { 1687 value: t, 1688 enumerable: !1, 1689 writable: !0, 1690 configurable: !0 1691 } 1692 }), o(t, e) 1693 }, s(e) 1694 } 1695 t.exports = s 1696}, function(e, t) { 1697 e.exports = function(e) { 1698 return -1 !== Function.toString.call(e).indexOf("[native code]") 1699 } 1700}, function(n, e, t) { 1701 var o = t(15), 1702 i = t(36); 1703 1704 function a(e, t, r) { 1705 return i() ? n.exports = a = Reflect.construct : n.exports = a = function(e, t, r) {
1706 var n = [null]; 1707 n.push.apply(n, t); 1708 n = new(Function.bind.apply(e, n)); 1709 return r && o(n, r.prototype), n 1710 }, a.apply(null, arguments) 1711 } 1712 n.exports = a 1713}, function(e, t) { 1714 e.exports = function() { 1715 if ("undefined" == typeof Reflect || !Reflect.construct) return !1; 1716 if (Reflect.construct.sham) return !1; 1717 if ("function" == typeof Proxy) return !0; 1718 try { 1719 return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 1720 } catch (e) { 1721 return !1 1722 } 1723 } 1724}, function(e, t, r) { 1725 "use strict"; 1726 var n = r(0); 1727 t.TransactionState = void 0; 1728 var o = n(r(1)); 1729 t.TransactionState = function e() { 1730 (0, o.default)(this, e) 1731 } 1732}, function(e, t, r) { 1733 "use strict"; 1734 var n = r(0); 1735 t.default = void 0; 1736 var i = n(r(9)), 1737 a = n(r(39)); 1738 t.default = function(e, t, r) { 1739 var n = r.data, 1740 o = r.headers || {}; 1741 return "application/json" === (o["Content-Type"] || o["content-type"] || "") && n && "string" != typeof n && (n = JSON.stringify(n)), (0, a.default)(t, { 1742 method: e, 1743 headers: r.headers, 1744 body: n, 1745 credentials: r.withCredentials ? "include" : "omit" 1746 }).then(function(e) { 1747 var t = !e.ok, 1748 n = e.status; 1749 return ((e = e).headers.get("Content-Type") && 0 <= e.headers.get("Content-Type").toLowerCase().indexOf("application/json") ? e.json().catch(function(e) { 1750 return { 1751 error: e, 1752 errorSummary: "Could not parse server response" 1753 } 1754 }) : e.text()).then(function(e) { 1755 return t = n, r = e, e = "object" === (0, i.default)(r), t = { 1756 responseText: e ? JSON.stringify(r) : r, 1757 status: t 1758 }, e && (t.responseType = "json", t.responseJSON = r), t; 1759 var t, r 1760 }).then(function(e) { 1761 if (t) throw e; 1762 return e 1763 }) 1764 }) 1765 }, e.exports = t.default 1766}, function(e, t) { 1767 var r, E, n = (r = "undefined" != typeof self ? self : this, o.prototype = r, new o); 1768 1769 function o() { 1770 this.fetch = !1, this.DOMException = r.DOMException 1771 } 1772 E = n, 1773 function(s) { 1774 var t, r, n = "URLSearchParams" in E, 1775 o = "Symbol" in E && "iterator" in Symbol, 1776 u = "FileReader" in E && "Blob" in E && function() { 1777 try { 1778 return new Blob, !0 1779 } catch (e) { 1780 return !1 1781 } 1782 }(), 1783 i = "FormData" in E, 1784 a = "ArrayBuffer" in E; 1785 1786 function c(e) { 1787 if ("string" != typeof e && (e = String(e)), /[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e)) throw new TypeError("Invalid character in header field name"); 1788 return e.toLowerCase() 1789 } 1790 1791 function f(e) { 1792 return "string" != typeof e && (e = String(e)), e 1793 } 1794 1795 function e(t) { 1796 var e = { 1797 next: function() { 1798 var e = t.shift(); 1799 return { 1800 done: void 0 === e, 1801 value: e 1802 } 1803 } 1804 }; 1805 return o && (e[Symbol.iterator] = function() { 1806 return e 1807 }), e 1808 } 1809 1810 function l(t) { 1811 this.map = {}, t instanceof l ? t.forEach(function(e, t) { 1812 this.append(t, e) 1813 }, this) : Array.isArray(t) ? t.forEach(function(e) { 1814 this.append(e[0], e[1]) 1815 }, this) : t && Object.getOwnPropertyNames(t).forEach(function(e) { 1816 this.append(e, t[e]) 1817 }, this) 1818 } 1819 1820 function d(e) { 1821 if (e.bodyUsed) return Promise.reject(new TypeError("Already read")); 1822 e.bodyUsed = !0 1823 } 1824 1825 function p(r) { 1826 return new Promise(function(e, t) { 1827 r.onload = function() { 1828 e(r.result) 1829 }, r.onerror = function() { 1830 t(r.error) 1831 } 1832 }) 1833 } 1834 1835 function h(e) { 1836 var t = new FileReader, 1837 r = p(t); 1838 return t.readAsArrayBuffer(e), r 1839 } 1840 1841 function g(e) { 1842 if (e.slice) return e.slice(0); 1843 var t = new Uint8Array(e.byteLength); 1844 return t.set(new Uint8Array(e)), t.buffer 1845 } 1846 1847 function y() { 1848 return this.bodyUsed = !1, this._initBody = function(e) { 1849 (this._bodyInit = e) ? "string" == typeof e ? this._bodyText = e : u && Blob.prototype.isPrototypeOf(e) ? this._bodyBlob = e : i && FormData.prototype.isPrototypeOf(e) ? this._bodyFormData = e : n && URLSearchParams.prototype.isPrototypeOf(e) ? this._bodyText = e.toString() : a && u && e && DataView.prototype.isPrototypeOf(e) ? (this._bodyArrayBuffer = g(e.buffer), this._bodyInit = new Blob([this._bodyArrayBuffer])) : a && (ArrayBuffer.prototype.isPrototypeOf(e) || r(e)) ? this._bodyArrayBuffer = g(e) : this._bodyText = e = Object.prototype.toString.call(e): this._bodyText = "", this.headers.get("content-type") || ("string" == typeof e ? this.headers.set("content-type", "text/plain;charset=UTF-8") : this._bodyBlob && this._bodyBlob.type ? this.headers.set("content-type", this._bodyBlob.type) : n && URLSearchParams.prototype.isPrototypeOf(e) && this.headers.set("content-type", "application/x-www-form-urlencoded;charset=UTF-8")) 1850 }, u && (this.blob = function() { 1851 var e = d(this); 1852 if (e) return e; 1853 if (this._bodyBlob) return Promise.resolve(this._bodyBlob); 1854 if (this._bodyArrayBuffer) return Promise.resolve(new Blob([this._bodyArrayBuffer])); 1855 if (this._bodyFormData) throw new Error("could not read FormData body as blob"); 1856 return Promise.resolve(new Blob([this._bodyText])) 1857 }, this.arrayBuffer = function() { 1858 return this._bodyArrayBuffer ? d(this) || Promise.resolve(this._bodyArrayBuffer) : this.blob().then(h) 1859 }), this.text = function() { 1860 var e, t, r = d(this); 1861 if (r) return r; 1862 if (this._bodyBlob) return e = this._bodyBlob, r = p(t = new FileReader), t.readAsText(e), r; 1863 if (this._bodyArrayBuffer) return Promise.resolve(function(e) { 1864 for (var t = new Uint8Array(e), r = new Array(t.length), n = 0; n < t.length; n++) r[n] = String.fromCharCode(t[n]); 1865 return r.join("") 1866 }(this._bodyArrayBuffer)); 1867 if (this._bodyFormData) throw new Error("could not read FormData body as text"); 1868 return Promise.resolve(this._bodyText) 1869 }, i && (this.formData = function() { 1870 return this.text().then(w) 1871 }), this.json = function() { 1872 return this.text().then(JSON.parse) 1873 }, this 1874 } 1875 a && (t = ["[object Int8Array]", "[object Uint8Array]", "[object Uint8ClampedArray]", "[object Int16Array]", "[object Uint16Array]", "[object Int32Array]", "[object Uint32Array]", "[object Float32Array]", "[object Float64Array
vendor: 5,452 bytes, lines 1875-1981
1875]"], r = ArrayBuffer.isView || function(e) { 1876 return e && -1 < t.indexOf(Object.prototype.toString.call(e)) 1877 }), l.prototype.append = function(e, t) { 1878 e = c(e), t = f(t); 1879 var r = this.map[e]; 1880 this.map[e] = r ? r + ", " + t : t 1881 }, l.prototype.delete = function(e) { 1882 delete this.map[c(e)] 1883 }, l.prototype.get = function(e) { 1884 return e = c(e), this.has(e) ? this.map[e] : null 1885 }, l.prototype.has = function(e) { 1886 return this.map.hasOwnProperty(c(e)) 1887 }, l.prototype.set = function(e, t) { 1888 this.map[c(e)] = f(t) 1889 }, l.prototype.forEach = function(e, t) { 1890 for (var r in this.map) this.map.hasOwnProperty(r) && e.call(t, this.map[r], r, this) 1891 }, l.prototype.keys = function() { 1892 var r = []; 1893 return this.forEach(function(e, t) { 1894 r.push(t) 1895 }), e(r) 1896 }, l.prototype.values = function() { 1897 var t = []; 1898 return this.forEach(function(e) { 1899 t.push(e) 1900 }), e(t) 1901 }, l.prototype.entries = function() { 1902 var r = []; 1903 return this.forEach(function(e, t) { 1904 r.push([t, e]) 1905 }), e(r) 1906 }, o && (l.prototype[Symbol.iterator] = l.prototype.entries); 1907 var v = ["DELETE", "GET", "HEAD", "OPTIONS", "POST", "PUT"]; 1908 1909 function m(e, t) { 1910 var r, n = (t = t || {}).body; 1911 if (e instanceof m) { 1912 if (e.bodyUsed) throw new TypeError("Already read"); 1913 this.url = e.url, this.credentials = e.credentials, t.headers || (this.headers = new l(e.headers)), this.method = e.method, this.mode = e.mode, this.signal = e.signal, n || null == e._bodyInit || (n = e._bodyInit, e.bodyUsed = !0) 1914 } else this.url = String(e); 1915 if (this.credentials = t.credentials || this.credentials || "same-origin", !t.headers && this.headers || (this.headers = new l(t.headers)), this.method = (e = (r = t.method || this.method || "GET").toUpperCase(), -1 < v.indexOf(e) ? e : r), this.mode = t.mode || this.mode || null, this.signal = t.signal || this.signal, this.referrer = null, ("GET" === this.method || "HEAD" === this.method) && n) throw new TypeError("Body not allowed for GET or HEAD requests"); 1916 this._initBody(n) 1917 } 1918 1919 function w(e) { 1920 var r = new FormData; 1921 return e.trim().split("&").forEach(function(e) { 1922 var t; 1923 e && (e = (t = e.split("=")).shift().replace(/\+/g, " "), t = t.join("=").replace(/\+/g, " "), r.append(decodeURIComponent(e), decodeURIComponent(t))) 1924 }), r 1925 } 1926 1927 function b(e, t) { 1928 t = t || {}, this.type = "default", this.status = void 0 === t.status ? 200 : t.status, this.ok = 200 <= this.status && this.status < 300, this.statusText = "statusText" in t ? t.statusText : "OK", this.headers = new l(t.headers), this.url = t.url || "", this._initBody(e) 1929 } 1930 m.prototype.clone = function() { 1931 return new m(this, { 1932 body: this._bodyInit 1933 }) 1934 }, y.call(m.prototype), y.call(b.prototype), b.prototype.clone = function() { 1935 return new b(this._bodyInit, { 1936 status: this.status, 1937 statusText: this.statusText, 1938 headers: new l(this.headers), 1939 url: this.url 1940 }) 1941 }, b.error = function() { 1942 var e = new b(null, { 1943 status: 0, 1944 statusText: "" 1945 }); 1946 return e.type = "error", e 1947 }; 1948 var T = [301, 302, 303, 307, 308]; 1949 b.redirect = function(e, t) { 1950 if (-1 === T.indexOf(t)) throw new RangeError("Invalid status code"); 1951 return new b(null, { 1952 status: t, 1953 headers: { 1954 location: e 1955 } 1956 }) 1957 }, s.DOMException = E.DOMException; 1958 try { 1959 new s.DOMException 1960 } catch (e) { 1961 s.DOMException = function(e, t) { 1962 this.message = e, this.name = t; 1963 e = Error(e); 1964 this.stack = e.stack 1965 }, s.DOMException.prototype = Object.create(Error.prototype), s.DOMException.prototype.constructor = s.DOMException 1966 } 1967 1968 function k(i, a) { 1969 return new Promise(function(n, e) { 1970 var t = new m(i, a); 1971 if (t.signal && t.signal.aborted) return e(new s.DOMException("Aborted", "AbortError")); 1972 var o = new XMLHttpRequest; 1973 1974 function r() { 1975 o.abort() 1976 } 1977 o.onload = function() { 1978 var r, e = { 1979 status: o.status, 1980 statusText: o.statusText, 1981 headers: (t = o.getAllResponseHeaders() || "", r = new l, t.replace(/\r?\n[\t ]+/g, " ").split(/\r?\n/).forEac
1981h(function(e) { 1982 var t = e.split(":"), 1983 e = t.shift().trim(); 1984 e && (t = t.join(":").trim(), r.append(e, t)) 1985 }), r) 1986 }; 1987 e.url = "responseURL" in o ? o.responseURL : e.headers.get("X-Request-URL"); 1988 var t = "response" in o ? o.response : o.responseText; 1989 n(new b(t, e)) 1990 }, o.onerror = function() { 1991 e(new TypeError("Network request failed")) 1992 }, o.ontimeout = function() { 1993 e(new TypeError("Network request failed")) 1994 }, o.onabort = function() { 1995 e(new s.DOMException("Aborted", "AbortError")) 1996 }, o.open(t.method, t.url, !0), "include" === t.credentials ? o.withCredentials = !0 : "omit" === t.credentials && (o.withCredentials = !1), "responseType" in o && u && (o.responseType = "blob"), t.headers.forEach(function(e, t) { 1997 o.setRequestHeader(t, e) 1998 }), t.signal && (t.signal.addEventListener("abort", r), o.onreadystatechange = function() { 1999 4 === o.readyState && t.signal.removeEventListener("abort", r) 2000 }), o.send(void 0 === t._bodyInit ? null : t._bodyInit) 2001 }) 2002 } 2003 k.polyfill = !0, E.fetch || (E.fetch = k, E.Headers = l, E.Request = m, E.Response = b), s.Headers = l, s.Request = m, s.Response = b, s.fetch = k 2004 }({}), delete n.fetch.polyfill, (t = n.fetch).default = n.fetch, t.fetch = n.fetch, t.Headers = n.Headers, t.Request = n.Request, t.Response = n.Response, e.exports = t 2005}, function(e, t, r) { 2006 var n, o; 2007 void 0 === (n = "function" == typeof(n = o = function() { 2008 function g() { 2009 for (var e = 0, t = {}; e < arguments.length; e++) { 2010 var r, n = arguments[e]; 2011 for (r in n) t[r] = n[r] 2012 } 2013 return t 2014 } 2015 return function e(p) { 2016 function h(e, t, r) { 2017 var n, o; 2018 if ("undefined" != typeof document) { 2019 if (1 < arguments.length) { 2020 "number" == typeof(r = g({ 2021 path: "/" 2022 }, h.defaults, r)).expires && ((o = new Date).setMilliseconds(o.getMilliseconds() + 864e5 * r.expires), r.expires = o), r.expires = r.expires ? r.expires.toUTCString() : ""; 2023 try { 2024 n = JSON.stringify(t), /^[\{\[]/.test(n) && (t = n) 2025 } catch (e) {} 2026 t = p.write ? p.write(t, e) : encodeURIComponent(String(t)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent), e = (e = (e = encodeURIComponent(String(e))).replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent)).replace(/[\(\)]/g, escape); 2027 var i, a = ""; 2028 for (i in r) r[i] && (a += "; " + i, !0 !== r[i] && (a += "=" + r[i])); 2029 return document.cookie = e + "=" + t + a 2030 } 2031 e || (n = {}); 2032 for (var s = document.cookie ? document.cookie.split("; ") : [], u = /(%[0-9A-Z]{2})+/g, c = 0; c < s.length; c++) { 2033 var f = s[c].split("="), 2034 l = f.slice(1).join("="); 2035 this.json || '"' !== l.charAt(0) || (l = l.slice(1, -1)); 2036 try { 2037 var d = f[0].replace(u, decodeURIComponent), 2038 l = p.read ? p.read(l, d) : p(l, d) || l.replace(u, decodeURIComponent); 2039 if (this.json) try { 2040 l = JSON.parse(l) 2041 } catch (e) {} 2042 if (e === d) { 2043 n = l; 2044 break 2045 } 2046 e || (n[d] = l) 2047 } catch (e) {} 2048 } 2049 return n 2050 } 2051 } 2052 return (h.set = h).get = function(e) { 2053 return h.call(h, e) 2054 }, h.getJSON = function() { 2055 return h.apply({ 2056 json: !0 2057 }, [].slice.call(arguments)) 2058 }, h.defaults = {}, h.remove = function(e, t) { 2059 h(e, "", g(t, { 2060 expires: -1 2061 })) 2062 }, h.withConverter = e, h 2063 }(function() {}) 2064 }) ? n.call(t, r, t, e) : n) || (e.exports = n), e.exports = o() 2065}, function(e, t, r) { 2066 "use strict"; 2067 var n = r(0); 2068 t.sessionExists = function(e) { 2069 return e.session.get().then(function(e) { 2070 return "ACTIVE" === e.status 2071 }).catch(function() { 2072 return !1 2073 }) 2074 }, t.getSession = function(r) { 2075 return i.default.get(r, "/api/v1/sessions/me").then(function(e) { 2076 var t = (0, o.omit)(e, "_links"); 2077 return t.refresh = function() { 2078 return i.default.post(r, (0, o.getLink)(e, "refresh").href) 2079 }, t.user = function() { 2080 return i.default.get(r, (0, o.getLink)(e, "user").href) 2081 }, t 2082 }).catch(function() { 2083 return { 2084 status: "INACTIVE" 2085 } 2086 }) 2087 }, t.closeSession = function(e) { 2088 return i.default.httpRequest(e, { 2089 url: e.getIssuerOrigin() + "/api/v1/sessions/me", 2090 method: "DELETE" 2091 }) 2092 }, t.refreshSession = function(e) { 2093 return i.default.post(e, "/api/v1/sessions/me/lifecycle/refresh") 2094 }, t.setCookieAndRedirect = function(e, t, r) { 2095 r = r || window.location.href, window.location.assign(e.getIssuerOrigin() + "/login/sessionCookieRedirect" + (0, o.toQueryParams)({ 2096 checkAccountSetupComplete: !0, 2097 token: t, 2098 redirectUrl: r 2099 })) 2100 }; 2101 var o = r(2), 2102 i = n(r(4)) 2103}, function(e, t, r) { 2104 "use strict"; 2105 var n = r(18), 2106 o = r(0); 2107 t.revokeToken = function(n, o) { 2108 return Promise.resolve().then(function() { 2109 if (!o || !o.accessToken) throw new g.default("A valid access token object is required"); 2110 var e = n.options.clientId; 2111 if (!e) throw new g.default("A clientId must be specified in the OktaAuth constructor to revoke a token"); 2112 var t = (0, l.getOAuthUrls)(n).revokeUrl, 2113 r = o.accessToken, 2114 r = (0, h.toQueryParams)({ 2115 token_type_hint: "access_token", 2116 token: r 2117 }).slice(1), 2118 e = btoa(e); 2119 return a.default.post(n, t, r, { 2120 headers: { 2121 "Content-Type": "application/x-www-form-urlencoded", 2122 Authorization: "Basic " + e 2123 } 2124 }) 2125 }) 2126 }, t.getToken = E, t.getWithoutPrompt = O, t.getWithPopup = function(e, t) { 2127 return 2 < arguments.length ? Promise.reject(new g.default('As of version 3.0, "getWithPopup" takes only a single set of options')) : (t = (0, h.clone)(t) || {}, Object.assign(t, { 2128 display: "popup", 2129 responseMode: "okta_post_message" 2130 }), E(e, t)) 2131 }, t.getWithRedirect = function(c, f) { 2132 return 2 < arguments.length ? Promise.reject(new g.default('As of version 3.0, "getWithRedirect" takes only a single set of options')) : (f = (0, h.clone)(f) || {}, _(c, f).then(function(e) { 2133 var t = (0, l.getOAuthUrls)(c, f), 2134 r = t.authorizeUrl + k(e), 2135 n = e.responseType, 2136 o = e.state, 2137 i = e.nonce, 2138 a = e.scopes, 2139 s = e.clientId, 2140 u = e.ignoreSignature; 2141 p.set(d.REDIRECT_OAUTH_PARAMS_COOKIE_NAME, JSON.stringify({ 2142 responseType: n, 2143 state: o, 2144 nonce: i, 2145 scopes: a, 2146 clientId: s, 2147 urls: t, 2148 ignoreSignature: u 2149 }), null, c.options.cookies), p.set(d.REDIRECT_NONCE_COOKIE_NAME, e.nonce, null, c.options.cookies), p.set(d.REDIRECT_STATE_COOKIE_NAME, e.state, null, c.options.cookies), c.token.getWithRedirect._setLocation(r) 2150 })) 2151 }, t.parseFromUrl = function(o, e) { 2152 e = e || {}, e = (0, h.isString)(e) ? { 2153 url: e 2154 } : e; 2155 var t = o.options.pkce ? "query" : "fragment", 2156 i = e.url, 2157 a = e.responseMode || o.options.responseMode || t, 2158 t = o.token.parseFromUrl._getLocation(), 2159 t = "query" === a ? i ? i.substring(i.indexOf("?")) : t.search : i ? i.substring(i.indexOf("#")) : t.hash; 2160 if (!t) return Promise.reject(new g.default("Unable to parse a token from the url")); 2161 var r = p.get(d.REDIRECT_OAUTH_PARAMS_COOKIE_NAME); 2162 if (!r) return Promise.reject(new g.default("Unable to retrieve OAuth redirect params cookie")); 2163 try { 2164 var s = JSON.parse(r), 2165 u = s.urls;
2166 delete s.urls, p.delete(d.REDIRECT_OAUTH_PARAMS_COOKIE_NAME) 2167 } catch (o) { 2168 return Promise.reject(new g.default("Unable to parse the " + d.REDIRECT_OAUTH_PARAMS_COOKIE_NAME + " cookie: " + o.message)) 2169 } 2170 return Promise.resolve((0, l.urlParamsToObject)(t)).then(function(e) { 2171 return i || ("query" === a ? (r = (t = o).token.parseFromUrl._getHistory(), n = t.token.parseFromUrl._getDocument(), t = t.token.parseFromUrl._getLocation(), r && r.replaceState ? r.replaceState(null, n.title, t.pathname + t.hash) : t.search = "") : (n = (r = o).token.parseFromUrl._getHistory(), t = r.token.parseFromUrl._getDocument(), r = r.token.parseFromUrl._getLocation(), n && n.replaceState ? n.replaceState(null, t.title, r.pathname + r.search) : r.hash = "")), T(o, s, e, u); 2172 var t, r, n 2173 }) 2174 }, t.decodeToken = v, t.renewToken = function(e, t) { 2175 return (0, c.isToken)(t) ? O(e, { 2176 responseType: e.options.pkce ? "code" : (0, c.isAccessToken)(t) ? "token" : "id_token", 2177 scopes: t.scopes, 2178 authorizeUrl: t.authorizeUrl, 2179 userinfoUrl: t.userinfoUrl, 2180 issuer: t.issuer 2181 }).then(function(e) { 2182 e = e.tokens; 2183 return (0, c.isIDToken)(t) ? e.idToken : e.accessToken 2184 }) : Promise.reject(new g.default("Renew must be passed a token with an array of scopes and an accessToken or idToken")) 2185 }, t.getUserInfo = function(t, r, n) { 2186 return f(this, void 0, void 0, i.default.mark(function e() { 2187 return i.default.wrap(function(e) { 2188 for (;;) switch (e.prev = e.next) { 2189 case 0: 2190 if (r) { 2191 e.next = 4; 2192 break 2193 } 2194 return e.next = 3, t.tokenManager.get(d.ACCESS_TOKEN_STORAGE_KEY); 2195 case 3: 2196 r = e.sent; 2197 case 4: 2198 if (n) { 2199 e.next = 8; 2200 break 2201 } 2202 return e.next = 7, t.tokenManager.get(d.ID_TOKEN_STORAGE_KEY); 2203 case 7: 2204 n = e.sent; 2205 case 8: 2206 if (r && ((0, c.isToken)(r) || r.accessToken || r.userinfoUrl)) { 2207 e.next = 10; 2208 break 2209 } 2210 return e.abrupt("return", Promise.reject(new g.default("getUserInfo requires an access token object"))); 2211 case 10: 2212 if (n && ((0, c.isToken)(n) || n.idToken)) { 2213 e.next = 12; 2214 break 2215 } 2216 return e.abrupt("return", Promise.reject(new g.default("getUserInfo requires an ID token object"))); 2217 case 12: 2218 return e.abrupt("return", a.default.httpRequest(t, { 2219 url: r.userinfoUrl, 2220 method: "GET", 2221 accessToken: r.accessToken 2222 }).then(function(e) { 2223 return e.sub === n.claims.sub ? e : Promise.reject(new g.default("getUserInfo request was rejected due to token mismatch")) 2224 }).catch(function(e) { 2225 var t, r; 2226 throw e.xhr && (401 === e.xhr.status || 403 === e.xhr.status) && (e.xhr.headers && (0, h.isFunction)(e.xhr.headers.get) && e.xhr.headers.get("WWW-Authenticate") ? r = e.xhr.headers.get("WWW-Authenticate") : (0, h.isFunction)(e.xhr.getResponseHeader) && (r = e.xhr.getResponseHeader("WWW-Authenticate")), r) && (t = r.match(/error="(.*?)"/) || [], r = (r.match(/error_description="(.*?)"/) || [])[1], (t = t[1]) && r && (e = new u.default(t, r))), e 2227 })); 2228 case 13: 2229 case "end": 2230 return e.stop() 2231 } 2232 }, e) 2233 })) 2234 }, t.verifyToken = m, t.handleOAuthResponse = T, t.prepareTokenParams = _; 2235 var i = o(r(19)), 2236 a = o(r(4)), 2237 h = r(2), 2238 l = r(17), 2239 s = n(r(43)), 2240 g = o(r(3)), 2241 u = o(r(28)), 2242 d = r(6), 2243 n = o(r(13)), 2244 y = o(r(44)), 2245 c = r(29), 2246 f = function(e, a, s, u) { 2247 return new(s = s || Promise)(function(r, t) { 2248 function n(e) { 2249 try { 2250 i(u.next(e)) 2251 } catch (e) { 2252 t(e) 2253 } 2254 } 2255 2256 function o(e) { 2257 try { 2258 i(u.throw(e)) 2259 } catch (e) { 2260 t(e) 2261 } 2262 } 2263 2264 function i(e) { 2265 var t; 2266 e.done ? r(e.value) : ((t = e.value) instanceof s ? t : new s(function(e) { 2267 e(t) 2268 })).then(n, o) 2269 } 2270 i((u = u.apply(e, a || [])).next()) 2271 }) 2272 }, 2273 p = n.default.storage; 2274 2275 function v(e) { 2276 var t, r = e.split("."); 2277 try { 2278 t = { 2279 header: JSON.parse((0, h.base64UrlToString)(r[0])
2279), 2280 payload: JSON.parse((0, h.base64UrlToString)(r[1])), 2281 signature: r[2] 2282 } 2283 } catch (e) { 2284 throw new g.default("Malformed token") 2285 } 2286 return t 2287 } 2288 2289 function m(r, n, o) { 2290 return Promise.resolve().then(function() { 2291 if (!n || !n.idToken) throw new g.default("Only idTokens may be verified"); 2292 var e = v(n.idToken), 2293 t = { 2294 clientId: r.options.clientId, 2295 issuer: r.options.issuer, 2296 ignoreSignature: r.options.ignoreSignature 2297 }; 2298 return Object.assign(t, o), (0, l.validateClaims)(r, e.payload, t), 1 != t.ignoreSignature && r.features.isTokenVerifySupported() ? (0, l.getKey)(r, n.issuer, e.header.kid).then(function(e) { 2299 return s.verifyToken(n.idToken, e) 2300 }).then(function(e) { 2301 if (!e) throw new g.default("The token signature is not valid"); 2302 if (o && o.accessToken && n.claims.at_hash) return s.getOidcHash(o.accessToken).then(function(e) { 2303 if (e !== n.claims.at_hash) throw new g.default("Token hash verification failed") 2304 }) 2305 }).then(function() { 2306 return n 2307 }) : n 2308 }) 2309 } 2310 2311 function w(n, e, o) { 2312 var i, a; 2313 return new Promise(function(t, r) { 2314 i = function(e) { 2315 if (e.data && e.data.state === o) return e.origin !== n.getIssuerOrigin() ? r(new g.default("The request does not match client configuration")) : void t(e.data) 2316 }, (0, l.addListener)(window, "message", i), a = setTimeout(function() { 2317 r(new g.default("OAuth flow timed out")) 2318 }, e || 12e4) 2319 }).finally(function() { 2320 clearTimeout(a), (0, l.removeListener)(window, "message", i) 2321 }) 2322 } 2323 2324 function b(e, t) { 2325 if (e.error || e.error_description) throw new u.default(e.error, e.error_description); 2326 if (e.state !== t.state) throw new g.default("OAuth flow response state doesn't match request state") 2327 } 2328 2329 function T(a, s, u, c) { 2330 c = c || {}; 2331 var f = s.responseType; 2332 Array.isArray(f) || (f = [f]); 2333 var l = (0, h.clone)(s.scopes), 2334 d = s.clientId || a.options.clientId, 2335 p = !1 !== a.options.pkce; 2336 return Promise.resolve().then(function() { 2337 return b(u, s), u.code && p ? (f = ["token"], -1 !== l.indexOf("openid") && f.push("id_token"), e = a, t = s, r = u.code, n = c, o = y.default.loadMeta(e), i = { 2338 clientId: t.clientId, 2339 authorizationCode: r, 2340 codeVerifier: o.codeVerifier, 2341 redirectUri: o.redirectUri 2342 }, y.default.getToken(e, i, n).then(function(e) { 2343 return b(e, i), e 2344 }).finally(function() { 2345 y.default.clearMeta(e) 2346 })) : u; 2347 var e, t, r, n, o, i 2348 }).then(function(e) { 2349 var t = {}, 2350 r = e.expires_in, 2351 n = e.token_type, 2352 o = e.access_token, 2353 e = e.id_token; 2354 if (o && (t.accessToken = { 2355 value: o, 2356 accessToken: o, 2357 expiresAt: Number(r) + Math.floor(Date.now() / 1e3), 2358 tokenType: n, 2359 scopes: l, 2360 authorizeUrl: c.authorizeUrl, 2361 userinfoUrl: c.userinfoUrl 2362 }), e) { 2363 var n = a.token.decode(e), 2364 i = { 2365 value: e, 2366 idToken: e, 2367 claims: n.payload, 2368 expiresAt: n.payload.exp, 2369 scopes: l, 2370 authorizeUrl: c.authorizeUrl, 2371 issuer: c.issuer, 2372 clientId: d 2373 }, 2374 o = { 2375 clientId: d, 2376 issuer: c.issuer, 2377 nonce: s.nonce, 2378 accessToken: o 2379 }; 2380 return void 0 !== s.ignoreSignature && (o.ignoreSignature = s.ignoreSignature), m(a, i, o).then(function() { 2381 return t.idToken = i, t 2382 }) 2383 } 2384 return t 2385 }).then(function(e) { 2386 if (-1 !== f.indexOf("token") && !e.accessToken) throw new g.default('Unable to parse OAuth flow response: response type "token" was requested but "access_token" was not returned.'); 2387 if (-1 !== f.indexOf("id_token") && !e.idToken) throw new g.default('Unable to parse OAuth flow response: response type "id_token" was requested but "id_token" was not returned.'); 2388 return { 2389 tokens: e, 2390 state: u.state, 2391 code: u.code 2392 } 2393 }) 2394 } 2395 2396 function k(e) { 2397 e = function(e) { 2398 if (!e.clientId) throw new g.default("A clientId must be specified in the OktaAuth constructor to get a token"); 2399 if ((0, h.isString)(e.responseType) && -1 !== e.responseType.indexOf(" ")) throw new g.default("Multiple OAuth responseTypes must be defined as an array"); 2400 var t = { 2401 client_id: e.clientId, 2402 code_challenge: e.codeChallenge, 2403 code_challenge_method: e.codeChallengeMethod, 2404 display: e.display, 2405 idp: e.idp, 2406 idp_scope: e.idpScope, 2407 login_hint: e.loginHint, 2408 max_age: e.maxAge, 2409 nonce: e.nonce, 2410 prompt: e.prompt, 2411 redirect_uri: e.redirectUri, 2412 response_mode: e.responseMode, 2413 response_type: e.responseType, 2414 sessionToken: e.sessionToken, 2415 state: e.state 2416 }, 2417 t = (0, h.removeNils)(t); 2418 if (["idp_scope", "response_type"].forEach(function(e) { 2419 Array.isArray(t[e]) && (t[e] = t[e].join(" ")) 2420 }), -1 !== e.responseType.indexOf("id_token") && -1 === e.scopes.indexOf("openid")) throw new g.default("openid scope must be specified in the scopes argument when requesting an id_token"); 2421 return t.scope = e.scopes.join(" "), t 2422 }(e); 2423 return (0, h.toQueryParams)(e) 2424 } 2425 2426 function E(s, u) { 2427 return 2 < arguments.length ? Promise.reject(new g.default('As of version 3.0, "getToken" takes only a single set of options')) : _(s, u = u || {}).then(function(t) { 2428 var e, r, o; 2429 switch (u.sessionToken ? Object.assign(t, { 2430 prompt: "none", 2431 responseMode: "okta_post_message", 2432 display: null 2433 }) : u.idp && Object.assign(t, { 2434 display: "popup" 2435 }), r = (0, l.getOAuthUrls)(s, t), e = (u.codeVerifier ? r.tokenUrl : r.authorizeUrl) + k(t), t.sessionToken || null === t.display ? "IFRAME" : "popup" === t.display ? "POPUP" : "IMPLICIT") { 2436 case "IFRAME": 2437 var n = w(s, u.timeout, t.state), 2438 i = (0, l.loadFrame)(e); 2439 return n.then(function(e) { 2440 return T(s, t, e, r) 2441 }).finally(function() { 2442 document.body.contains(i) && i.parentElement.removeChild(i) 2443 }); 2444 case "POPUP": 2445 if ("okta_post_message" === t.responseMode) { 2446 if (!s.features.isPopupPostMessageSupported()) throw new g.default("This browser doesn't have full postMessage support"); 2447 o = w(s, u.timeout, t.state) 2448 } 2449 var n = { 2450 popupTitle: u.popupTitle 2451 }, 2452 a = (0, l.loadPopup)(e, n); 2453 return new Promise(function(t, r) { 2454 var n = setInterval(function() { 2455 a && !a.closed || (clearInterval(n), r(new g.default("Unable to parse OAuth flow response"))) 2456 }, 100); 2457 o.then(function(e) { 2458 clearInterval(n), t(e) 2459 }).catch(function(e) { 2460 clearInterval(n), r(e) 2461 }) 2462 }).then(function(e) { 2463 return T(s, t, e, r) 2464 }).finally(function() { 2465 a && !a.closed && a.close() 2466 }); 2467 default: 2468 throw new g.default("The full page redirect flow is not supported") 2469 } 2470 }).catch(function(e) { 2471 throw s.options.pkce && y.default.clearMeta(s), e 2472 }) 2473 } 2474 2475 function O(e, t) { 2476 return 2 < arguments.length ? Promise.reject(new g.default('As of version 3.0, "getWithoutPrompt" takes only a single set of options')) : (t = (0, h.clone)(t) || {}, Object.assign(t, { 2477 prompt: "none", 2478 responseMode: "okta_post_message", 2479 display: null 2480 }), E(e, t)) 2481 } 2482 2483 function _(r, e) {
2484 if ((0, l.isLoginRedirect)(r)) return Promise.reject(new g.default("The app should not attempt to call getToken on callback. Authorize flow is already in process. Use parseFromUrl() to receive tokens.")); 2485 e = (0, h.clone)(e) || {}; 2486 var t, n = { 2487 pkce: (t = r).options.pkce, 2488 clientId: t.options.clientId, 2489 redirectUri: t.options.redirectUri || window.location.href, 2490 responseType: ["token", "id_token"], 2491 responseMode: t.options.responseMode, 2492 state: (0, l.generateState)(), 2493 nonce: (0, l.generateNonce)(), 2494 scopes: ["openid", "email"], 2495 ignoreSignature: t.options.ignoreSignature 2496 }; 2497 if (Object.assign(n, e), !1 === n.pkce) return Promise.resolve(n); 2498 if (r.features.isPKCESupported()) return n.codeChallengeMethod || (n.codeChallengeMethod = y.default.DEFAULT_CODE_CHALLENGE_METHOD), n.responseType = "code", (0, l.getWellKnown)(r, null).then(function(e) { 2499 if (-1 === (e.code_challenge_methods_supported || []).indexOf(n.codeChallengeMethod)) throw new g.default("Invalid code_challenge_method") 2500 }).then(function() { 2501 var e = y.default.generateVerifier(n.codeVerifier), 2502 t = { 2503 codeVerifier: e, 2504 redirectUri: n.redirectUri 2505 }; 2506 return y.default.saveMeta(r, t), y.default.computeChallenge(e) 2507 }).then(function(e) { 2508 var t = (0, h.clone)(n) || {}; 2509 return Object.assign(t, n, { 2510 codeChallenge: e 2511 }), t 2512 }); 2513 e = "PKCE requires a modern browser with encryption support running in a secure context."; 2514 return r.features.isHTTPS() || (e += "\nThe current page is not being served with HTTPS protocol. PKCE requires secure HTTPS protocol."), r.features.hasTextEncoder() || (e += '\n"TextEncoder" is not defined. To use PKCE, you may need to include a polyfill/shim for this browser.'), Promise.reject(new g.default(e)) 2515 } 2516}, function(e, t, r) { 2517 "use strict"; 2518 t.getOidcHash = function(e) { 2519 e = (new TextEncoder).encode(e); 2520 return crypto.subtle.digest("SHA-256", e).then(function(e) { 2521 e = new Uint8Array(e).slice(0, 16), e = String.fromCharCode.apply(null, e); 2522 return (0, i.stringToBase64Url)(e) 2523 }) 2524 }, t.verifyToken = function(n, e) { 2525 e = (0, i.clone)(e); 2526 var o = { 2527 name: "RSASSA-PKCS1-v1_5", 2528 hash: { 2529 name: "SHA-256" 2530 } 2531 }; 2532 return delete e.use, crypto.subtle.importKey("jwk", e, o, !0, ["verify"]).then(function(e) { 2533 var t = n.split("."), 2534 r = (0, i.stringToBuffer)(t[0] + "." + t[1]), 2535 t = (0, i.base64UrlDecode)(t[2]), 2536 t = (0, i.stringToBuffer)(t); 2537 return crypto.subtle.verify(o, e, t, r) 2538 }) 2539 }; 2540 var i = r(2) 2541}, function(e, t, r) { 2542 "use strict"; 2543 var n = r(0); 2544 t.default = void 0; 2545 var o = n(r(3)), 2546 i = n(r(4)), 2547 a = r(2); 2548 2549 function s(e) { 2550 return ("0" + e.toString(16)).substr(-2) 2551 } 2552 2553 function u(e, t) { 2554 return t = Object.assign({}, e.options.cookies, t), e.options.storageUtil.getPKCEStorage(t) 2555 } 2556 2557 function c(e) { 2558 u(e).clearStorage(), u(e, { 2559 preferLocalStorage: !0 2560 }).clearStorage() 2561 } 2562 r = { 2563 DEFAULT_CODE_CHALLENGE_METHOD: "S256", 2564 generateVerifier: function(e) { 2565 var t, r = e || ""; 2566 return r.length < 43 && (r += (t = 43 - r.length, e = new Uint8Array(Math.ceil(t / 2)), crypto.getRandomValues(e), Array.from(e, s).join("").slice(0, t))), encodeURIComponent(r).slice(0, 128) 2567 }, 2568 clearMeta: c, 2569 saveMeta: function(e, t) { 2570 var r = u(e, { 2571 preferLocalStorage: !0 2572 }); 2573 r.getStorage().codeVerifier && (0, a.warn)("saveMeta: PKCE codeVerifier exists in localStorage. This may indicate an auth flow is already in progress."), (r = u(e)).getStorage().codeVerifier && (0, a.warn)("saveMeta: PKCE codeVerifier exists in sessionStorage. This may indicate an auth flow is already in progress."), c(e), r.setStorage(t) 2574 }, 2575 loadMeta: function(e) { 2576 var t = u(e, { 2577 preferLocalStorage: !0 2578 }).getStorage(); 2579 if (!t.codeVerifier && !(t = u(e, { 2580 preferLocalStorage: !1 2581 }).getStorage()).codeVerifier) throw new o.default("Could not load PKCE codeVerifier from storage. This may indicate the auth flow has already completed or multiple auth flows are executing concurrently.", null); 2582 return t 2583 }, 2584 computeChallenge: function(e) { 2585 e = (new TextEncoder).encode(e); 2586 return crypto.subtle.digest("SHA-256", e).then(function(e) { 2587 e = String.fromCharCode.apply(null, new Uint8Array(e)); 2588 return (0, a.stringToBase64Url)(e) 2589 }) 2590 }, 2591 getToken: function(e, t, r) { 2592 ! function(e) { 2593 if (!e.clientId) throw new o.default("A clientId must be specified in the OktaAuth constructor to get a token"); 2594 if (!e.redirectUri) throw new o.default("The redirectUri passed to /authorize must also be passed to /token"); 2595 if (!e.authorizationCode) throw new o.default("An authorization code (returned from /authorize) must be passed to /token"); 2596 if (!e.codeVerifier) throw new o.default('The "codeVerifier" (generated and saved by your app) must be passed to /token') 2597 }(t); 2598 t = (0, a.removeNils)({ 2599 client_id: t.clientId, 2600 redirect_uri: t.redirectUri, 2601 grant_type: "authorization_code", 2602 code: t.authorizationCode, 2603 code_verifier: t.codeVerifier 2604 }), t = (0, a.toQueryParams)(t).slice(1); 2605 return i.default.httpRequest(e, { 2606 url: r.tokenUrl, 2607 method: "POST", 2608 args: t, 2609 withCredentials: !1, 2610 headers: { 2611 "Content-Type": "application/x-www-form-urlencoded" 2612 } 2613 }) 2614 } 2615 }; 2616 t.default = r, e.exports = t.default 2617}, function(e, t) {}, function(e, t) {}, function(e, t) {}, function(e, t) {}, function(e, t) {}, function(e, t) {}, function(e, t) {}, function(e, t, r) { 2618 "use strict"; 2619 t.isToken = function(e) { 2620 return !(!e || !e.accessToken && !e.idToken || !Array.isArray(e.scopes)) 2621 }, t.isAccessToken = function(e) { 2622 return e && e.accessToken 2623 }, t.isIDToken = function(e) { 2624 return e && e.idToken 2625 } 2626}, function(e, t) {}, function(e, t, r) { 2627 "use strict"; 2628 var n = r(0); 2629 t.TokenManager = void 0; 2630 var c = n(r(9)), 2631 f = n(r(1)), 2632 l = r(2), 2633 d = n(r(3)), 2634 p = n(r(13)), 2635 h = r(6), 2636 g = n(r(27)), 2637 y = n(r(55)), 2638 a = r(29), 2639 v = { 2640 autoRenew: !0, 2641 storage: "localStorage", 2642 expireEarlySeconds: 30 2643 }; 2644 2645 function m(e, t) { 2646 return t.expiresAt - e.options.expireEarlySeconds 2647 } 2648 2649 function w(e, t) { 2650 e.emitter.emit("error", t) 2651 } 2652 2653 function b(e, t) { 2654 clearTimeout(e.expireTimeouts[t]), delete e.expireTimeouts[t], delete e.renewPromise[t] 2655 } 2656 2657 function T(e, t, r, n) { 2658 var o = m(t, n), 2659 o = 1e3 * Math.max(o - t.clock.now(), 0); 2660 b(t, r); 2661 o = setTimeout(function() { 2662 t.emitter.emit("expired", r, n) 2663 }, o); 2664 t.expireTimeouts[r] = o 2665 } 2666 2667 function k(e, t, r, n, o) { 2668 var i = r.getStorage(); 2669 if (!(0, l.isObject)(o) || !o.scopes || !o.expiresAt && 0 !== o.expiresAt || !(0, a.isIDToken)(o) && !(0, a.isAccessToken)(o)) throw new d.default("Token must be an Object with scopes, expiresAt, and an idToken or accessToken properties"); 2670 i[n] = o, r.setStorage(i), T(0, t, n, o) 2671 } 2672 2673 function E(e, t) { 2674 return e.getStorage()[t] 2675 } 2676 2677 function O(e, t, r) { 2678 b(e, r); 2679 var n = t.getStorage(); 2680 delete n[r], t.setStorage(n), e.emitter.emit("removed", r) 2681 } 2682 2683 function _(e, t) { 2684 ! function(e) { 2685 var t, r = e.expireTimeouts; 2686 for (t in r) Object.prototype.hasOwnProperty.call(r, t) && b(e, t) 2687 }(e), t.clearStorage() 2688 } 2689 t.TokenManager = function e(t, r) { 2690 var n, o, a, i = this; 2691 if ((0, f.default)(this, e), "localStorage" !== (r = Object.assign({}, v, (0, l.removeNils)(r))).storage || p.default.browserHasLocalStorage() || ((0, l.warn)("This browser doesn't support localStorage. Switching to sessionStorage."), r.storage = "sessionStorage"), "sessionStorage" !== r.storage || p.default.browserHasSessionStorage() || ((0, l.warn)("This browser doesn't support sessionStorage. Switching to cookie-based storage."), r.storage = "cookie"), "object" === (0, c.default)(r.storage)) n = r.storage; 2692 else switch (r.storage) { 2693 case "localStorage": 2694 n = localStorage; 2695 break; 2696 case "sessionStorage": 2697 n = sessionStorage; 2698 break; 2699 case "cookie": 2700 o = t.options.cookies, a = p.default.getCookieStorage(o), n = { 2701 getItem: function(t) { 2702 var r = a.getItem(), 2703 n = {}; 2704 return Object.keys(r).forEach(function(e) { 2705 0 === e.indexOf(t) && (n[e.replace("".concat(t, "_"), "")] = JSON.parse(r[e])) 2706 }), JSON.stringify(n) 2707 }, 2708 setItem: function(n, o) { 2709 var i = JSON.parse(this.getItem(n)); 2710 o = JSON.parse(o), Object.keys(o).forEac
2710h(function(e) { 2711 var t = n + "_" + e, 2712 r = JSON.stringify(o[e]); 2713 a.setItem(t, r), delete i[e] 2714 }), Object.keys(i).forEach(function(e) { 2715 p.default.storage.delete(n + "_" + e) 2716 }) 2717 } 2718 }; 2719 break; 2720 case "memory": 2721 n = p.default.getInMemoryStorage(); 2722 break; 2723 default: 2724 throw new d.default("Unrecognized storage option") 2725 } 2726 var s = r.storageKey || h.TOKEN_STORAGE_NAME, 2727 u = (0, g.default)(n, s), 2728 s = { 2729 clock: y.default.create(), 2730 options: r, 2731 emitter: t.emitter, 2732 expireTimeouts: {}, 2733 renewPromise: {} 2734 }; 2735 this.add = k.bind(this, t, s, u), this.get = function(e, t, r, n) { 2736 return new Promise(function(e) { 2737 return e(E(r, n)) 2738 }) 2739 }.bind(this, t, s, u), this.remove = O.bind(this, s, u), this.clear = _.bind(this, s, u), this.renew = function(e, r, n, o) { 2740 var t = r.renewPromise[o]; 2741 if (t) return t; 2742 try { 2743 var i = E(n, o); 2744 if (!i) throw new d.default("The tokenManager has no token for the key: " + o) 2745 } catch (e) { 2746 return Promise.reject(e) 2747 } 2748 return b(r, o), r.renewPromise[o] = e.token.renew(i).then(function(e) { 2749 var t = E(n, o); 2750 if (t) return k(0, r, n, o, e), r.emitter.emit("renewed", o, e, t), e 2751 }).catch(function(e) { 2752 throw "OAuthError" !== e.name && "AuthSdkError" !== e.name || (O(r, n, o), e.tokenKey = o, e.accessToken = !!i.accessToken, w(r, e)), e 2753 }).finally(function() { 2754 delete r.renewPromise[o] 2755 }), r.renewPromise[o] 2756 }.bind(this, t, s, u), this.on = s.emitter.on.bind(s.emitter), this.off = s.emitter.off.bind(s.emitter), this.hasExpired = function(e, t) { 2757 return m(e, t) <= e.clock.now() 2758 }.bind(this, s), this.on("expired", function(e) { 2759 r.autoRenew ? i.renew(e).catch(function() {}) : i.remove(e) 2760 }), 2761 function(t, e) { 2762 try { 2763 var r = e.getStorage() 2764 } catch (e) { 2765 return w(t, e) 2766 } 2767 for (var n in r) Object.prototype.hasOwnProperty.call(r, n) && T(0, t, n, r[n]) 2768 }(s, u) 2769 } 2770}, function(e, t, r) { 2771 "use strict"; 2772 var n = r(0); 2773 t.default = void 0; 2774 var o = n(r(1)), 2775 r = ((0, n(r(10)).default)(i, [{ 2776 key: "now", 2777 value: function() { 2778 return (Date.now() + this.localOffset) / 1e3 2779 } 2780 }], [{ 2781 key: "create", 2782 value: function() { 2783 return new i(0) 2784 } 2785 }]), i); 2786 2787 function i(e) { 2788 (0, o.default)(this, i), this.localOffset = parseInt(e || 0) 2789 } 2790 t.default = r, e.exports = t.default 2791}, function(e, t, r) { 2792 "use strict"; 2793 var n = r(0); 2794 t.default = void 0; 2795 var o = n(r(1)), 2796 n = n(r(10)), 2797 i = r(2), 2798 n = ((0, n.default)(a, [{ 2799 key: "push", 2800 value: function() { 2801 var r = this, 2802 n = (i = Array.prototype.slice.call(arguments))[0], 2803 o = i[1], 2804 i = i.slice(2); 2805 return new Promise(function(e, t) { 2806 r.queue.push({ 2807 method: n, 2808 thisObject: o, 2809 args: i, 2810 resolve: e, 2811 reject: t 2812 }), r.run() 2813 }) 2814 } 2815 }, { 2816 key: "run", 2817 value: function() { 2818 var e, t, r = this; 2819 this.running || 0 === this.queue.length || (this.running = !0, t = (e = this.queue.shift()).method.apply(e.thisObject, e.args), (0, i.isPromise)(t) ? t.then(e.resolve, e.reject).finally(function() { 2820 r.running = !1, r.run() 2821 }) : (e.resolve(t), this.running = !1, this.run())) 2822 } 2823 }]), a); 2824 2825 function a() { 2826 (0, o.default)(this, a), this.queue = [], this.running = !1 2827 } 2828 t.default = n, e.exports = t.default 2829}, function(e, t, r) { 2830 "use strict"; 2831 t.default = function(n, t) { 2832 return t = t || {}, (0, u.isFingerprintSupported)() ? new Promise(function(r, e) { 2833 (i = document.createElement("iframe")).style.display = "none", a = function(e) { 2834 if (e && e.data && e.origin === n.getIssuerOrigin()) { 2835 try { 2836 var t = JSON.parse(e.data) 2837 } catch (e) { 2838 return 2839 } 2840 if (t) return "FingerprintAvailable" === t.type ? r(t.fingerprint) : void("FingerprintServiceReady" === t.type && e.source.postMessage(JSON.stringify({ 2841 type: "GetFingerprint" 2842 }), e.origin)) 2843 } 2844 }, (0, c.addListener)(window, "message", a), i.src = n.getIssuerOrigin() + "/auth/services/devicefingerprint", document.body.appendChild(i), o = setTimeout(function() { 2845 e(new s.AuthSdkError("Fingerprinting timed out")) 2846 }, t.timeout || 15e3) 2847 }).finally(function() { 2848 clearTimeout(o), (0, c.removeListener)(window, "message", a), document.body.contains(i) && i.parentElement.removeChild(i) 2849 }) : Promise.reject(new s.AuthSdkError("Fingerprinting is not supported on this device")); 2850 var o, i, a 2851 }; 2852 var s = r(58), 2853 u = r(26), 2854 c = r(17); 2855 e.exports = t.default 2856}, function(e, t, r) { 2857 "use strict"; 2858 var n = r(0);
vendor: 1,705 bytes, lines 2859-2915
2859 Object.defineProperty(t, "AuthApiError", { 2860 enumerable: !0, 2861 get: function() { 2862 return o.default 2863 } 2864 }), Object.defineProperty(t, "AuthPollStopError", { 2865 enumerable: !0, 2866 get: function() { 2867 return i.default 2868 } 2869 }), Object.defineProperty(t, "AuthSdkError", { 2870 enumerable: !0, 2871 get: function() { 2872 return a.default 2873 } 2874 }), Object.defineProperty(t, "OAuthError", { 2875 enumerable: !0, 2876 get: function() { 2877 return s.default 2878 } 2879 }); 2880 var o = n(r(23)), 2881 i = n(r(25)), 2882 a = n(r(3)), 2883 s = n(r(28)) 2884}, function(e, t) { 2885 function r() {} 2886 r.prototype = { 2887 on: function(e, t, r) { 2888 var n = this.e || (this.e = {}); 2889 return (n[e] || (n[e] = [])).push({ 2890 fn: t, 2891 ctx: r 2892 }), this 2893 }, 2894 once: function(e, t, r) { 2895 var n = this; 2896 2897 function o() { 2898 n.off(e, o), t.apply(r, arguments) 2899 } 2900 return o._ = t, this.on(e, o, r) 2901 }, 2902 emit: function(e) { 2903 for (var t = [].slice.call(arguments, 1), r = ((this.e || (this.e = {}))[e] || []).slice(), n = 0, o = r.length; n < o; n++) r[n].fn.apply(r[n].ctx, t); 2904 return this 2905 }, 2906 off: function(e, t) { 2907 var r = this.e || (this.e = {}), 2908 n = r[e], 2909 o = []; 2910 if (n && t) 2911 for (var i = 0, a = n.length; i < a; i++) n[i].fn !== t && n[i].fn._ !== t && o.push(n[i]); 2912 return o.length ? r[e] = o : delete r[e], this 2913 } 2914 }, e.exports = r 2915}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.