@everymatrix/casino-challenge-details 0.6.9 → 0.6.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/dist/casino-challenge-details/casino-challenge-details-9465f599.js +7 -0
  2. package/dist/casino-challenge-details/casino-challenge-details.esm.js +1 -1
  3. package/dist/casino-challenge-details/casino-challenge-details_4.entry.js +1 -1
  4. package/dist/casino-challenge-details/index-30adf0cb.js +2 -0
  5. package/dist/casino-challenge-details/index.esm.js +1 -1
  6. package/dist/cjs/{casino-challenge-details-ffaca965.js → casino-challenge-details-774d82cd.js} +1069 -4
  7. package/dist/cjs/casino-challenge-details.cjs.js +2 -2
  8. package/dist/cjs/casino-challenge-details_4.cjs.entry.js +4 -4
  9. package/dist/cjs/{index-1b30d7ac.js → index-2a30d71d.js} +2 -69
  10. package/dist/cjs/index.cjs.js +2 -2
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/collection/components/casino-challenge-details/casino-challenge-details.js +23 -13
  13. package/dist/collection/components/components/casino-challenge-progress-bar.js +2 -2
  14. package/dist/esm/{casino-challenge-details-004dcf62.js → casino-challenge-details-9465f599.js} +1069 -4
  15. package/dist/esm/casino-challenge-details.js +3 -3
  16. package/dist/esm/casino-challenge-details_4.entry.js +5 -5
  17. package/dist/esm/{index-662208df.js → index-30adf0cb.js} +2 -69
  18. package/dist/esm/index.js +2 -2
  19. package/dist/esm/loader.js +3 -3
  20. package/dist/types/components/casino-challenge-details/casino-challenge-details.d.ts +4 -0
  21. package/package.json +1 -1
  22. package/dist/casino-challenge-details/casino-challenge-details-004dcf62.js +0 -1
  23. package/dist/casino-challenge-details/index-662208df.js +0 -2
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const index = require('./index-1b30d7ac.js');
3
+ const index = require('./index-2a30d71d.js');
4
4
 
5
5
  /**
6
6
  * @name setClientStyling
@@ -311,6 +311,1054 @@ const titleIconSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53
311
311
 
312
312
  const notificationSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzgzOF8zMTApIj4KPHBhdGggZD0iTTcuNTAwNDYgMTIuOTk5OUM4LjQwNTk1IDEyLjk5OTkgOS4xNjM0MSAxMi4zNTQ0IDkuMzM3MzUgMTEuNUg1LjY2MzU3QzUuODM3NiAxMi4zNTQ0IDYuNTk1MDYgMTIuOTk5OSA3LjUwMDQ2IDEyLjk5OTlaIiBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfODM4XzMxMCkiLz4KPHBhdGggZD0iTTExLjAwNTggNi45OTkxN0MxMS4wMDM3IDYuOTk5MTcgMTEuMDAxNyA2Ljk5OTYzIDEwLjk5OTcgNi45OTk2M0M5LjA3MDM2IDYuOTk5NjMgNy40OTk5NyA1LjQyOTcgNy40OTk5NyAzLjQ5OTlDNy40OTk5NyAyLjk2OTM5IDcuNjIyIDIuNDY3ODkgNy44MzQ0OCAyLjAxNjk0QzcuNzI0NDQgMi4wMDY1IDcuNjEyOTMgMiA3LjQ5OTk3IDJDNS41NjcxMyAyIDQuMDAwMjIgMy41NjY4MiA0LjAwMDIyIDUuNDk5NzNWNi44OTM2MkM0LjAwMDIyIDcuODgzMDUgMy41NjY3NCA4LjgxNzAxIDIuODA2MjYgOS40NTk5NEMyLjU1Mjc3IDkuNjc2NDUgMi40NDAyNiAxMC4wMjE0IDIuNTMxMjUgMTAuMzU3OUMyLjYzNzI3IDEwLjc0OTQgMy4wMjQyMyAxMC45OTk0IDMuNDMwMjUgMTAuOTk5NEgxMS41NjcyQzExLjk5MzIgMTAuOTk5NCAxMi4zOTQ3IDEwLjcyMzQgMTIuNDgxMSAxMC4zMDU5QzEyLjU0ODEgOS45ODI5NCAxMi40MzMyIDkuNjYwNDMgMTIuMTgyNyA5LjQ0OTk2QzExLjQ1NTcgOC44NDA1NCAxMS4wMzUyIDcuOTQ1MDMgMTEuMDA1OCA2Ljk5OTE3WiIgZmlsbD0idXJsKCNwYWludDFfbGluZWFyXzgzOF8zMTApIi8+CjxwYXRoIGQ9Ik0xMy41MDA2IDMuNDk5ODZDMTMuNTAwNiA0Ljg4MDQ3IDEyLjM4MTUgNS45OTk2MyAxMS4wMDA4IDUuOTk5NjNDOS42MjAxNCA1Ljk5OTYzIDguNTAwOTggNC44ODA0NyA4LjUwMDk4IDMuNDk5ODZDOC41MDA5OCAyLjExOTI1IDkuNjIwMTQgMSAxMS4wMDA4IDFDMTIuMzgxNSAxIDEzLjUwMDYgMi4xMTkyNSAxMy41MDA2IDMuNDk5ODZaIiBmaWxsPSIjRDY0MjFFIi8+CjwvZz4KPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl84MzhfMzEwIiB4MT0iNy41MDA0NiIgeTE9IjExLjUiIHgyPSI3LjUwMDQ2IiB5Mj0iMTIuOTk5OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjRUE5MDE4Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0UwQTg0RSIvPgo8L2xpbmVhckdyYWRpZW50Pgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MV9saW5lYXJfODM4XzMxMCIgeDE9IjcuNDk5OTciIHkxPSIyIiB4Mj0iNy40OTk5NyIgeTI9IjEwLjk5OTQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0VBOTAxOCIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNFMEE4NEUiLz4KPC9saW5lYXJHcmFkaWVudD4KPGNsaXBQYXRoIGlkPSJjbGlwMF84MzhfMzEwIj4KPHJlY3Qgd2lkdGg9IjEzIiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41KSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=';
313
313
 
314
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
315
+
316
+ var eventsource = {exports: {}};
317
+
318
+ /** @license
319
+ * eventsource.js
320
+ * Available under MIT License (MIT)
321
+ * https://github.com/Yaffle/EventSource/
322
+ */
323
+
324
+ (function (module, exports) {
325
+ /*jslint indent: 2, vars: true, plusplus: true */
326
+ /*global setTimeout, clearTimeout */
327
+
328
+ (function (global) {
329
+
330
+ var setTimeout = global.setTimeout;
331
+ var clearTimeout = global.clearTimeout;
332
+ var XMLHttpRequest = global.XMLHttpRequest;
333
+ var XDomainRequest = global.XDomainRequest;
334
+ var ActiveXObject = global.ActiveXObject;
335
+ var NativeEventSource = global.EventSource;
336
+
337
+ var document = global.document;
338
+ var Promise = global.Promise;
339
+ var fetch = global.fetch;
340
+ var Response = global.Response;
341
+ var TextDecoder = global.TextDecoder;
342
+ var TextEncoder = global.TextEncoder;
343
+ var AbortController = global.AbortController;
344
+
345
+ if (typeof window !== "undefined" && typeof document !== "undefined" && !("readyState" in document) && document.body == null) { // Firefox 2
346
+ document.readyState = "loading";
347
+ window.addEventListener("load", function (event) {
348
+ document.readyState = "complete";
349
+ }, false);
350
+ }
351
+
352
+ if (XMLHttpRequest == null && ActiveXObject != null) { // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest_in_IE6
353
+ XMLHttpRequest = function () {
354
+ return new ActiveXObject("Microsoft.XMLHTTP");
355
+ };
356
+ }
357
+
358
+ if (Object.create == undefined) {
359
+ Object.create = function (C) {
360
+ function F(){}
361
+ F.prototype = C;
362
+ return new F();
363
+ };
364
+ }
365
+
366
+ if (!Date.now) {
367
+ Date.now = function now() {
368
+ return new Date().getTime();
369
+ };
370
+ }
371
+
372
+ // see #118 (Promise#finally with polyfilled Promise)
373
+ // see #123 (data URLs crash Edge)
374
+ // see #125 (CSP violations)
375
+ // see pull/#138
376
+ // => No way to polyfill Promise#finally
377
+
378
+ if (AbortController == undefined) {
379
+ var originalFetch2 = fetch;
380
+ fetch = function (url, options) {
381
+ var signal = options.signal;
382
+ return originalFetch2(url, {headers: options.headers, credentials: options.credentials, cache: options.cache}).then(function (response) {
383
+ var reader = response.body.getReader();
384
+ signal._reader = reader;
385
+ if (signal._aborted) {
386
+ signal._reader.cancel();
387
+ }
388
+ return {
389
+ status: response.status,
390
+ statusText: response.statusText,
391
+ headers: response.headers,
392
+ body: {
393
+ getReader: function () {
394
+ return reader;
395
+ }
396
+ }
397
+ };
398
+ });
399
+ };
400
+ AbortController = function () {
401
+ this.signal = {
402
+ _reader: null,
403
+ _aborted: false
404
+ };
405
+ this.abort = function () {
406
+ if (this.signal._reader != null) {
407
+ this.signal._reader.cancel();
408
+ }
409
+ this.signal._aborted = true;
410
+ };
411
+ };
412
+ }
413
+
414
+ function TextDecoderPolyfill() {
415
+ this.bitsNeeded = 0;
416
+ this.codePoint = 0;
417
+ }
418
+
419
+ TextDecoderPolyfill.prototype.decode = function (octets) {
420
+ function valid(codePoint, shift, octetsCount) {
421
+ if (octetsCount === 1) {
422
+ return codePoint >= 0x0080 >> shift && codePoint << shift <= 0x07FF;
423
+ }
424
+ if (octetsCount === 2) {
425
+ return codePoint >= 0x0800 >> shift && codePoint << shift <= 0xD7FF || codePoint >= 0xE000 >> shift && codePoint << shift <= 0xFFFF;
426
+ }
427
+ if (octetsCount === 3) {
428
+ return codePoint >= 0x010000 >> shift && codePoint << shift <= 0x10FFFF;
429
+ }
430
+ throw new Error();
431
+ }
432
+ function octetsCount(bitsNeeded, codePoint) {
433
+ if (bitsNeeded === 6 * 1) {
434
+ return codePoint >> 6 > 15 ? 3 : codePoint > 31 ? 2 : 1;
435
+ }
436
+ if (bitsNeeded === 6 * 2) {
437
+ return codePoint > 15 ? 3 : 2;
438
+ }
439
+ if (bitsNeeded === 6 * 3) {
440
+ return 3;
441
+ }
442
+ throw new Error();
443
+ }
444
+ var REPLACER = 0xFFFD;
445
+ var string = "";
446
+ var bitsNeeded = this.bitsNeeded;
447
+ var codePoint = this.codePoint;
448
+ for (var i = 0; i < octets.length; i += 1) {
449
+ var octet = octets[i];
450
+ if (bitsNeeded !== 0) {
451
+ if (octet < 128 || octet > 191 || !valid(codePoint << 6 | octet & 63, bitsNeeded - 6, octetsCount(bitsNeeded, codePoint))) {
452
+ bitsNeeded = 0;
453
+ codePoint = REPLACER;
454
+ string += String.fromCharCode(codePoint);
455
+ }
456
+ }
457
+ if (bitsNeeded === 0) {
458
+ if (octet >= 0 && octet <= 127) {
459
+ bitsNeeded = 0;
460
+ codePoint = octet;
461
+ } else if (octet >= 192 && octet <= 223) {
462
+ bitsNeeded = 6 * 1;
463
+ codePoint = octet & 31;
464
+ } else if (octet >= 224 && octet <= 239) {
465
+ bitsNeeded = 6 * 2;
466
+ codePoint = octet & 15;
467
+ } else if (octet >= 240 && octet <= 247) {
468
+ bitsNeeded = 6 * 3;
469
+ codePoint = octet & 7;
470
+ } else {
471
+ bitsNeeded = 0;
472
+ codePoint = REPLACER;
473
+ }
474
+ if (bitsNeeded !== 0 && !valid(codePoint, bitsNeeded, octetsCount(bitsNeeded, codePoint))) {
475
+ bitsNeeded = 0;
476
+ codePoint = REPLACER;
477
+ }
478
+ } else {
479
+ bitsNeeded -= 6;
480
+ codePoint = codePoint << 6 | octet & 63;
481
+ }
482
+ if (bitsNeeded === 0) {
483
+ if (codePoint <= 0xFFFF) {
484
+ string += String.fromCharCode(codePoint);
485
+ } else {
486
+ string += String.fromCharCode(0xD800 + (codePoint - 0xFFFF - 1 >> 10));
487
+ string += String.fromCharCode(0xDC00 + (codePoint - 0xFFFF - 1 & 0x3FF));
488
+ }
489
+ }
490
+ }
491
+ this.bitsNeeded = bitsNeeded;
492
+ this.codePoint = codePoint;
493
+ return string;
494
+ };
495
+
496
+ // Firefox < 38 throws an error with stream option
497
+ var supportsStreamOption = function () {
498
+ try {
499
+ return new TextDecoder().decode(new TextEncoder().encode("test"), {stream: true}) === "test";
500
+ } catch (error) {
501
+ console.debug("TextDecoder does not support streaming option. Using polyfill instead: " + error);
502
+ }
503
+ return false;
504
+ };
505
+
506
+ // IE, Edge
507
+ if (TextDecoder == undefined || TextEncoder == undefined || !supportsStreamOption()) {
508
+ TextDecoder = TextDecoderPolyfill;
509
+ }
510
+
511
+ var k = function () {
512
+ };
513
+
514
+ function XHRWrapper(xhr) {
515
+ this.withCredentials = false;
516
+ this.readyState = 0;
517
+ this.status = 0;
518
+ this.statusText = "";
519
+ this.responseText = "";
520
+ this.onprogress = k;
521
+ this.onload = k;
522
+ this.onerror = k;
523
+ this.onreadystatechange = k;
524
+ this._contentType = "";
525
+ this._xhr = xhr;
526
+ this._sendTimeout = 0;
527
+ this._abort = k;
528
+ }
529
+
530
+ XHRWrapper.prototype.open = function (method, url) {
531
+ this._abort(true);
532
+
533
+ var that = this;
534
+ var xhr = this._xhr;
535
+ var state = 1;
536
+ var timeout = 0;
537
+
538
+ this._abort = function (silent) {
539
+ if (that._sendTimeout !== 0) {
540
+ clearTimeout(that._sendTimeout);
541
+ that._sendTimeout = 0;
542
+ }
543
+ if (state === 1 || state === 2 || state === 3) {
544
+ state = 4;
545
+ xhr.onload = k;
546
+ xhr.onerror = k;
547
+ xhr.onabort = k;
548
+ xhr.onprogress = k;
549
+ xhr.onreadystatechange = k;
550
+ // IE 8 - 9: XDomainRequest#abort() does not fire any event
551
+ // Opera < 10: XMLHttpRequest#abort() does not fire any event
552
+ xhr.abort();
553
+ if (timeout !== 0) {
554
+ clearTimeout(timeout);
555
+ timeout = 0;
556
+ }
557
+ if (!silent) {
558
+ that.readyState = 4;
559
+ that.onabort(null);
560
+ that.onreadystatechange();
561
+ }
562
+ }
563
+ state = 0;
564
+ };
565
+
566
+ var onStart = function () {
567
+ if (state === 1) {
568
+ //state = 2;
569
+ var status = 0;
570
+ var statusText = "";
571
+ var contentType = undefined;
572
+ if (!("contentType" in xhr)) {
573
+ try {
574
+ status = xhr.status;
575
+ statusText = xhr.statusText;
576
+ contentType = xhr.getResponseHeader("Content-Type");
577
+ } catch (error) {
578
+ // IE < 10 throws exception for `xhr.status` when xhr.readyState === 2 || xhr.readyState === 3
579
+ // Opera < 11 throws exception for `xhr.status` when xhr.readyState === 2
580
+ // https://bugs.webkit.org/show_bug.cgi?id=29121
581
+ status = 0;
582
+ statusText = "";
583
+ contentType = undefined;
584
+ // Firefox < 14, Chrome ?, Safari ?
585
+ // https://bugs.webkit.org/show_bug.cgi?id=29658
586
+ // https://bugs.webkit.org/show_bug.cgi?id=77854
587
+ }
588
+ } else {
589
+ status = 200;
590
+ statusText = "OK";
591
+ contentType = xhr.contentType;
592
+ }
593
+ if (status !== 0) {
594
+ state = 2;
595
+ that.readyState = 2;
596
+ that.status = status;
597
+ that.statusText = statusText;
598
+ that._contentType = contentType;
599
+ that.onreadystatechange();
600
+ }
601
+ }
602
+ };
603
+ var onProgress = function () {
604
+ onStart();
605
+ if (state === 2 || state === 3) {
606
+ state = 3;
607
+ var responseText = "";
608
+ try {
609
+ responseText = xhr.responseText;
610
+ } catch (error) {
611
+ // IE 8 - 9 with XMLHttpRequest
612
+ }
613
+ that.readyState = 3;
614
+ that.responseText = responseText;
615
+ that.onprogress();
616
+ }
617
+ };
618
+ var onFinish = function (type, event) {
619
+ if (event == null || event.preventDefault == null) {
620
+ event = {
621
+ preventDefault: k
622
+ };
623
+ }
624
+ // Firefox 52 fires "readystatechange" (xhr.readyState === 4) without final "readystatechange" (xhr.readyState === 3)
625
+ // IE 8 fires "onload" without "onprogress"
626
+ onProgress();
627
+ if (state === 1 || state === 2 || state === 3) {
628
+ state = 4;
629
+ if (timeout !== 0) {
630
+ clearTimeout(timeout);
631
+ timeout = 0;
632
+ }
633
+ that.readyState = 4;
634
+ if (type === "load") {
635
+ that.onload(event);
636
+ } else if (type === "error") {
637
+ that.onerror(event);
638
+ } else if (type === "abort") {
639
+ that.onabort(event);
640
+ } else {
641
+ throw new TypeError();
642
+ }
643
+ that.onreadystatechange();
644
+ }
645
+ };
646
+ var onReadyStateChange = function (event) {
647
+ if (xhr != undefined) { // Opera 12
648
+ if (xhr.readyState === 4) {
649
+ if (!("onload" in xhr) || !("onerror" in xhr) || !("onabort" in xhr)) {
650
+ onFinish(xhr.responseText === "" ? "error" : "load", event);
651
+ }
652
+ } else if (xhr.readyState === 3) {
653
+ if (!("onprogress" in xhr)) { // testing XMLHttpRequest#responseText too many times is too slow in IE 11
654
+ // and in Firefox 3.6
655
+ onProgress();
656
+ }
657
+ } else if (xhr.readyState === 2) {
658
+ onStart();
659
+ }
660
+ }
661
+ };
662
+ var onTimeout = function () {
663
+ timeout = setTimeout(function () {
664
+ onTimeout();
665
+ }, 500);
666
+ if (xhr.readyState === 3) {
667
+ onProgress();
668
+ }
669
+ };
670
+
671
+ // XDomainRequest#abort removes onprogress, onerror, onload
672
+ if ("onload" in xhr) {
673
+ xhr.onload = function (event) {
674
+ onFinish("load", event);
675
+ };
676
+ }
677
+ if ("onerror" in xhr) {
678
+ xhr.onerror = function (event) {
679
+ onFinish("error", event);
680
+ };
681
+ }
682
+ // improper fix to match Firefox behaviour, but it is better than just ignore abort
683
+ // see https://bugzilla.mozilla.org/show_bug.cgi?id=768596
684
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=880200
685
+ // https://code.google.com/p/chromium/issues/detail?id=153570
686
+ // IE 8 fires "onload" without "onprogress
687
+ if ("onabort" in xhr) {
688
+ xhr.onabort = function (event) {
689
+ onFinish("abort", event);
690
+ };
691
+ }
692
+
693
+ if ("onprogress" in xhr) {
694
+ xhr.onprogress = onProgress;
695
+ }
696
+
697
+ // IE 8 - 9 (XMLHTTPRequest)
698
+ // Opera < 12
699
+ // Firefox < 3.5
700
+ // Firefox 3.5 - 3.6 - ? < 9.0
701
+ // onprogress is not fired sometimes or delayed
702
+ // see also #64 (significant lag in IE 11)
703
+ if ("onreadystatechange" in xhr) {
704
+ xhr.onreadystatechange = function (event) {
705
+ onReadyStateChange(event);
706
+ };
707
+ }
708
+
709
+ if ("contentType" in xhr || !("ontimeout" in XMLHttpRequest.prototype)) {
710
+ url += (url.indexOf("?") === -1 ? "?" : "&") + "padding=true";
711
+ }
712
+ xhr.open(method, url, true);
713
+
714
+ if ("readyState" in xhr) {
715
+ // workaround for Opera 12 issue with "progress" events
716
+ // #91 (XMLHttpRequest onprogress not fired for streaming response in Edge 14-15-?)
717
+ timeout = setTimeout(function () {
718
+ onTimeout();
719
+ }, 0);
720
+ }
721
+ };
722
+ XHRWrapper.prototype.abort = function () {
723
+ this._abort(false);
724
+ };
725
+ XHRWrapper.prototype.getResponseHeader = function (name) {
726
+ return this._contentType;
727
+ };
728
+ XHRWrapper.prototype.setRequestHeader = function (name, value) {
729
+ var xhr = this._xhr;
730
+ if ("setRequestHeader" in xhr) {
731
+ xhr.setRequestHeader(name, value);
732
+ }
733
+ };
734
+ XHRWrapper.prototype.getAllResponseHeaders = function () {
735
+ // XMLHttpRequest#getAllResponseHeaders returns null for CORS requests in Firefox 3.6.28
736
+ return this._xhr.getAllResponseHeaders != undefined ? this._xhr.getAllResponseHeaders() || "" : "";
737
+ };
738
+ XHRWrapper.prototype.send = function () {
739
+ // loading indicator in Safari < ? (6), Chrome < 14, Firefox
740
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=736723
741
+ if ((!("ontimeout" in XMLHttpRequest.prototype) || (!("sendAsBinary" in XMLHttpRequest.prototype) && !("mozAnon" in XMLHttpRequest.prototype))) &&
742
+ document != undefined &&
743
+ document.readyState != undefined &&
744
+ document.readyState !== "complete") {
745
+ var that = this;
746
+ that._sendTimeout = setTimeout(function () {
747
+ that._sendTimeout = 0;
748
+ that.send();
749
+ }, 4);
750
+ return;
751
+ }
752
+
753
+ var xhr = this._xhr;
754
+ // withCredentials should be set after "open" for Safari and Chrome (< 19 ?)
755
+ if ("withCredentials" in xhr) {
756
+ xhr.withCredentials = this.withCredentials;
757
+ }
758
+ try {
759
+ // xhr.send(); throws "Not enough arguments" in Firefox 3.0
760
+ xhr.send(undefined);
761
+ } catch (error1) {
762
+ // Safari 5.1.7, Opera 12
763
+ throw error1;
764
+ }
765
+ };
766
+
767
+ function toLowerCase(name) {
768
+ return name.replace(/[A-Z]/g, function (c) {
769
+ return String.fromCharCode(c.charCodeAt(0) + 0x20);
770
+ });
771
+ }
772
+
773
+ function HeadersPolyfill(all) {
774
+ // Get headers: implemented according to mozilla's example code: https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getAllResponseHeaders#Example
775
+ var map = Object.create(null);
776
+ var array = all.split("\r\n");
777
+ for (var i = 0; i < array.length; i += 1) {
778
+ var line = array[i];
779
+ var parts = line.split(": ");
780
+ var name = parts.shift();
781
+ var value = parts.join(": ");
782
+ map[toLowerCase(name)] = value;
783
+ }
784
+ this._map = map;
785
+ }
786
+ HeadersPolyfill.prototype.get = function (name) {
787
+ return this._map[toLowerCase(name)];
788
+ };
789
+
790
+ if (XMLHttpRequest != null && XMLHttpRequest.HEADERS_RECEIVED == null) { // IE < 9, Firefox 3.6
791
+ XMLHttpRequest.HEADERS_RECEIVED = 2;
792
+ }
793
+
794
+ function XHRTransport() {
795
+ }
796
+
797
+ XHRTransport.prototype.open = function (xhr, onStartCallback, onProgressCallback, onFinishCallback, url, withCredentials, headers) {
798
+ xhr.open("GET", url);
799
+ var offset = 0;
800
+ xhr.onprogress = function () {
801
+ var responseText = xhr.responseText;
802
+ var chunk = responseText.slice(offset);
803
+ offset += chunk.length;
804
+ onProgressCallback(chunk);
805
+ };
806
+ xhr.onerror = function (event) {
807
+ event.preventDefault();
808
+ onFinishCallback(new Error("NetworkError"));
809
+ };
810
+ xhr.onload = function () {
811
+ onFinishCallback(null);
812
+ };
813
+ xhr.onabort = function () {
814
+ onFinishCallback(null);
815
+ };
816
+ xhr.onreadystatechange = function () {
817
+ if (xhr.readyState === XMLHttpRequest.HEADERS_RECEIVED) {
818
+ var status = xhr.status;
819
+ var statusText = xhr.statusText;
820
+ var contentType = xhr.getResponseHeader("Content-Type");
821
+ var headers = xhr.getAllResponseHeaders();
822
+ onStartCallback(status, statusText, contentType, new HeadersPolyfill(headers));
823
+ }
824
+ };
825
+ xhr.withCredentials = withCredentials;
826
+ for (var name in headers) {
827
+ if (Object.prototype.hasOwnProperty.call(headers, name)) {
828
+ xhr.setRequestHeader(name, headers[name]);
829
+ }
830
+ }
831
+ xhr.send();
832
+ return xhr;
833
+ };
834
+
835
+ function HeadersWrapper(headers) {
836
+ this._headers = headers;
837
+ }
838
+ HeadersWrapper.prototype.get = function (name) {
839
+ return this._headers.get(name);
840
+ };
841
+
842
+ function FetchTransport() {
843
+ }
844
+
845
+ FetchTransport.prototype.open = function (xhr, onStartCallback, onProgressCallback, onFinishCallback, url, withCredentials, headers) {
846
+ var reader = null;
847
+ var controller = new AbortController();
848
+ var signal = controller.signal;
849
+ var textDecoder = new TextDecoder();
850
+ fetch(url, {
851
+ headers: headers,
852
+ credentials: withCredentials ? "include" : "same-origin",
853
+ signal: signal,
854
+ cache: "no-store"
855
+ }).then(function (response) {
856
+ reader = response.body.getReader();
857
+ onStartCallback(response.status, response.statusText, response.headers.get("Content-Type"), new HeadersWrapper(response.headers));
858
+ // see https://github.com/promises-aplus/promises-spec/issues/179
859
+ return new Promise(function (resolve, reject) {
860
+ var readNextChunk = function () {
861
+ reader.read().then(function (result) {
862
+ if (result.done) {
863
+ //Note: bytes in textDecoder are ignored
864
+ resolve(undefined);
865
+ } else {
866
+ var chunk = textDecoder.decode(result.value, {stream: true});
867
+ onProgressCallback(chunk);
868
+ readNextChunk();
869
+ }
870
+ })["catch"](function (error) {
871
+ reject(error);
872
+ });
873
+ };
874
+ readNextChunk();
875
+ });
876
+ })["catch"](function (error) {
877
+ if (error.name === "AbortError") {
878
+ return undefined;
879
+ } else {
880
+ return error;
881
+ }
882
+ }).then(function (error) {
883
+ onFinishCallback(error);
884
+ });
885
+ return {
886
+ abort: function () {
887
+ if (reader != null) {
888
+ reader.cancel(); // https://bugzilla.mozilla.org/show_bug.cgi?id=1583815
889
+ }
890
+ controller.abort();
891
+ }
892
+ };
893
+ };
894
+
895
+ function EventTarget() {
896
+ this._listeners = Object.create(null);
897
+ }
898
+
899
+ function throwError(e) {
900
+ setTimeout(function () {
901
+ throw e;
902
+ }, 0);
903
+ }
904
+
905
+ EventTarget.prototype.dispatchEvent = function (event) {
906
+ event.target = this;
907
+ var typeListeners = this._listeners[event.type];
908
+ if (typeListeners != undefined) {
909
+ var length = typeListeners.length;
910
+ for (var i = 0; i < length; i += 1) {
911
+ var listener = typeListeners[i];
912
+ try {
913
+ if (typeof listener.handleEvent === "function") {
914
+ listener.handleEvent(event);
915
+ } else {
916
+ listener.call(this, event);
917
+ }
918
+ } catch (e) {
919
+ throwError(e);
920
+ }
921
+ }
922
+ }
923
+ };
924
+ EventTarget.prototype.addEventListener = function (type, listener) {
925
+ type = String(type);
926
+ var listeners = this._listeners;
927
+ var typeListeners = listeners[type];
928
+ if (typeListeners == undefined) {
929
+ typeListeners = [];
930
+ listeners[type] = typeListeners;
931
+ }
932
+ var found = false;
933
+ for (var i = 0; i < typeListeners.length; i += 1) {
934
+ if (typeListeners[i] === listener) {
935
+ found = true;
936
+ }
937
+ }
938
+ if (!found) {
939
+ typeListeners.push(listener);
940
+ }
941
+ };
942
+ EventTarget.prototype.removeEventListener = function (type, listener) {
943
+ type = String(type);
944
+ var listeners = this._listeners;
945
+ var typeListeners = listeners[type];
946
+ if (typeListeners != undefined) {
947
+ var filtered = [];
948
+ for (var i = 0; i < typeListeners.length; i += 1) {
949
+ if (typeListeners[i] !== listener) {
950
+ filtered.push(typeListeners[i]);
951
+ }
952
+ }
953
+ if (filtered.length === 0) {
954
+ delete listeners[type];
955
+ } else {
956
+ listeners[type] = filtered;
957
+ }
958
+ }
959
+ };
960
+
961
+ function Event(type) {
962
+ this.type = type;
963
+ this.target = undefined;
964
+ }
965
+
966
+ function MessageEvent(type, options) {
967
+ Event.call(this, type);
968
+ this.data = options.data;
969
+ this.lastEventId = options.lastEventId;
970
+ }
971
+
972
+ MessageEvent.prototype = Object.create(Event.prototype);
973
+
974
+ function ConnectionEvent(type, options) {
975
+ Event.call(this, type);
976
+ this.status = options.status;
977
+ this.statusText = options.statusText;
978
+ this.headers = options.headers;
979
+ }
980
+
981
+ ConnectionEvent.prototype = Object.create(Event.prototype);
982
+
983
+ function ErrorEvent(type, options) {
984
+ Event.call(this, type);
985
+ this.error = options.error;
986
+ }
987
+
988
+ ErrorEvent.prototype = Object.create(Event.prototype);
989
+
990
+ var WAITING = -1;
991
+ var CONNECTING = 0;
992
+ var OPEN = 1;
993
+ var CLOSED = 2;
994
+
995
+ var AFTER_CR = -1;
996
+ var FIELD_START = 0;
997
+ var FIELD = 1;
998
+ var VALUE_START = 2;
999
+ var VALUE = 3;
1000
+
1001
+ var contentTypeRegExp = /^text\/event\-stream(;.*)?$/i;
1002
+
1003
+ var MINIMUM_DURATION = 1000;
1004
+ var MAXIMUM_DURATION = 18000000;
1005
+
1006
+ var parseDuration = function (value, def) {
1007
+ var n = value == null ? def : parseInt(value, 10);
1008
+ if (n !== n) {
1009
+ n = def;
1010
+ }
1011
+ return clampDuration(n);
1012
+ };
1013
+ var clampDuration = function (n) {
1014
+ return Math.min(Math.max(n, MINIMUM_DURATION), MAXIMUM_DURATION);
1015
+ };
1016
+
1017
+ var fire = function (that, f, event) {
1018
+ try {
1019
+ if (typeof f === "function") {
1020
+ f.call(that, event);
1021
+ }
1022
+ } catch (e) {
1023
+ throwError(e);
1024
+ }
1025
+ };
1026
+
1027
+ function EventSourcePolyfill(url, options) {
1028
+ EventTarget.call(this);
1029
+ options = options || {};
1030
+
1031
+ this.onopen = undefined;
1032
+ this.onmessage = undefined;
1033
+ this.onerror = undefined;
1034
+
1035
+ this.url = undefined;
1036
+ this.readyState = undefined;
1037
+ this.withCredentials = undefined;
1038
+ this.headers = undefined;
1039
+
1040
+ this._close = undefined;
1041
+
1042
+ start(this, url, options);
1043
+ }
1044
+
1045
+ function getBestXHRTransport() {
1046
+ return (XMLHttpRequest != undefined && ("withCredentials" in XMLHttpRequest.prototype)) || XDomainRequest == undefined
1047
+ ? new XMLHttpRequest()
1048
+ : new XDomainRequest();
1049
+ }
1050
+
1051
+ var isFetchSupported = fetch != undefined && Response != undefined && "body" in Response.prototype;
1052
+
1053
+ function start(es, url, options) {
1054
+ url = String(url);
1055
+ var withCredentials = Boolean(options.withCredentials);
1056
+ var lastEventIdQueryParameterName = options.lastEventIdQueryParameterName || "lastEventId";
1057
+
1058
+ var initialRetry = clampDuration(1000);
1059
+ var heartbeatTimeout = parseDuration(options.heartbeatTimeout, 45000);
1060
+
1061
+ var lastEventId = "";
1062
+ var retry = initialRetry;
1063
+ var wasActivity = false;
1064
+ var textLength = 0;
1065
+ var headers = options.headers || {};
1066
+ var TransportOption = options.Transport;
1067
+ var xhr = isFetchSupported && TransportOption == undefined ? undefined : new XHRWrapper(TransportOption != undefined ? new TransportOption() : getBestXHRTransport());
1068
+ var transport = TransportOption != null && typeof TransportOption !== "string" ? new TransportOption() : (xhr == undefined ? new FetchTransport() : new XHRTransport());
1069
+ var abortController = undefined;
1070
+ var timeout = 0;
1071
+ var currentState = WAITING;
1072
+ var dataBuffer = "";
1073
+ var lastEventIdBuffer = "";
1074
+ var eventTypeBuffer = "";
1075
+
1076
+ var textBuffer = "";
1077
+ var state = FIELD_START;
1078
+ var fieldStart = 0;
1079
+ var valueStart = 0;
1080
+
1081
+ var onStart = function (status, statusText, contentType, headers) {
1082
+ if (currentState === CONNECTING) {
1083
+ if (status === 200 && contentType != undefined && contentTypeRegExp.test(contentType)) {
1084
+ currentState = OPEN;
1085
+ wasActivity = Date.now();
1086
+ retry = initialRetry;
1087
+ es.readyState = OPEN;
1088
+ var event = new ConnectionEvent("open", {
1089
+ status: status,
1090
+ statusText: statusText,
1091
+ headers: headers
1092
+ });
1093
+ es.dispatchEvent(event);
1094
+ fire(es, es.onopen, event);
1095
+ } else {
1096
+ var message = "";
1097
+ if (status !== 200) {
1098
+ if (statusText) {
1099
+ statusText = statusText.replace(/\s+/g, " ");
1100
+ }
1101
+ message = "EventSource's response has a status " + status + " " + statusText + " that is not 200. Aborting the connection.";
1102
+ } else {
1103
+ message = "EventSource's response has a Content-Type specifying an unsupported type: " + (contentType == undefined ? "-" : contentType.replace(/\s+/g, " ")) + ". Aborting the connection.";
1104
+ }
1105
+ close();
1106
+ var event = new ConnectionEvent("error", {
1107
+ status: status,
1108
+ statusText: statusText,
1109
+ headers: headers
1110
+ });
1111
+ es.dispatchEvent(event);
1112
+ fire(es, es.onerror, event);
1113
+ console.error(message);
1114
+ }
1115
+ }
1116
+ };
1117
+
1118
+ var onProgress = function (textChunk) {
1119
+ if (currentState === OPEN) {
1120
+ var n = -1;
1121
+ for (var i = 0; i < textChunk.length; i += 1) {
1122
+ var c = textChunk.charCodeAt(i);
1123
+ if (c === "\n".charCodeAt(0) || c === "\r".charCodeAt(0)) {
1124
+ n = i;
1125
+ }
1126
+ }
1127
+ var chunk = (n !== -1 ? textBuffer : "") + textChunk.slice(0, n + 1);
1128
+ textBuffer = (n === -1 ? textBuffer : "") + textChunk.slice(n + 1);
1129
+ if (textChunk !== "") {
1130
+ wasActivity = Date.now();
1131
+ textLength += textChunk.length;
1132
+ }
1133
+ for (var position = 0; position < chunk.length; position += 1) {
1134
+ var c = chunk.charCodeAt(position);
1135
+ if (state === AFTER_CR && c === "\n".charCodeAt(0)) {
1136
+ state = FIELD_START;
1137
+ } else {
1138
+ if (state === AFTER_CR) {
1139
+ state = FIELD_START;
1140
+ }
1141
+ if (c === "\r".charCodeAt(0) || c === "\n".charCodeAt(0)) {
1142
+ if (state !== FIELD_START) {
1143
+ if (state === FIELD) {
1144
+ valueStart = position + 1;
1145
+ }
1146
+ var field = chunk.slice(fieldStart, valueStart - 1);
1147
+ var value = chunk.slice(valueStart + (valueStart < position && chunk.charCodeAt(valueStart) === " ".charCodeAt(0) ? 1 : 0), position);
1148
+ if (field === "data") {
1149
+ dataBuffer += "\n";
1150
+ dataBuffer += value;
1151
+ } else if (field === "id") {
1152
+ lastEventIdBuffer = value;
1153
+ } else if (field === "event") {
1154
+ eventTypeBuffer = value;
1155
+ } else if (field === "retry") {
1156
+ initialRetry = parseDuration(value, initialRetry);
1157
+ retry = initialRetry;
1158
+ } else if (field === "heartbeatTimeout") {
1159
+ heartbeatTimeout = parseDuration(value, heartbeatTimeout);
1160
+ if (timeout !== 0) {
1161
+ clearTimeout(timeout);
1162
+ timeout = setTimeout(function () {
1163
+ onTimeout();
1164
+ }, heartbeatTimeout);
1165
+ }
1166
+ }
1167
+ }
1168
+ if (state === FIELD_START) {
1169
+ if (dataBuffer !== "") {
1170
+ lastEventId = lastEventIdBuffer;
1171
+ if (eventTypeBuffer === "") {
1172
+ eventTypeBuffer = "message";
1173
+ }
1174
+ var event = new MessageEvent(eventTypeBuffer, {
1175
+ data: dataBuffer.slice(1),
1176
+ lastEventId: lastEventIdBuffer
1177
+ });
1178
+ es.dispatchEvent(event);
1179
+ if (eventTypeBuffer === "open") {
1180
+ fire(es, es.onopen, event);
1181
+ } else if (eventTypeBuffer === "message") {
1182
+ fire(es, es.onmessage, event);
1183
+ } else if (eventTypeBuffer === "error") {
1184
+ fire(es, es.onerror, event);
1185
+ }
1186
+ if (currentState === CLOSED) {
1187
+ return;
1188
+ }
1189
+ }
1190
+ dataBuffer = "";
1191
+ eventTypeBuffer = "";
1192
+ }
1193
+ state = c === "\r".charCodeAt(0) ? AFTER_CR : FIELD_START;
1194
+ } else {
1195
+ if (state === FIELD_START) {
1196
+ fieldStart = position;
1197
+ state = FIELD;
1198
+ }
1199
+ if (state === FIELD) {
1200
+ if (c === ":".charCodeAt(0)) {
1201
+ valueStart = position + 1;
1202
+ state = VALUE_START;
1203
+ }
1204
+ } else if (state === VALUE_START) {
1205
+ state = VALUE;
1206
+ }
1207
+ }
1208
+ }
1209
+ }
1210
+ }
1211
+ };
1212
+
1213
+ var onFinish = function (error) {
1214
+ if (currentState === OPEN || currentState === CONNECTING) {
1215
+ currentState = WAITING;
1216
+ if (timeout !== 0) {
1217
+ clearTimeout(timeout);
1218
+ timeout = 0;
1219
+ }
1220
+ timeout = setTimeout(function () {
1221
+ onTimeout();
1222
+ }, retry);
1223
+ retry = clampDuration(Math.min(initialRetry * 16, retry * 2));
1224
+
1225
+ es.readyState = CONNECTING;
1226
+ var event = new ErrorEvent("error", {error: error});
1227
+ es.dispatchEvent(event);
1228
+ fire(es, es.onerror, event);
1229
+ if (error != undefined) {
1230
+ console.error(error);
1231
+ }
1232
+ }
1233
+ };
1234
+
1235
+ var close = function () {
1236
+ currentState = CLOSED;
1237
+ if (abortController != undefined) {
1238
+ abortController.abort();
1239
+ abortController = undefined;
1240
+ }
1241
+ if (timeout !== 0) {
1242
+ clearTimeout(timeout);
1243
+ timeout = 0;
1244
+ }
1245
+ es.readyState = CLOSED;
1246
+ };
1247
+
1248
+ var onTimeout = function () {
1249
+ timeout = 0;
1250
+
1251
+ if (currentState !== WAITING) {
1252
+ if (!wasActivity && abortController != undefined) {
1253
+ onFinish(new Error("No activity within " + heartbeatTimeout + " milliseconds." + " " + (currentState === CONNECTING ? "No response received." : textLength + " chars received.") + " " + "Reconnecting."));
1254
+ if (abortController != undefined) {
1255
+ abortController.abort();
1256
+ abortController = undefined;
1257
+ }
1258
+ } else {
1259
+ var nextHeartbeat = Math.max((wasActivity || Date.now()) + heartbeatTimeout - Date.now(), 1);
1260
+ wasActivity = false;
1261
+ timeout = setTimeout(function () {
1262
+ onTimeout();
1263
+ }, nextHeartbeat);
1264
+ }
1265
+ return;
1266
+ }
1267
+
1268
+ wasActivity = false;
1269
+ textLength = 0;
1270
+ timeout = setTimeout(function () {
1271
+ onTimeout();
1272
+ }, heartbeatTimeout);
1273
+
1274
+ currentState = CONNECTING;
1275
+ dataBuffer = "";
1276
+ eventTypeBuffer = "";
1277
+ lastEventIdBuffer = lastEventId;
1278
+ textBuffer = "";
1279
+ fieldStart = 0;
1280
+ valueStart = 0;
1281
+ state = FIELD_START;
1282
+
1283
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=428916
1284
+ // Request header field Last-Event-ID is not allowed by Access-Control-Allow-Headers.
1285
+ var requestURL = url;
1286
+ if (url.slice(0, 5) !== "data:" && url.slice(0, 5) !== "blob:") {
1287
+ if (lastEventId !== "") {
1288
+ // Remove the lastEventId parameter if it's already part of the request URL.
1289
+ var i = url.indexOf("?");
1290
+ requestURL = i === -1 ? url : url.slice(0, i + 1) + url.slice(i + 1).replace(/(?:^|&)([^=&]*)(?:=[^&]*)?/g, function (p, paramName) {
1291
+ return paramName === lastEventIdQueryParameterName ? '' : p;
1292
+ });
1293
+ // Append the current lastEventId to the request URL.
1294
+ requestURL += (url.indexOf("?") === -1 ? "?" : "&") + lastEventIdQueryParameterName +"=" + encodeURIComponent(lastEventId);
1295
+ }
1296
+ }
1297
+ var withCredentials = es.withCredentials;
1298
+ var requestHeaders = {};
1299
+ requestHeaders["Accept"] = "text/event-stream";
1300
+ var headers = es.headers;
1301
+ if (headers != undefined) {
1302
+ for (var name in headers) {
1303
+ if (Object.prototype.hasOwnProperty.call(headers, name)) {
1304
+ requestHeaders[name] = headers[name];
1305
+ }
1306
+ }
1307
+ }
1308
+ try {
1309
+ abortController = transport.open(xhr, onStart, onProgress, onFinish, requestURL, withCredentials, requestHeaders);
1310
+ } catch (error) {
1311
+ close();
1312
+ throw error;
1313
+ }
1314
+ };
1315
+
1316
+ es.url = url;
1317
+ es.readyState = CONNECTING;
1318
+ es.withCredentials = withCredentials;
1319
+ es.headers = headers;
1320
+ es._close = close;
1321
+
1322
+ onTimeout();
1323
+ }
1324
+
1325
+ EventSourcePolyfill.prototype = Object.create(EventTarget.prototype);
1326
+ EventSourcePolyfill.prototype.CONNECTING = CONNECTING;
1327
+ EventSourcePolyfill.prototype.OPEN = OPEN;
1328
+ EventSourcePolyfill.prototype.CLOSED = CLOSED;
1329
+ EventSourcePolyfill.prototype.close = function () {
1330
+ this._close();
1331
+ };
1332
+
1333
+ EventSourcePolyfill.CONNECTING = CONNECTING;
1334
+ EventSourcePolyfill.OPEN = OPEN;
1335
+ EventSourcePolyfill.CLOSED = CLOSED;
1336
+ EventSourcePolyfill.prototype.withCredentials = undefined;
1337
+
1338
+ var R = NativeEventSource;
1339
+ if (XMLHttpRequest != undefined && (NativeEventSource == undefined || !("withCredentials" in NativeEventSource.prototype))) {
1340
+ // Why replace a native EventSource ?
1341
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=444328
1342
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=831392
1343
+ // https://code.google.com/p/chromium/issues/detail?id=260144
1344
+ // https://code.google.com/p/chromium/issues/detail?id=225654
1345
+ // ...
1346
+ R = EventSourcePolyfill;
1347
+ }
1348
+
1349
+ (function (factory) {
1350
+ {
1351
+ var v = factory(exports);
1352
+ if (v !== undefined) module.exports = v;
1353
+ }
1354
+ })(function (exports) {
1355
+ exports.EventSourcePolyfill = EventSourcePolyfill;
1356
+ exports.NativeEventSource = NativeEventSource;
1357
+ exports.EventSource = R;
1358
+ });
1359
+ }(typeof globalThis === 'undefined' ? (typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : commonjsGlobal) : globalThis));
1360
+ }(eventsource, eventsource.exports));
1361
+
314
1362
  var EChallengeLevelTargetType;
315
1363
  (function (EChallengeLevelTargetType) {
316
1364
  EChallengeLevelTargetType[EChallengeLevelTargetType["Accumulative"] = 0] = "Accumulative";
@@ -540,6 +1588,21 @@ const CasinoChallengeDetails = class {
540
1588
  this.challenge = undefined;
541
1589
  this.loading = false;
542
1590
  this.isChallengePaused = false;
1591
+ this.sseConnection = undefined;
1592
+ }
1593
+ connectGameToLiveLobby() {
1594
+ if (EventSource && !this.sseConnection) {
1595
+ const updateUrl = `${this.endpoint}/v1/encoder/challenges/*/update`;
1596
+ this.sseConnection = new eventsource.exports.EventSourcePolyfill(updateUrl);
1597
+ this.sseConnection.addEventListener('message', this.handleEvent);
1598
+ }
1599
+ }
1600
+ disconnectGameFromLiveLobby() {
1601
+ if (this.sseConnection) {
1602
+ this.sseConnection.removeEventListener('message');
1603
+ this.sseConnection.close();
1604
+ this.sseConnection = undefined;
1605
+ }
543
1606
  }
544
1607
  handleEvent(e) {
545
1608
  const { data } = e === null || e === void 0 ? void 0 : e.data;
@@ -662,6 +1725,7 @@ const CasinoChallengeDetails = class {
662
1725
  if (this.translationUrl) {
663
1726
  resolveTranslationUrl(this.translationUrl);
664
1727
  }
1728
+ this.connectGameToLiveLobby();
665
1729
  this.updateTime();
666
1730
  }
667
1731
  componentDidLoad() {
@@ -685,6 +1749,7 @@ const CasinoChallengeDetails = class {
685
1749
  this.stylingSubscription.unsubscribe();
686
1750
  }
687
1751
  clearInterval(this.timerId);
1752
+ this.disconnectGameFromLiveLobby();
688
1753
  window.removeEventListener('resize', this.checkIsMobile);
689
1754
  }
690
1755
  getReward(level) {
@@ -782,7 +1847,7 @@ const CasinoChallengeDetails = class {
782
1847
  getLevelStatus(level, active) {
783
1848
  if (this.isUserAuthorized) {
784
1849
  if (level.ProgressStatus === exports.EChallengeProgressLevelStatus.InProgress && !active)
785
- return (index.h("div", { class: "level__status" }, index.h("span", null, level.ProgressPercentage, "%"), index.h("img", { src: lockSvg, alt: "lock-icon", title: "lock-icon" })));
1850
+ return (index.h("div", { class: "level__status" }, index.h("span", null, Math.floor(level.ProgressPercentage), "%"), index.h("img", { src: lockSvg, alt: "lock-icon", title: "lock-icon" })));
786
1851
  else if (level.ProgressStatus === exports.EChallengeProgressLevelStatus.Closed || !active)
787
1852
  return (index.h("div", { class: "level__status" }, index.h("img", { src: lockSvg, alt: "lock-icon", title: "lock-icon" })));
788
1853
  else if (level.ProgressStatus === exports.EChallengeProgressLevelStatus.Fillup)
@@ -790,7 +1855,7 @@ const CasinoChallengeDetails = class {
790
1855
  else if (level.ProgressStatus === exports.EChallengeProgressLevelStatus.Completed)
791
1856
  return index.h("span", { class: "completed" }, translate('completed', this.language));
792
1857
  else if (level.ProgressStatus === exports.EChallengeProgressLevelStatus.InProgress)
793
- return index.h("span", { class: "level__status in-progress" }, level.ProgressPercentage, "%");
1858
+ return index.h("span", { class: "level__status in-progress" }, Math.floor(level.ProgressPercentage), "%");
794
1859
  }
795
1860
  return null;
796
1861
  }
@@ -914,7 +1979,7 @@ const CasinoChallengeDetails = class {
914
1979
  return (((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status) === 4 && (index.h("div", { class: "notification" }, index.h("img", { class: "notification__icon", src: infoCircleSvg }), index.h("span", { class: "notification__message" }, translate('expiredNotification', this.language)))));
915
1980
  }
916
1981
  render() {
917
- return (index.h("div", { key: 'c3c42ef719cd58fea1ece8cef8c137de55c91084', ref: (el) => (this.stylingContainer = el), class: "container" }, this.pageHeader, this.loading ? (index.h("div", { class: "lds-dual-ring" })) : (index.h("div", null, index.h("button", { class: "back-button", onClick: this.goBack }, index.h("img", { class: "back-button__icon", src: backArrowSvg }), this.getBackButtonText()), this.forfeitedNofitication, this.completedNotification, this.expiredNotification, index.h("div", { class: "details" }, this.cardGeneralInfo, index.h("div", { class: "details__tabs-container" }, this.challengeTabs, this.activeTabIndex === 0 && this.levelsTab, this.activeTabIndex === 1 && this.gamesTab, this.activeTabIndex === 2 && this.rulesTab), this.footer)))));
1982
+ return (index.h("div", { key: '5500fa3f776e2357796ad51523f96c389ccdb810', ref: (el) => (this.stylingContainer = el), class: "container" }, this.pageHeader, this.loading ? (index.h("div", { class: "lds-dual-ring" })) : (index.h("div", null, index.h("button", { class: "back-button", onClick: this.goBack }, index.h("img", { class: "back-button__icon", src: backArrowSvg }), this.getBackButtonText()), this.forfeitedNofitication, this.completedNotification, this.expiredNotification, index.h("div", { class: "details" }, this.cardGeneralInfo, index.h("div", { class: "details__tabs-container" }, this.challengeTabs, this.activeTabIndex === 0 && this.levelsTab, this.activeTabIndex === 1 && this.gamesTab, this.activeTabIndex === 2 && this.rulesTab), this.footer)))));
918
1983
  }
919
1984
  static get watchers() { return {
920
1985
  "clientStyling": ["handleClientStylingChange"],