@forward-widget/danmu-universe 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -464,6 +464,262 @@ var __webpack_modules__ = {
464
464
  }(), i;
465
465
  });
466
466
  },
467
+ 129: function(e, t, n) {
468
+ !function(r, i, o) {
469
+ e.exports = t = i(n(95), n(716), n(478), n(516), n(947));
470
+ }(0, function(e) {
471
+ return !function() {
472
+ var t = e, n = t.lib.BlockCipher, r = t.algo, i = [], o = [], s = [], a = [], u = [], l = [], c = [], d = [], f = [], p = [];
473
+ !function() {
474
+ for(var e = [], t = 0; t < 256; t++)t < 128 ? e[t] = t << 1 : e[t] = t << 1 ^ 0x11b;
475
+ for(var n = 0, r = 0, t = 0; t < 256; t++){
476
+ var h = r ^ r << 1 ^ r << 2 ^ r << 3 ^ r << 4;
477
+ h = h >>> 8 ^ 0xff & h ^ 0x63, i[n] = h, o[h] = n;
478
+ var m = e[n], g = e[m], v = e[g], y = 0x101 * e[h] ^ 0x1010100 * h;
479
+ s[n] = y << 24 | y >>> 8, a[n] = y << 16 | y >>> 16, u[n] = y << 8 | y >>> 24, l[n] = y;
480
+ var y = 0x1010101 * v ^ 0x10001 * g ^ 0x101 * m ^ 0x1010100 * n;
481
+ c[h] = y << 24 | y >>> 8, d[h] = y << 16 | y >>> 16, f[h] = y << 8 | y >>> 24, p[h] = y, n ? (n = m ^ e[e[e[v ^ m]]], r ^= e[e[r]]) : n = r = 1;
482
+ }
483
+ }();
484
+ var h = [
485
+ 0x00,
486
+ 0x01,
487
+ 0x02,
488
+ 0x04,
489
+ 0x08,
490
+ 0x10,
491
+ 0x20,
492
+ 0x40,
493
+ 0x80,
494
+ 0x1b,
495
+ 0x36
496
+ ], m = r.AES = n.extend({
497
+ _doReset: function() {
498
+ if (!this._nRounds || this._keyPriorReset !== this._key) {
499
+ for(var e, t = this._keyPriorReset = this._key, n = t.words, r = t.sigBytes / 4, o = this._nRounds = r + 6, s = (o + 1) * 4, a = this._keySchedule = [], u = 0; u < s; u++)u < r ? a[u] = n[u] : (e = a[u - 1], u % r ? r > 6 && u % r == 4 && (e = i[e >>> 24] << 24 | i[e >>> 16 & 0xff] << 16 | i[e >>> 8 & 0xff] << 8 | i[0xff & e]) : e = (i[(e = e << 8 | e >>> 24) >>> 24] << 24 | i[e >>> 16 & 0xff] << 16 | i[e >>> 8 & 0xff] << 8 | i[0xff & e]) ^ h[u / r | 0] << 24, a[u] = a[u - r] ^ e);
500
+ for(var l = this._invKeySchedule = [], m = 0; m < s; m++){
501
+ var u = s - m;
502
+ if (m % 4) var e = a[u];
503
+ else var e = a[u - 4];
504
+ m < 4 || u <= 4 ? l[m] = e : l[m] = c[i[e >>> 24]] ^ d[i[e >>> 16 & 0xff]] ^ f[i[e >>> 8 & 0xff]] ^ p[i[0xff & e]];
505
+ }
506
+ }
507
+ },
508
+ encryptBlock: function(e, t) {
509
+ this._doCryptBlock(e, t, this._keySchedule, s, a, u, l, i);
510
+ },
511
+ decryptBlock: function(e, t) {
512
+ var n = e[t + 1];
513
+ e[t + 1] = e[t + 3], e[t + 3] = n, this._doCryptBlock(e, t, this._invKeySchedule, c, d, f, p, o);
514
+ var n = e[t + 1];
515
+ e[t + 1] = e[t + 3], e[t + 3] = n;
516
+ },
517
+ _doCryptBlock: function(e, t, n, r, i, o, s, a) {
518
+ for(var u = this._nRounds, l = e[t] ^ n[0], c = e[t + 1] ^ n[1], d = e[t + 2] ^ n[2], f = e[t + 3] ^ n[3], p = 4, h = 1; h < u; h++){
519
+ var m = r[l >>> 24] ^ i[c >>> 16 & 0xff] ^ o[d >>> 8 & 0xff] ^ s[0xff & f] ^ n[p++], g = r[c >>> 24] ^ i[d >>> 16 & 0xff] ^ o[f >>> 8 & 0xff] ^ s[0xff & l] ^ n[p++], v = r[d >>> 24] ^ i[f >>> 16 & 0xff] ^ o[l >>> 8 & 0xff] ^ s[0xff & c] ^ n[p++], y = r[f >>> 24] ^ i[l >>> 16 & 0xff] ^ o[c >>> 8 & 0xff] ^ s[0xff & d] ^ n[p++];
520
+ l = m, c = g, d = v, f = y;
521
+ }
522
+ var m = (a[l >>> 24] << 24 | a[c >>> 16 & 0xff] << 16 | a[d >>> 8 & 0xff] << 8 | a[0xff & f]) ^ n[p++], g = (a[c >>> 24] << 24 | a[d >>> 16 & 0xff] << 16 | a[f >>> 8 & 0xff] << 8 | a[0xff & l]) ^ n[p++], v = (a[d >>> 24] << 24 | a[f >>> 16 & 0xff] << 16 | a[l >>> 8 & 0xff] << 8 | a[0xff & c]) ^ n[p++], y = (a[f >>> 24] << 24 | a[l >>> 16 & 0xff] << 16 | a[c >>> 8 & 0xff] << 8 | a[0xff & d]) ^ n[p++];
523
+ e[t] = m, e[t + 1] = g, e[t + 2] = v, e[t + 3] = y;
524
+ },
525
+ keySize: 8
526
+ });
527
+ t.AES = n._createHelper(m);
528
+ }(), e.AES;
529
+ });
530
+ },
531
+ 947: function(e, t, n) {
532
+ !function(r, i, o) {
533
+ e.exports = t = i(n(95), n(516));
534
+ }(0, function(e) {
535
+ e.lib.Cipher || function() {
536
+ var t = e, n = t.lib, r = n.Base, i = n.WordArray, o = n.BufferedBlockAlgorithm, s = t.enc;
537
+ s.Utf8;
538
+ var a = s.Base64, u = t.algo.EvpKDF, l = n.Cipher = o.extend({
539
+ cfg: r.extend(),
540
+ createEncryptor: function(e, t) {
541
+ return this.create(this._ENC_XFORM_MODE, e, t);
542
+ },
543
+ createDecryptor: function(e, t) {
544
+ return this.create(this._DEC_XFORM_MODE, e, t);
545
+ },
546
+ init: function(e, t, n) {
547
+ this.cfg = this.cfg.extend(n), this._xformMode = e, this._key = t, this.reset();
548
+ },
549
+ reset: function() {
550
+ o.reset.call(this), this._doReset();
551
+ },
552
+ process: function(e) {
553
+ return this._append(e), this._process();
554
+ },
555
+ finalize: function(e) {
556
+ return e && this._append(e), this._doFinalize();
557
+ },
558
+ keySize: 4,
559
+ ivSize: 4,
560
+ _ENC_XFORM_MODE: 1,
561
+ _DEC_XFORM_MODE: 2,
562
+ _createHelper: function() {
563
+ function e(e) {
564
+ return 'string' == typeof e ? y : g;
565
+ }
566
+ return function(t) {
567
+ return {
568
+ encrypt: function(n, r, i) {
569
+ return e(r).encrypt(t, n, r, i);
570
+ },
571
+ decrypt: function(n, r, i) {
572
+ return e(r).decrypt(t, n, r, i);
573
+ }
574
+ };
575
+ };
576
+ }()
577
+ });
578
+ n.StreamCipher = l.extend({
579
+ _doFinalize: function() {
580
+ return this._process(!0);
581
+ },
582
+ blockSize: 1
583
+ });
584
+ var c = t.mode = {}, d = n.BlockCipherMode = r.extend({
585
+ createEncryptor: function(e, t) {
586
+ return this.Encryptor.create(e, t);
587
+ },
588
+ createDecryptor: function(e, t) {
589
+ return this.Decryptor.create(e, t);
590
+ },
591
+ init: function(e, t) {
592
+ this._cipher = e, this._iv = t;
593
+ }
594
+ }), f = c.CBC = function() {
595
+ var e = d.extend();
596
+ function t(e, t, n) {
597
+ var r, i = this._iv;
598
+ i ? (r = i, this._iv = void 0) : r = this._prevBlock;
599
+ for(var o = 0; o < n; o++)e[t + o] ^= r[o];
600
+ }
601
+ return e.Encryptor = e.extend({
602
+ processBlock: function(e, n) {
603
+ var r = this._cipher, i = r.blockSize;
604
+ t.call(this, e, n, i), r.encryptBlock(e, n), this._prevBlock = e.slice(n, n + i);
605
+ }
606
+ }), e.Decryptor = e.extend({
607
+ processBlock: function(e, n) {
608
+ var r = this._cipher, i = r.blockSize, o = e.slice(n, n + i);
609
+ r.decryptBlock(e, n), t.call(this, e, n, i), this._prevBlock = o;
610
+ }
611
+ }), e;
612
+ }(), p = (t.pad = {}).Pkcs7 = {
613
+ pad: function(e, t) {
614
+ for(var n = 4 * t, r = n - e.sigBytes % n, o = r << 24 | r << 16 | r << 8 | r, s = [], a = 0; a < r; a += 4)s.push(o);
615
+ var u = i.create(s, r);
616
+ e.concat(u);
617
+ },
618
+ unpad: function(e) {
619
+ var t = 0xff & e.words[e.sigBytes - 1 >>> 2];
620
+ e.sigBytes -= t;
621
+ }
622
+ };
623
+ n.BlockCipher = l.extend({
624
+ cfg: l.cfg.extend({
625
+ mode: f,
626
+ padding: p
627
+ }),
628
+ reset: function() {
629
+ l.reset.call(this);
630
+ var e, t = this.cfg, n = t.iv, r = t.mode;
631
+ this._xformMode == this._ENC_XFORM_MODE ? e = r.createEncryptor : (e = r.createDecryptor, this._minBufferSize = 1), this._mode && this._mode.__creator == e ? this._mode.init(this, n && n.words) : (this._mode = e.call(r, this, n && n.words), this._mode.__creator = e);
632
+ },
633
+ _doProcessBlock: function(e, t) {
634
+ this._mode.processBlock(e, t);
635
+ },
636
+ _doFinalize: function() {
637
+ var e, t = this.cfg.padding;
638
+ return this._xformMode == this._ENC_XFORM_MODE ? (t.pad(this._data, this.blockSize), e = this._process(!0)) : (e = this._process(!0), t.unpad(e)), e;
639
+ },
640
+ blockSize: 4
641
+ });
642
+ var h = n.CipherParams = r.extend({
643
+ init: function(e) {
644
+ this.mixIn(e);
645
+ },
646
+ toString: function(e) {
647
+ return (e || this.formatter).stringify(this);
648
+ }
649
+ }), m = (t.format = {}).OpenSSL = {
650
+ stringify: function(e) {
651
+ var t, n = e.ciphertext, r = e.salt;
652
+ return (t = r ? i.create([
653
+ 0x53616c74,
654
+ 0x65645f5f
655
+ ]).concat(r).concat(n) : n).toString(a);
656
+ },
657
+ parse: function(e) {
658
+ var t, n = a.parse(e), r = n.words;
659
+ return 0x53616c74 == r[0] && 0x65645f5f == r[1] && (t = i.create(r.slice(2, 4)), r.splice(0, 4), n.sigBytes -= 16), h.create({
660
+ ciphertext: n,
661
+ salt: t
662
+ });
663
+ }
664
+ }, g = n.SerializableCipher = r.extend({
665
+ cfg: r.extend({
666
+ format: m
667
+ }),
668
+ encrypt: function(e, t, n, r) {
669
+ r = this.cfg.extend(r);
670
+ var i = e.createEncryptor(n, r), o = i.finalize(t), s = i.cfg;
671
+ return h.create({
672
+ ciphertext: o,
673
+ key: n,
674
+ iv: s.iv,
675
+ algorithm: e,
676
+ mode: s.mode,
677
+ padding: s.padding,
678
+ blockSize: e.blockSize,
679
+ formatter: r.format
680
+ });
681
+ },
682
+ decrypt: function(e, t, n, r) {
683
+ return r = this.cfg.extend(r), t = this._parse(t, r.format), e.createDecryptor(n, r).finalize(t.ciphertext);
684
+ },
685
+ _parse: function(e, t) {
686
+ return 'string' == typeof e ? t.parse(e, this) : e;
687
+ }
688
+ }), v = (t.kdf = {}).OpenSSL = {
689
+ execute: function(e, t, n, r, o) {
690
+ if (r || (r = i.random(8)), o) var s = u.create({
691
+ keySize: t + n,
692
+ hasher: o
693
+ }).compute(e, r);
694
+ else var s = u.create({
695
+ keySize: t + n
696
+ }).compute(e, r);
697
+ var a = i.create(s.words.slice(t), 4 * n);
698
+ return s.sigBytes = 4 * t, h.create({
699
+ key: s,
700
+ iv: a,
701
+ salt: r
702
+ });
703
+ }
704
+ }, y = n.PasswordBasedCipher = g.extend({
705
+ cfg: g.cfg.extend({
706
+ kdf: v
707
+ }),
708
+ encrypt: function(e, t, n, r) {
709
+ var i = (r = this.cfg.extend(r)).kdf.execute(n, e.keySize, e.ivSize, r.salt, r.hasher);
710
+ r.iv = i.iv;
711
+ var o = g.encrypt.call(this, e, t, i.key, r);
712
+ return o.mixIn(i), o;
713
+ },
714
+ decrypt: function(e, t, n, r) {
715
+ r = this.cfg.extend(r), t = this._parse(t, r.format);
716
+ var i = r.kdf.execute(n, e.keySize, e.ivSize, t.salt, r.hasher);
717
+ return r.iv = i.iv, g.decrypt.call(this, e, t, i.key, r);
718
+ }
719
+ });
720
+ }();
721
+ });
722
+ },
467
723
  95: function(e, t, n) {
468
724
  !function(n, r) {
469
725
  e.exports = t = r();
@@ -514,7 +770,7 @@ var __webpack_modules__ = {
514
770
  e = this.words = e || [], t != n ? this.sigBytes = n : this.sigBytes = 4 * e.length;
515
771
  },
516
772
  toString: function(e) {
517
- return (e || f).stringify(this);
773
+ return (e || d).stringify(this);
518
774
  },
519
775
  concat: function(e) {
520
776
  var t = this.words, n = e.words, r = this.sigBytes, i = e.sigBytes;
@@ -537,7 +793,7 @@ var __webpack_modules__ = {
537
793
  for(var t = [], n = 0; n < e; n += 4)t.push(i());
538
794
  return new l.init(t, e);
539
795
  }
540
- }), c = s.enc = {}, f = c.Hex = {
796
+ }), c = s.enc = {}, d = c.Hex = {
541
797
  stringify: function(e) {
542
798
  for(var t = e.words, n = e.sigBytes, r = [], i = 0; i < n; i++){
543
799
  var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 0xff;
@@ -549,7 +805,7 @@ var __webpack_modules__ = {
549
805
  for(var t = e.length, n = [], r = 0; r < t; r += 2)n[r >>> 3] |= parseInt(e.substr(r, 2), 16) << 24 - r % 8 * 4;
550
806
  return new l.init(n, t / 2);
551
807
  }
552
- }, d = c.Latin1 = {
808
+ }, f = c.Latin1 = {
553
809
  stringify: function(e) {
554
810
  for(var t = e.words, n = e.sigBytes, r = [], i = 0; i < n; i++){
555
811
  var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 0xff;
@@ -564,13 +820,13 @@ var __webpack_modules__ = {
564
820
  }, p = c.Utf8 = {
565
821
  stringify: function(e) {
566
822
  try {
567
- return decodeURIComponent(escape(d.stringify(e)));
823
+ return decodeURIComponent(escape(f.stringify(e)));
568
824
  } catch (e) {
569
825
  throw Error('Malformed UTF-8 data');
570
826
  }
571
827
  },
572
828
  parse: function(e) {
573
- return d.parse(unescape(encodeURIComponent(e)));
829
+ return f.parse(unescape(encodeURIComponent(e)));
574
830
  }
575
831
  }, h = a.BufferedBlockAlgorithm = u.extend({
576
832
  reset: function() {
@@ -582,7 +838,7 @@ var __webpack_modules__ = {
582
838
  _process: function(t) {
583
839
  var n, r = this._data, i = r.words, o = r.sigBytes, s = this.blockSize, a = o / (4 * s), u = (a = t ? e.ceil(a) : e.max((0 | a) - this._minBufferSize, 0)) * s, c = e.min(4 * u, o);
584
840
  if (u) {
585
- for(var f = 0; f < u; f += s)this._doProcessBlock(i, f);
841
+ for(var d = 0; d < u; d += s)this._doProcessBlock(i, d);
586
842
  n = i.splice(0, u), r.sigBytes -= c;
587
843
  }
588
844
  return new l.init(n, c);
@@ -672,6 +928,71 @@ var __webpack_modules__ = {
672
928
  return e.enc.Utf8;
673
929
  });
674
930
  },
931
+ 516: function(e, t, n) {
932
+ !function(r, i, o) {
933
+ e.exports = t = i(n(95), n(825), n(979));
934
+ }(0, function(e) {
935
+ return !function() {
936
+ var t = e, n = t.lib, r = n.Base, i = n.WordArray, o = t.algo, s = o.MD5, a = o.EvpKDF = r.extend({
937
+ cfg: r.extend({
938
+ keySize: 4,
939
+ hasher: s,
940
+ iterations: 1
941
+ }),
942
+ init: function(e) {
943
+ this.cfg = this.cfg.extend(e);
944
+ },
945
+ compute: function(e, t) {
946
+ for(var n, r = this.cfg, o = r.hasher.create(), s = i.create(), a = s.words, u = r.keySize, l = r.iterations; a.length < u;){
947
+ n && o.update(n), n = o.update(e).finalize(t), o.reset();
948
+ for(var c = 1; c < l; c++)n = o.finalize(n), o.reset();
949
+ s.concat(n);
950
+ }
951
+ return s.sigBytes = 4 * u, s;
952
+ }
953
+ });
954
+ t.EvpKDF = function(e, t, n) {
955
+ return a.create(n).compute(e, t);
956
+ };
957
+ }(), e.EvpKDF;
958
+ });
959
+ },
960
+ 939: function(e, t, n) {
961
+ !function(r, i, o) {
962
+ e.exports = t = i(n(95), n(331), n(979));
963
+ }(0, function(e) {
964
+ return e.HmacSHA256;
965
+ });
966
+ },
967
+ 979: function(e, t, n) {
968
+ !function(r, i) {
969
+ e.exports = t = i(n(95));
970
+ }(0, function(e) {
971
+ !function() {
972
+ var t = e, n = t.lib.Base, r = t.enc.Utf8;
973
+ t.algo.HMAC = n.extend({
974
+ init: function(e, t) {
975
+ e = this._hasher = new e.init(), 'string' == typeof t && (t = r.parse(t));
976
+ var n = e.blockSize, i = 4 * n;
977
+ t.sigBytes > i && (t = e.finalize(t)), t.clamp();
978
+ for(var o = this._oKey = t.clone(), s = this._iKey = t.clone(), a = o.words, u = s.words, l = 0; l < n; l++)a[l] ^= 0x5c5c5c5c, u[l] ^= 0x36363636;
979
+ o.sigBytes = s.sigBytes = i, this.reset();
980
+ },
981
+ reset: function() {
982
+ var e = this._hasher;
983
+ e.reset(), e.update(this._iKey);
984
+ },
985
+ update: function(e) {
986
+ return this._hasher.update(e), this;
987
+ },
988
+ finalize: function(e) {
989
+ var t = this._hasher, n = t.finalize(e);
990
+ return t.reset(), t.finalize(this._oKey.clone().concat(n));
991
+ }
992
+ });
993
+ }();
994
+ });
995
+ },
675
996
  478: function(e, t, n) {
676
997
  !function(r, i) {
677
998
  e.exports = t = i(n(95));
@@ -695,8 +1016,8 @@ var __webpack_modules__ = {
695
1016
  var r = t + n, i = e[r];
696
1017
  e[r] = (i << 8 | i >>> 24) & 0x00ff00ff | (i << 24 | i >>> 8) & 0xff00ff00;
697
1018
  }
698
- var o = this._hash.words, s = e[t + 0], u = e[t + 1], p = e[t + 2], h = e[t + 3], m = e[t + 4], g = e[t + 5], y = e[t + 6], v = e[t + 7], b = e[t + 8], _ = e[t + 9], w = e[t + 10], k = e[t + 11], x = e[t + 12], S = e[t + 13], E = e[t + 14], z = e[t + 15], O = o[0], I = o[1], $ = o[2], A = o[3];
699
- O = l(O, I, $, A, s, 7, a[0]), A = l(A, O, I, $, u, 12, a[1]), $ = l($, A, O, I, p, 17, a[2]), I = l(I, $, A, O, h, 22, a[3]), O = l(O, I, $, A, m, 7, a[4]), A = l(A, O, I, $, g, 12, a[5]), $ = l($, A, O, I, y, 17, a[6]), I = l(I, $, A, O, v, 22, a[7]), O = l(O, I, $, A, b, 7, a[8]), A = l(A, O, I, $, _, 12, a[9]), $ = l($, A, O, I, w, 17, a[10]), I = l(I, $, A, O, k, 22, a[11]), O = l(O, I, $, A, x, 7, a[12]), A = l(A, O, I, $, S, 12, a[13]), $ = l($, A, O, I, E, 17, a[14]), I = l(I, $, A, O, z, 22, a[15]), O = c(O, I, $, A, u, 5, a[16]), A = c(A, O, I, $, y, 9, a[17]), $ = c($, A, O, I, k, 14, a[18]), I = c(I, $, A, O, s, 20, a[19]), O = c(O, I, $, A, g, 5, a[20]), A = c(A, O, I, $, w, 9, a[21]), $ = c($, A, O, I, z, 14, a[22]), I = c(I, $, A, O, m, 20, a[23]), O = c(O, I, $, A, _, 5, a[24]), A = c(A, O, I, $, E, 9, a[25]), $ = c($, A, O, I, h, 14, a[26]), I = c(I, $, A, O, b, 20, a[27]), O = c(O, I, $, A, S, 5, a[28]), A = c(A, O, I, $, p, 9, a[29]), $ = c($, A, O, I, v, 14, a[30]), I = c(I, $, A, O, x, 20, a[31]), O = f(O, I, $, A, g, 4, a[32]), A = f(A, O, I, $, b, 11, a[33]), $ = f($, A, O, I, k, 16, a[34]), I = f(I, $, A, O, E, 23, a[35]), O = f(O, I, $, A, u, 4, a[36]), A = f(A, O, I, $, m, 11, a[37]), $ = f($, A, O, I, v, 16, a[38]), I = f(I, $, A, O, w, 23, a[39]), O = f(O, I, $, A, S, 4, a[40]), A = f(A, O, I, $, s, 11, a[41]), $ = f($, A, O, I, h, 16, a[42]), I = f(I, $, A, O, y, 23, a[43]), O = f(O, I, $, A, _, 4, a[44]), A = f(A, O, I, $, x, 11, a[45]), $ = f($, A, O, I, z, 16, a[46]), I = f(I, $, A, O, p, 23, a[47]), O = d(O, I, $, A, s, 6, a[48]), A = d(A, O, I, $, v, 10, a[49]), $ = d($, A, O, I, E, 15, a[50]), I = d(I, $, A, O, g, 21, a[51]), O = d(O, I, $, A, x, 6, a[52]), A = d(A, O, I, $, h, 10, a[53]), $ = d($, A, O, I, w, 15, a[54]), I = d(I, $, A, O, u, 21, a[55]), O = d(O, I, $, A, b, 6, a[56]), A = d(A, O, I, $, z, 10, a[57]), $ = d($, A, O, I, y, 15, a[58]), I = d(I, $, A, O, S, 21, a[59]), O = d(O, I, $, A, m, 6, a[60]), A = d(A, O, I, $, k, 10, a[61]), $ = d($, A, O, I, p, 15, a[62]), I = d(I, $, A, O, _, 21, a[63]), o[0] = o[0] + O | 0, o[1] = o[1] + I | 0, o[2] = o[2] + $ | 0, o[3] = o[3] + A | 0;
1019
+ var o = this._hash.words, s = e[t + 0], u = e[t + 1], p = e[t + 2], h = e[t + 3], m = e[t + 4], g = e[t + 5], v = e[t + 6], y = e[t + 7], b = e[t + 8], _ = e[t + 9], w = e[t + 10], x = e[t + 11], k = e[t + 12], S = e[t + 13], E = e[t + 14], z = e[t + 15], O = o[0], I = o[1], $ = o[2], A = o[3];
1020
+ O = l(O, I, $, A, s, 7, a[0]), A = l(A, O, I, $, u, 12, a[1]), $ = l($, A, O, I, p, 17, a[2]), I = l(I, $, A, O, h, 22, a[3]), O = l(O, I, $, A, m, 7, a[4]), A = l(A, O, I, $, g, 12, a[5]), $ = l($, A, O, I, v, 17, a[6]), I = l(I, $, A, O, y, 22, a[7]), O = l(O, I, $, A, b, 7, a[8]), A = l(A, O, I, $, _, 12, a[9]), $ = l($, A, O, I, w, 17, a[10]), I = l(I, $, A, O, x, 22, a[11]), O = l(O, I, $, A, k, 7, a[12]), A = l(A, O, I, $, S, 12, a[13]), $ = l($, A, O, I, E, 17, a[14]), I = l(I, $, A, O, z, 22, a[15]), O = c(O, I, $, A, u, 5, a[16]), A = c(A, O, I, $, v, 9, a[17]), $ = c($, A, O, I, x, 14, a[18]), I = c(I, $, A, O, s, 20, a[19]), O = c(O, I, $, A, g, 5, a[20]), A = c(A, O, I, $, w, 9, a[21]), $ = c($, A, O, I, z, 14, a[22]), I = c(I, $, A, O, m, 20, a[23]), O = c(O, I, $, A, _, 5, a[24]), A = c(A, O, I, $, E, 9, a[25]), $ = c($, A, O, I, h, 14, a[26]), I = c(I, $, A, O, b, 20, a[27]), O = c(O, I, $, A, S, 5, a[28]), A = c(A, O, I, $, p, 9, a[29]), $ = c($, A, O, I, y, 14, a[30]), I = c(I, $, A, O, k, 20, a[31]), O = d(O, I, $, A, g, 4, a[32]), A = d(A, O, I, $, b, 11, a[33]), $ = d($, A, O, I, x, 16, a[34]), I = d(I, $, A, O, E, 23, a[35]), O = d(O, I, $, A, u, 4, a[36]), A = d(A, O, I, $, m, 11, a[37]), $ = d($, A, O, I, y, 16, a[38]), I = d(I, $, A, O, w, 23, a[39]), O = d(O, I, $, A, S, 4, a[40]), A = d(A, O, I, $, s, 11, a[41]), $ = d($, A, O, I, h, 16, a[42]), I = d(I, $, A, O, v, 23, a[43]), O = d(O, I, $, A, _, 4, a[44]), A = d(A, O, I, $, k, 11, a[45]), $ = d($, A, O, I, z, 16, a[46]), I = d(I, $, A, O, p, 23, a[47]), O = f(O, I, $, A, s, 6, a[48]), A = f(A, O, I, $, y, 10, a[49]), $ = f($, A, O, I, E, 15, a[50]), I = f(I, $, A, O, g, 21, a[51]), O = f(O, I, $, A, k, 6, a[52]), A = f(A, O, I, $, h, 10, a[53]), $ = f($, A, O, I, w, 15, a[54]), I = f(I, $, A, O, u, 21, a[55]), O = f(O, I, $, A, b, 6, a[56]), A = f(A, O, I, $, z, 10, a[57]), $ = f($, A, O, I, v, 15, a[58]), I = f(I, $, A, O, S, 21, a[59]), O = f(O, I, $, A, m, 6, a[60]), A = f(A, O, I, $, x, 10, a[61]), $ = f($, A, O, I, p, 15, a[62]), I = f(I, $, A, O, _, 21, a[63]), o[0] = o[0] + O | 0, o[1] = o[1] + I | 0, o[2] = o[2] + $ | 0, o[3] = o[3] + A | 0;
700
1021
  },
701
1022
  _doFinalize: function() {
702
1023
  var e = this._data, n = e.words, r = 8 * this._nDataBytes, i = 8 * e.sigBytes;
@@ -722,11 +1043,11 @@ var __webpack_modules__ = {
722
1043
  var a = e + (t & r | n & ~r) + i + s;
723
1044
  return (a << o | a >>> 32 - o) + t;
724
1045
  }
725
- function f(e, t, n, r, i, o, s) {
1046
+ function d(e, t, n, r, i, o, s) {
726
1047
  var a = e + (t ^ n ^ r) + i + s;
727
1048
  return (a << o | a >>> 32 - o) + t;
728
1049
  }
729
- function d(e, t, n, r, i, o, s) {
1050
+ function f(e, t, n, r, i, o, s) {
730
1051
  var a = e + (n ^ (t | ~r)) + i + s;
731
1052
  return (a << o | a >>> 32 - o) + t;
732
1053
  }
@@ -734,6 +1055,116 @@ var __webpack_modules__ = {
734
1055
  }(Math), e.MD5;
735
1056
  });
736
1057
  },
1058
+ 760: function(e, t, n) {
1059
+ !function(r, i, o) {
1060
+ e.exports = t = i(n(95), n(947));
1061
+ }(0, function(e) {
1062
+ return e.mode.ECB = function() {
1063
+ var t = e.lib.BlockCipherMode.extend();
1064
+ return t.Encryptor = t.extend({
1065
+ processBlock: function(e, t) {
1066
+ this._cipher.encryptBlock(e, t);
1067
+ }
1068
+ }), t.Decryptor = t.extend({
1069
+ processBlock: function(e, t) {
1070
+ this._cipher.decryptBlock(e, t);
1071
+ }
1072
+ }), t;
1073
+ }(), e.mode.ECB;
1074
+ });
1075
+ },
1076
+ 186: function(e, t, n) {
1077
+ !function(r, i, o) {
1078
+ e.exports = t = i(n(95), n(947));
1079
+ }(0, function(e) {
1080
+ return e.pad.Pkcs7;
1081
+ });
1082
+ },
1083
+ 825: function(e, t, n) {
1084
+ !function(r, i) {
1085
+ e.exports = t = i(n(95));
1086
+ }(0, function(e) {
1087
+ return !function() {
1088
+ var t = e, n = t.lib, r = n.WordArray, i = n.Hasher, o = t.algo, s = [], a = o.SHA1 = i.extend({
1089
+ _doReset: function() {
1090
+ this._hash = new r.init([
1091
+ 0x67452301,
1092
+ 0xefcdab89,
1093
+ 0x98badcfe,
1094
+ 0x10325476,
1095
+ 0xc3d2e1f0
1096
+ ]);
1097
+ },
1098
+ _doProcessBlock: function(e, t) {
1099
+ for(var n = this._hash.words, r = n[0], i = n[1], o = n[2], a = n[3], u = n[4], l = 0; l < 80; l++){
1100
+ if (l < 16) s[l] = 0 | e[t + l];
1101
+ else {
1102
+ var c = s[l - 3] ^ s[l - 8] ^ s[l - 14] ^ s[l - 16];
1103
+ s[l] = c << 1 | c >>> 31;
1104
+ }
1105
+ var d = (r << 5 | r >>> 27) + u + s[l];
1106
+ l < 20 ? d += (i & o | ~i & a) + 0x5a827999 : l < 40 ? d += (i ^ o ^ a) + 0x6ed9eba1 : l < 60 ? d += (i & o | i & a | o & a) - 0x70e44324 : d += (i ^ o ^ a) - 0x359d3e2a, u = a, a = o, o = i << 30 | i >>> 2, i = r, r = d;
1107
+ }
1108
+ n[0] = n[0] + r | 0, n[1] = n[1] + i | 0, n[2] = n[2] + o | 0, n[3] = n[3] + a | 0, n[4] = n[4] + u | 0;
1109
+ },
1110
+ _doFinalize: function() {
1111
+ var e = this._data, t = e.words, n = 8 * this._nDataBytes, r = 8 * e.sigBytes;
1112
+ return t[r >>> 5] |= 0x80 << 24 - r % 32, t[(r + 64 >>> 9 << 4) + 14] = Math.floor(n / 0x100000000), t[(r + 64 >>> 9 << 4) + 15] = n, e.sigBytes = 4 * t.length, this._process(), this._hash;
1113
+ },
1114
+ clone: function() {
1115
+ var e = i.clone.call(this);
1116
+ return e._hash = this._hash.clone(), e;
1117
+ }
1118
+ });
1119
+ t.SHA1 = i._createHelper(a), t.HmacSHA1 = i._createHmacHelper(a);
1120
+ }(), e.SHA1;
1121
+ });
1122
+ },
1123
+ 331: function(e, t, n) {
1124
+ !function(r, i) {
1125
+ e.exports = t = i(n(95));
1126
+ }(0, function(e) {
1127
+ return !function(t) {
1128
+ var n = e, r = n.lib, i = r.WordArray, o = r.Hasher, s = n.algo, a = [], u = [];
1129
+ !function() {
1130
+ function e(e) {
1131
+ for(var n = t.sqrt(e), r = 2; r <= n; r++)if (!(e % r)) return !1;
1132
+ return !0;
1133
+ }
1134
+ function n(e) {
1135
+ return (e - (0 | e)) * 0x100000000 | 0;
1136
+ }
1137
+ for(var r = 2, i = 0; i < 64;)e(r) && (i < 8 && (a[i] = n(t.pow(r, 0.5))), u[i] = n(t.pow(r, 1 / 3)), i++), r++;
1138
+ }();
1139
+ var l = [], c = s.SHA256 = o.extend({
1140
+ _doReset: function() {
1141
+ this._hash = new i.init(a.slice(0));
1142
+ },
1143
+ _doProcessBlock: function(e, t) {
1144
+ for(var n = this._hash.words, r = n[0], i = n[1], o = n[2], s = n[3], a = n[4], c = n[5], d = n[6], f = n[7], p = 0; p < 64; p++){
1145
+ if (p < 16) l[p] = 0 | e[t + p];
1146
+ else {
1147
+ var h = l[p - 15], m = (h << 25 | h >>> 7) ^ (h << 14 | h >>> 18) ^ h >>> 3, g = l[p - 2], v = (g << 15 | g >>> 17) ^ (g << 13 | g >>> 19) ^ g >>> 10;
1148
+ l[p] = m + l[p - 7] + v + l[p - 16];
1149
+ }
1150
+ var y = a & c ^ ~a & d, b = r & i ^ r & o ^ i & o, _ = (r << 30 | r >>> 2) ^ (r << 19 | r >>> 13) ^ (r << 10 | r >>> 22), w = f + ((a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25)) + y + u[p] + l[p], x = _ + b;
1151
+ f = d, d = c, c = a, a = s + w | 0, s = o, o = i, i = r, r = w + x | 0;
1152
+ }
1153
+ n[0] = n[0] + r | 0, n[1] = n[1] + i | 0, n[2] = n[2] + o | 0, n[3] = n[3] + s | 0, n[4] = n[4] + a | 0, n[5] = n[5] + c | 0, n[6] = n[6] + d | 0, n[7] = n[7] + f | 0;
1154
+ },
1155
+ _doFinalize: function() {
1156
+ var e = this._data, n = e.words, r = 8 * this._nDataBytes, i = 8 * e.sigBytes;
1157
+ return n[i >>> 5] |= 0x80 << 24 - i % 32, n[(i + 64 >>> 9 << 4) + 14] = t.floor(r / 0x100000000), n[(i + 64 >>> 9 << 4) + 15] = r, e.sigBytes = 4 * n.length, this._process(), this._hash;
1158
+ },
1159
+ clone: function() {
1160
+ var e = o.clone.call(this);
1161
+ return e._hash = this._hash.clone(), e;
1162
+ }
1163
+ });
1164
+ n.SHA256 = o._createHelper(c), n.HmacSHA256 = o._createHmacHelper(c);
1165
+ }(Math), e.SHA256;
1166
+ });
1167
+ },
737
1168
  643: function(e, t, n) {
738
1169
  e.exports = n(447);
739
1170
  },
@@ -766,7 +1197,7 @@ var __webpack_modules__ = {
766
1197
  })(e);
767
1198
  } : l;
768
1199
  };
769
- function f() {
1200
+ function d() {
770
1201
  var e = new o(0, 0), t = 0;
771
1202
  if (this.len - this.pos > 4) {
772
1203
  for(; t < 4; ++t)if (e.lo = (e.lo | (127 & this.buf[this.pos]) << 7 * t) >>> 0, this.buf[this.pos++] < 128) return e;
@@ -787,12 +1218,12 @@ var __webpack_modules__ = {
787
1218
  }
788
1219
  throw Error("invalid varint encoding");
789
1220
  }
790
- function d(e, t) {
1221
+ function f(e, t) {
791
1222
  return (e[t - 4] | e[t - 3] << 8 | e[t - 2] << 16 | e[t - 1] << 24) >>> 0;
792
1223
  }
793
1224
  function p() {
794
1225
  if (this.pos + 8 > this.len) throw a(this, 8);
795
- return new o(d(this.buf, this.pos += 4), d(this.buf, this.pos += 4));
1226
+ return new o(f(this.buf, this.pos += 4), f(this.buf, this.pos += 4));
796
1227
  }
797
1228
  u.create = c(), u.prototype._slice = i.Array.prototype.subarray || i.Array.prototype.slice, u.prototype.uint32 = function() {
798
1229
  var e = 4294967295;
@@ -810,10 +1241,10 @@ var __webpack_modules__ = {
810
1241
  return 0 !== this.uint32();
811
1242
  }, u.prototype.fixed32 = function() {
812
1243
  if (this.pos + 4 > this.len) throw a(this, 4);
813
- return d(this.buf, this.pos += 4);
1244
+ return f(this.buf, this.pos += 4);
814
1245
  }, u.prototype.sfixed32 = function() {
815
1246
  if (this.pos + 4 > this.len) throw a(this, 4);
816
- return 0 | d(this.buf, this.pos += 4);
1247
+ return 0 | f(this.buf, this.pos += 4);
817
1248
  }, u.prototype.float = function() {
818
1249
  if (this.pos + 4 > this.len) throw a(this, 4);
819
1250
  var e = i.float.readFloatLE(this.buf, this.pos);
@@ -867,13 +1298,13 @@ var __webpack_modules__ = {
867
1298
  var t = i.Long ? "toLong" : "toNumber";
868
1299
  i.merge(u.prototype, {
869
1300
  int64: function() {
870
- return f.call(this)[t](!1);
1301
+ return d.call(this)[t](!1);
871
1302
  },
872
1303
  uint64: function() {
873
- return f.call(this)[t](!0);
1304
+ return d.call(this)[t](!0);
874
1305
  },
875
1306
  sint64: function() {
876
- return f.call(this).zzDecode()[t](!1);
1307
+ return d.call(this).zzDecode()[t](!1);
877
1308
  },
878
1309
  fixed64: function() {
879
1310
  return p.call(this)[t](!0);
@@ -1090,7 +1521,7 @@ var __webpack_modules__ = {
1090
1521
  };
1091
1522
  },
1092
1523
  114: function(e, t, n) {
1093
- e.exports = f;
1524
+ e.exports = d;
1094
1525
  var r, i = n(837), o = i.LongBits, s = i.base64, a = i.utf8;
1095
1526
  function u(e, t, n) {
1096
1527
  this.fn = e, this.len = t, this.next = void 0, this.val = n;
@@ -1099,16 +1530,16 @@ var __webpack_modules__ = {
1099
1530
  function c(e) {
1100
1531
  this.head = e.head, this.tail = e.tail, this.len = e.len, this.next = e.states;
1101
1532
  }
1102
- function f() {
1533
+ function d() {
1103
1534
  this.len = 0, this.head = new u(l, 0, 0), this.tail = this.head, this.states = null;
1104
1535
  }
1105
- var d = function() {
1536
+ var f = function() {
1106
1537
  return i.Buffer ? function() {
1107
- return (f.create = function() {
1538
+ return (d.create = function() {
1108
1539
  return new r();
1109
1540
  })();
1110
1541
  } : function() {
1111
- return new f();
1542
+ return new d();
1112
1543
  };
1113
1544
  };
1114
1545
  function p(e, t, n) {
@@ -1126,65 +1557,65 @@ var __webpack_modules__ = {
1126
1557
  for(; e.lo > 127;)t[n++] = 127 & e.lo | 128, e.lo = e.lo >>> 7;
1127
1558
  t[n++] = e.lo;
1128
1559
  }
1129
- function y(e, t, n) {
1560
+ function v(e, t, n) {
1130
1561
  t[n] = 255 & e, t[n + 1] = e >>> 8 & 255, t[n + 2] = e >>> 16 & 255, t[n + 3] = e >>> 24;
1131
1562
  }
1132
- f.create = d(), f.alloc = function(e) {
1563
+ d.create = f(), d.alloc = function(e) {
1133
1564
  return new i.Array(e);
1134
- }, i.Array !== Array && (f.alloc = i.pool(f.alloc, i.Array.prototype.subarray)), f.prototype._push = function(e, t, n) {
1565
+ }, i.Array !== Array && (d.alloc = i.pool(d.alloc, i.Array.prototype.subarray)), d.prototype._push = function(e, t, n) {
1135
1566
  return this.tail = this.tail.next = new u(e, t, n), this.len += t, this;
1136
- }, m.prototype = Object.create(u.prototype), m.prototype.fn = h, f.prototype.uint32 = function(e) {
1567
+ }, m.prototype = Object.create(u.prototype), m.prototype.fn = h, d.prototype.uint32 = function(e) {
1137
1568
  return this.len += (this.tail = this.tail.next = new m((e >>>= 0) < 128 ? 1 : e < 16384 ? 2 : e < 2097152 ? 3 : e < 268435456 ? 4 : 5, e)).len, this;
1138
- }, f.prototype.int32 = function(e) {
1569
+ }, d.prototype.int32 = function(e) {
1139
1570
  return e < 0 ? this._push(g, 10, o.fromNumber(e)) : this.uint32(e);
1140
- }, f.prototype.sint32 = function(e) {
1571
+ }, d.prototype.sint32 = function(e) {
1141
1572
  return this.uint32((e << 1 ^ e >> 31) >>> 0);
1142
- }, f.prototype.uint64 = function(e) {
1573
+ }, d.prototype.uint64 = function(e) {
1143
1574
  var t = o.from(e);
1144
1575
  return this._push(g, t.length(), t);
1145
- }, f.prototype.int64 = f.prototype.uint64, f.prototype.sint64 = function(e) {
1576
+ }, d.prototype.int64 = d.prototype.uint64, d.prototype.sint64 = function(e) {
1146
1577
  var t = o.from(e).zzEncode();
1147
1578
  return this._push(g, t.length(), t);
1148
- }, f.prototype.bool = function(e) {
1579
+ }, d.prototype.bool = function(e) {
1149
1580
  return this._push(p, 1, +!!e);
1150
- }, f.prototype.fixed32 = function(e) {
1151
- return this._push(y, 4, e >>> 0);
1152
- }, f.prototype.sfixed32 = f.prototype.fixed32, f.prototype.fixed64 = function(e) {
1581
+ }, d.prototype.fixed32 = function(e) {
1582
+ return this._push(v, 4, e >>> 0);
1583
+ }, d.prototype.sfixed32 = d.prototype.fixed32, d.prototype.fixed64 = function(e) {
1153
1584
  var t = o.from(e);
1154
- return this._push(y, 4, t.lo)._push(y, 4, t.hi);
1155
- }, f.prototype.sfixed64 = f.prototype.fixed64, f.prototype.float = function(e) {
1585
+ return this._push(v, 4, t.lo)._push(v, 4, t.hi);
1586
+ }, d.prototype.sfixed64 = d.prototype.fixed64, d.prototype.float = function(e) {
1156
1587
  return this._push(i.float.writeFloatLE, 4, e);
1157
- }, f.prototype.double = function(e) {
1588
+ }, d.prototype.double = function(e) {
1158
1589
  return this._push(i.float.writeDoubleLE, 8, e);
1159
1590
  };
1160
- var v = i.Array.prototype.set ? function(e, t, n) {
1591
+ var y = i.Array.prototype.set ? function(e, t, n) {
1161
1592
  t.set(e, n);
1162
1593
  } : function(e, t, n) {
1163
1594
  for(var r = 0; r < e.length; ++r)t[n + r] = e[r];
1164
1595
  };
1165
- f.prototype.bytes = function(e) {
1596
+ d.prototype.bytes = function(e) {
1166
1597
  var t = e.length >>> 0;
1167
1598
  if (!t) return this._push(p, 1, 0);
1168
1599
  if (i.isString(e)) {
1169
- var n = f.alloc(t = s.length(e));
1600
+ var n = d.alloc(t = s.length(e));
1170
1601
  s.decode(e, n, 0), e = n;
1171
1602
  }
1172
- return this.uint32(t)._push(v, t, e);
1173
- }, f.prototype.string = function(e) {
1603
+ return this.uint32(t)._push(y, t, e);
1604
+ }, d.prototype.string = function(e) {
1174
1605
  var t = a.length(e);
1175
1606
  return t ? this.uint32(t)._push(a.write, t, e) : this._push(p, 1, 0);
1176
- }, f.prototype.fork = function() {
1607
+ }, d.prototype.fork = function() {
1177
1608
  return this.states = new c(this), this.head = this.tail = new u(l, 0, 0), this.len = 0, this;
1178
- }, f.prototype.reset = function() {
1609
+ }, d.prototype.reset = function() {
1179
1610
  return this.states ? (this.head = this.states.head, this.tail = this.states.tail, this.len = this.states.len, this.states = this.states.next) : (this.head = this.tail = new u(l, 0, 0), this.len = 0), this;
1180
- }, f.prototype.ldelim = function() {
1611
+ }, d.prototype.ldelim = function() {
1181
1612
  var e = this.head, t = this.tail, n = this.len;
1182
1613
  return this.reset().uint32(n), n && (this.tail.next = e.next, this.tail = t, this.len += n), this;
1183
- }, f.prototype.finish = function() {
1614
+ }, d.prototype.finish = function() {
1184
1615
  for(var e = this.head.next, t = this.constructor.alloc(this.len), n = 0; e;)e.fn(e.val, t, n), n += e.len, e = e.next;
1185
1616
  return t;
1186
- }, f._configure = function(e) {
1187
- r = e, f.create = d(), r._configure();
1617
+ }, d._configure = function(e) {
1618
+ r = e, d.create = f(), r._configure();
1188
1619
  };
1189
1620
  },
1190
1621
  491: function(e, t, n) {
@@ -1268,10 +1699,10 @@ var __webpack_modules__ = {
1268
1699
  },
1269
1700
  337: function(e, t, n) {
1270
1701
  var r = n(995), i = n(682), o = /^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/, s = /[\n\r\t]/g, a = /^[A-Za-z][A-Za-z0-9+-.]*:\/\//, u = /:\d+$/, l = /^([a-z][a-z0-9.+-]*:)?(\/\/)?([\\/]+)?([\S\s]*)/i, c = /^[a-zA-Z]:/;
1271
- function f(e) {
1702
+ function d(e) {
1272
1703
  return (e || '').toString().replace(o, '');
1273
1704
  }
1274
- var d = [
1705
+ var f = [
1275
1706
  [
1276
1707
  '#',
1277
1708
  'hash'
@@ -1318,8 +1749,8 @@ var __webpack_modules__ = {
1318
1749
  };
1319
1750
  function h(e) {
1320
1751
  var t, r, i = (t = 'undefined' != typeof window ? window : void 0 !== n.g ? n.g : 'undefined' != typeof self ? self : {}).location || {}, o = {}, s = typeof (e = e || i);
1321
- if ('blob:' === e.protocol) o = new v(unescape(e.pathname), {});
1322
- else if ('string' === s) for(r in o = new v(e, {}), p)delete o[r];
1752
+ if ('blob:' === e.protocol) o = new y(unescape(e.pathname), {});
1753
+ else if ('string' === s) for(r in o = new y(e, {}), p)delete o[r];
1323
1754
  else if ('object' === s) {
1324
1755
  for(r in e)r in p || (o[r] = e[r]);
1325
1756
  void 0 === o.slashes && (o.slashes = a.test(e.href));
@@ -1330,7 +1761,7 @@ var __webpack_modules__ = {
1330
1761
  return 'file:' === e || 'ftp:' === e || 'http:' === e || 'https:' === e || 'ws:' === e || 'wss:' === e;
1331
1762
  }
1332
1763
  function g(e, t) {
1333
- e = (e = f(e)).replace(s, ''), t = t || {};
1764
+ e = (e = d(e)).replace(s, ''), t = t || {};
1334
1765
  var n, r = l.exec(e), i = r[1] ? r[1].toLowerCase() : '', o = !!r[2], a = !!r[3], u = 0;
1335
1766
  return o ? a ? (n = r[2] + r[3] + r[4], u = r[2].length + r[3].length) : (n = r[2] + r[4], u = r[2].length) : a ? (n = r[3] + r[4], u = r[3].length) : n = r[4], 'file:' === i ? u >= 2 && (n = n.slice(2)) : m(i) ? n = r[4] : i ? o && (n = n.slice(2)) : u >= 2 && m(t.protocol) && (n = r[4]), {
1336
1767
  protocol: i,
@@ -1339,27 +1770,27 @@ var __webpack_modules__ = {
1339
1770
  rest: n
1340
1771
  };
1341
1772
  }
1342
- function y(e, t) {
1773
+ function v(e, t) {
1343
1774
  if ('' === e) return t;
1344
1775
  for(var n = (t || '/').split('/').slice(0, -1).concat(e.split('/')), r = n.length, i = n[r - 1], o = !1, s = 0; r--;)'.' === n[r] ? n.splice(r, 1) : '..' === n[r] ? (n.splice(r, 1), s++) : s && (0 === r && (o = !0), n.splice(r, 1), s--);
1345
1776
  return o && n.unshift(''), ('.' === i || '..' === i) && n.push(''), n.join('/');
1346
1777
  }
1347
- function v(e, t, n) {
1348
- if (e = (e = f(e)).replace(s, ''), !(this instanceof v)) return new v(e, t, n);
1349
- var o, a, u, l, p, b, _ = d.slice(), w = typeof t, k = this, x = 0;
1350
- for('object' !== w && 'string' !== w && (n = t, t = null), n && 'function' != typeof n && (n = i.parse), o = !(a = g(e || '', t = h(t))).protocol && !a.slashes, k.slashes = a.slashes || o && t.slashes, k.protocol = a.protocol || t.protocol || '', e = a.rest, ('file:' === a.protocol && (2 !== a.slashesCount || c.test(e)) || !a.slashes && (a.protocol || a.slashesCount < 2 || !m(k.protocol))) && (_[3] = [
1778
+ function y(e, t, n) {
1779
+ if (e = (e = d(e)).replace(s, ''), !(this instanceof y)) return new y(e, t, n);
1780
+ var o, a, u, l, p, b, _ = f.slice(), w = typeof t, x = this, k = 0;
1781
+ for('object' !== w && 'string' !== w && (n = t, t = null), n && 'function' != typeof n && (n = i.parse), o = !(a = g(e || '', t = h(t))).protocol && !a.slashes, x.slashes = a.slashes || o && t.slashes, x.protocol = a.protocol || t.protocol || '', e = a.rest, ('file:' === a.protocol && (2 !== a.slashesCount || c.test(e)) || !a.slashes && (a.protocol || a.slashesCount < 2 || !m(x.protocol))) && (_[3] = [
1351
1782
  /(.*)/,
1352
1783
  'pathname'
1353
- ]); x < _.length; x++){
1354
- if ('function' == typeof (l = _[x])) {
1355
- e = l(e, k);
1784
+ ]); k < _.length; k++){
1785
+ if ('function' == typeof (l = _[k])) {
1786
+ e = l(e, x);
1356
1787
  continue;
1357
1788
  }
1358
- u = l[0], b = l[1], u != u ? k[b] = e : 'string' == typeof u ? ~(p = '@' === u ? e.lastIndexOf(u) : e.indexOf(u)) && ('number' == typeof l[2] ? (k[b] = e.slice(0, p), e = e.slice(p + l[2])) : (k[b] = e.slice(p), e = e.slice(0, p))) : (p = u.exec(e)) && (k[b] = p[1], e = e.slice(0, p.index)), k[b] = k[b] || o && l[3] && t[b] || '', l[4] && (k[b] = k[b].toLowerCase());
1789
+ u = l[0], b = l[1], u != u ? x[b] = e : 'string' == typeof u ? ~(p = '@' === u ? e.lastIndexOf(u) : e.indexOf(u)) && ('number' == typeof l[2] ? (x[b] = e.slice(0, p), e = e.slice(p + l[2])) : (x[b] = e.slice(p), e = e.slice(0, p))) : (p = u.exec(e)) && (x[b] = p[1], e = e.slice(0, p.index)), x[b] = x[b] || o && l[3] && t[b] || '', l[4] && (x[b] = x[b].toLowerCase());
1359
1790
  }
1360
- n && (k.query = n(k.query)), o && t.slashes && '/' !== k.pathname.charAt(0) && ('' !== k.pathname || '' !== t.pathname) && (k.pathname = y(k.pathname, t.pathname)), '/' !== k.pathname.charAt(0) && m(k.protocol) && (k.pathname = '/' + k.pathname), r(k.port, k.protocol) || (k.host = k.hostname, k.port = ''), k.username = k.password = '', k.auth && (~(p = k.auth.indexOf(':')) ? (k.username = k.auth.slice(0, p), k.username = encodeURIComponent(decodeURIComponent(k.username)), k.password = k.auth.slice(p + 1), k.password = encodeURIComponent(decodeURIComponent(k.password))) : k.username = encodeURIComponent(decodeURIComponent(k.auth)), k.auth = k.password ? k.username + ':' + k.password : k.username), k.origin = 'file:' !== k.protocol && m(k.protocol) && k.host ? k.protocol + '//' + k.host : 'null', k.href = k.toString();
1791
+ n && (x.query = n(x.query)), o && t.slashes && '/' !== x.pathname.charAt(0) && ('' !== x.pathname || '' !== t.pathname) && (x.pathname = v(x.pathname, t.pathname)), '/' !== x.pathname.charAt(0) && m(x.protocol) && (x.pathname = '/' + x.pathname), r(x.port, x.protocol) || (x.host = x.hostname, x.port = ''), x.username = x.password = '', x.auth && (~(p = x.auth.indexOf(':')) ? (x.username = x.auth.slice(0, p), x.username = encodeURIComponent(decodeURIComponent(x.username)), x.password = x.auth.slice(p + 1), x.password = encodeURIComponent(decodeURIComponent(x.password))) : x.username = encodeURIComponent(decodeURIComponent(x.auth)), x.auth = x.password ? x.username + ':' + x.password : x.username), x.origin = 'file:' !== x.protocol && m(x.protocol) && x.host ? x.protocol + '//' + x.host : 'null', x.href = x.toString();
1361
1792
  }
1362
- v.prototype = {
1793
+ y.prototype = {
1363
1794
  set: function(e, t, n) {
1364
1795
  var o = this;
1365
1796
  switch(e){
@@ -1393,8 +1824,8 @@ var __webpack_modules__ = {
1393
1824
  var a = t.indexOf(':');
1394
1825
  ~a ? (o.username = t.slice(0, a), o.username = encodeURIComponent(decodeURIComponent(o.username)), o.password = t.slice(a + 1), o.password = encodeURIComponent(decodeURIComponent(o.password))) : o.username = encodeURIComponent(decodeURIComponent(t));
1395
1826
  }
1396
- for(var l = 0; l < d.length; l++){
1397
- var c = d[l];
1827
+ for(var l = 0; l < f.length; l++){
1828
+ var c = f[l];
1398
1829
  c[4] && (o[c[1]] = o[c[1]].toLowerCase());
1399
1830
  }
1400
1831
  return o.auth = o.password ? o.username + ':' + o.password : o.username, o.origin = 'file:' !== o.protocol && m(o.protocol) && o.host ? o.protocol + '//' + o.host : 'null', o.href = o.toString(), o;
@@ -1406,7 +1837,7 @@ var __webpack_modules__ = {
1406
1837
  var s = o + (n.protocol && n.slashes || m(n.protocol) ? '//' : '');
1407
1838
  return n.username ? (s += n.username, n.password && (s += ':' + n.password), s += '@') : n.password ? (s += ':' + n.password, s += '@') : 'file:' !== n.protocol && m(n.protocol) && !r && '/' !== n.pathname && (s += '@'), (':' === r[r.length - 1] || u.test(n.hostname) && !n.port) && (r += ':'), s += r + n.pathname, (t = 'object' == typeof n.query ? e(n.query) : n.query) && (s += '?' !== t.charAt(0) ? '?' + t : t), n.hash && (s += n.hash), s;
1408
1839
  }
1409
- }, v.extractProtocol = g, v.location = h, v.trimLeft = f, v.qs = i, e.exports = v;
1840
+ }, y.extractProtocol = g, y.location = h, y.trimLeft = d, y.qs = i, e.exports = y;
1410
1841
  },
1411
1842
  602: function() {}
1412
1843
  }, __webpack_module_cache__ = {};
@@ -1420,40 +1851,6 @@ function __webpack_require__(e) {
1420
1851
  };
1421
1852
  return __webpack_modules__[e].call(n.exports, n, n.exports, __webpack_require__), n.loaded = !0, n.exports;
1422
1853
  }
1423
- (()=>{
1424
- __webpack_require__.n = (e)=>{
1425
- var t = e && e.__esModule ? ()=>e.default : ()=>e;
1426
- return __webpack_require__.d(t, {
1427
- a: t
1428
- }), t;
1429
- };
1430
- })(), (()=>{
1431
- __webpack_require__.d = (e, t)=>{
1432
- for(var n in t)__webpack_require__.o(t, n) && !__webpack_require__.o(e, n) && Object.defineProperty(e, n, {
1433
- enumerable: !0,
1434
- get: t[n]
1435
- });
1436
- };
1437
- })(), (()=>{
1438
- __webpack_require__.g = (()=>{
1439
- if ('object' == typeof globalThis) return globalThis;
1440
- try {
1441
- return this || Function('return this')();
1442
- } catch (e) {
1443
- if ('object' == typeof window) return window;
1444
- }
1445
- })();
1446
- })(), (()=>{
1447
- __webpack_require__.o = (e, t)=>Object.prototype.hasOwnProperty.call(e, t);
1448
- })(), (()=>{
1449
- __webpack_require__.nmd = (e)=>(e.paths = [], e.children || (e.children = []), e);
1450
- })();
1451
- const PROVIDER_NAMES = {
1452
- tencent: "\u817E\u8BAF\u89C6\u9891",
1453
- iqiyi: "\u7231\u5947\u827A",
1454
- youku: "\u4F18\u9177\u89C6\u9891",
1455
- bilibili: "\u54D4\u54E9\u54D4\u54E9"
1456
- };
1457
1854
  function $constructor(e, t, n) {
1458
1855
  function r(n, r) {
1459
1856
  var i;
@@ -1484,7 +1881,34 @@ function $constructor(e, t, n) {
1484
1881
  value: e
1485
1882
  }), s;
1486
1883
  }
1487
- Object.freeze({
1884
+ (()=>{
1885
+ __webpack_require__.n = (e)=>{
1886
+ var t = e && e.__esModule ? ()=>e.default : ()=>e;
1887
+ return __webpack_require__.d(t, {
1888
+ a: t
1889
+ }), t;
1890
+ };
1891
+ })(), (()=>{
1892
+ __webpack_require__.d = (e, t)=>{
1893
+ for(var n in t)__webpack_require__.o(t, n) && !__webpack_require__.o(e, n) && Object.defineProperty(e, n, {
1894
+ enumerable: !0,
1895
+ get: t[n]
1896
+ });
1897
+ };
1898
+ })(), (()=>{
1899
+ __webpack_require__.g = (()=>{
1900
+ if ('object' == typeof globalThis) return globalThis;
1901
+ try {
1902
+ return this || Function('return this')();
1903
+ } catch (e) {
1904
+ if ('object' == typeof window) return window;
1905
+ }
1906
+ })();
1907
+ })(), (()=>{
1908
+ __webpack_require__.o = (e, t)=>Object.prototype.hasOwnProperty.call(e, t);
1909
+ })(), (()=>{
1910
+ __webpack_require__.nmd = (e)=>(e.paths = [], e.children || (e.children = []), e);
1911
+ })(), Object.freeze({
1488
1912
  status: "aborted"
1489
1913
  }), Symbol("zod_brand");
1490
1914
  class $ZodAsyncError extends Error {
@@ -2523,6 +2947,8 @@ const $ZodJWT = $constructor("$ZodJWT", (e, t)=>{
2523
2947
  inst: e
2524
2948
  }), n;
2525
2949
  };
2950
+ }), $ZodAny = $constructor("$ZodAny", (e, t)=>{
2951
+ $ZodType.init(e, t), e._zod.parse = (e)=>e;
2526
2952
  }), $ZodUnknown = $constructor("$ZodUnknown", (e, t)=>{
2527
2953
  $ZodType.init(e, t), e._zod.parse = (e)=>e;
2528
2954
  }), $ZodNever = $constructor("$ZodNever", (e, t)=>{
@@ -2618,46 +3044,46 @@ const $ZodObject = $constructor("$ZodObject", (e, t)=>{
2618
3044
  let a = t.compile();
2619
3045
  return (t, n)=>a(e, t, n);
2620
3046
  }, s = util_isObject, a = !globalConfig.jitless, u = util_allowsEval, l = a && u.value, c = t.catchall;
2621
- e._zod.parse = (u, f)=>{
3047
+ e._zod.parse = (u, d)=>{
2622
3048
  r ?? (r = i.value);
2623
- let d = u.value;
2624
- if (!s(d)) return u.issues.push({
3049
+ let f = u.value;
3050
+ if (!s(f)) return u.issues.push({
2625
3051
  expected: "object",
2626
3052
  code: "invalid_type",
2627
- input: d,
3053
+ input: f,
2628
3054
  inst: e
2629
3055
  }), u;
2630
3056
  let p = [];
2631
- if (a && l && f?.async === !1 && !0 !== f.jitless) n || (n = o(t.shape)), u = n(u, f);
3057
+ if (a && l && d?.async === !1 && !0 !== d.jitless) n || (n = o(t.shape)), u = n(u, d);
2632
3058
  else {
2633
3059
  u.value = {};
2634
3060
  let e = r.shape;
2635
3061
  for (let t of r.keys){
2636
3062
  let n = e[t]._zod.run({
2637
- value: d[t],
3063
+ value: f[t],
2638
3064
  issues: []
2639
- }, f);
2640
- n instanceof Promise ? p.push(n.then((e)=>handlePropertyResult(e, u, t, d))) : handlePropertyResult(n, u, t, d);
3065
+ }, d);
3066
+ n instanceof Promise ? p.push(n.then((e)=>handlePropertyResult(e, u, t, f))) : handlePropertyResult(n, u, t, f);
2641
3067
  }
2642
3068
  }
2643
3069
  if (!c) return p.length ? Promise.all(p).then(()=>u) : u;
2644
- let h = [], m = r.keySet, g = c._zod, y = g.def.type;
2645
- for (let e of Object.keys(d)){
3070
+ let h = [], m = r.keySet, g = c._zod, v = g.def.type;
3071
+ for (let e of Object.keys(f)){
2646
3072
  if (m.has(e)) continue;
2647
- if ("never" === y) {
3073
+ if ("never" === v) {
2648
3074
  h.push(e);
2649
3075
  continue;
2650
3076
  }
2651
3077
  let t = g.run({
2652
- value: d[e],
3078
+ value: f[e],
2653
3079
  issues: []
2654
- }, f);
2655
- t instanceof Promise ? p.push(t.then((t)=>handlePropertyResult(t, u, e, d))) : handlePropertyResult(t, u, e, d);
3080
+ }, d);
3081
+ t instanceof Promise ? p.push(t.then((t)=>handlePropertyResult(t, u, e, f))) : handlePropertyResult(t, u, e, f);
2656
3082
  }
2657
3083
  return (h.length && u.issues.push({
2658
3084
  code: "unrecognized_keys",
2659
3085
  keys: h,
2660
- input: d,
3086
+ input: f,
2661
3087
  inst: e
2662
3088
  }), p.length) ? Promise.all(p).then(()=>u) : u;
2663
3089
  };
@@ -3302,6 +3728,11 @@ function _boolean(e, t) {
3302
3728
  ...normalizeParams(t)
3303
3729
  });
3304
3730
  }
3731
+ function _any(e) {
3732
+ return new e({
3733
+ type: "any"
3734
+ });
3735
+ }
3305
3736
  function _unknown(e) {
3306
3737
  return new e({
3307
3738
  type: "unknown"
@@ -3624,6 +4055,12 @@ const ZodBoolean = $constructor("ZodBoolean", (e, t)=>{
3624
4055
  function schemas_boolean(e) {
3625
4056
  return _boolean(ZodBoolean, e);
3626
4057
  }
4058
+ const ZodAny = $constructor("ZodAny", (e, t)=>{
4059
+ $ZodAny.init(e, t), ZodType.init(e, t);
4060
+ });
4061
+ function any() {
4062
+ return _any(ZodAny);
4063
+ }
3627
4064
  const ZodUnknown = $constructor("ZodUnknown", (e, t)=>{
3628
4065
  $ZodUnknown.init(e, t), ZodType.init(e, t);
3629
4066
  });
@@ -3873,12 +4310,40 @@ function refine(e, t = {}) {
3873
4310
  function superRefine(e) {
3874
4311
  return _superRefine(e);
3875
4312
  }
4313
+ function preprocess(e, t) {
4314
+ return pipe(transform(e), t);
4315
+ }
3876
4316
  function coerce_string(e) {
3877
4317
  return _coercedString(ZodString, e);
3878
4318
  }
3879
4319
  function coerce_number(e) {
3880
4320
  return _coercedNumber(ZodNumber, e);
3881
4321
  }
4322
+ var constants_MediaType = function(e) {
4323
+ return e.Movie = "movie", e.TV = "tv", e;
4324
+ }({});
4325
+ const PROVIDER_NAMES = {
4326
+ tencent: "\u817E\u8BAF\u89C6\u9891",
4327
+ iqiyi: "\u7231\u5947\u827A",
4328
+ youku: "\u4F18\u9177\u89C6\u9891",
4329
+ bilibili: "\u54D4\u54E9\u54D4\u54E9",
4330
+ renren: "\u4EBA\u4EBA\u89C6\u9891"
4331
+ }, searchDanmuParamsSchema = schemas_object({
4332
+ tmdbId: coerce_string().optional(),
4333
+ type: schemas_enum([
4334
+ "movie",
4335
+ "tv"
4336
+ ]).transform((e)=>e).catch("movie"),
4337
+ title: coerce_string().optional(),
4338
+ seriesName: coerce_string().optional(),
4339
+ season: coerce_number().optional(),
4340
+ episode: coerce_number().optional(),
4341
+ fuzzyMatch: schemas_enum([
4342
+ "always",
4343
+ "never",
4344
+ "auto"
4345
+ ]).catch("auto").optional().default("auto")
4346
+ });
3882
4347
  var enc_base64 = __webpack_require__(716), enc_base64_default = __webpack_require__.n(enc_base64);
3883
4348
  function safeJsonParse(e) {
3884
4349
  try {
@@ -3902,6 +4367,12 @@ function base64ToUint8Array(e) {
3902
4367
  }
3903
4368
  return n;
3904
4369
  }
4370
+ function generateUUID() {
4371
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (e)=>{
4372
+ let t = 16 * Math.random() | 0;
4373
+ return ("x" === e ? t : 0x3 & t | 0x8).toString(16);
4374
+ });
4375
+ }
3905
4376
  function _define_property(e, t, n) {
3906
4377
  return t in e ? Object.defineProperty(e, t, {
3907
4378
  value: n,
@@ -3942,10 +4413,10 @@ class Storage {
3942
4413
  setJson(e, t, n) {
3943
4414
  return this.set(e, JSON.stringify(t), n);
3944
4415
  }
3945
- cleanup() {
4416
+ async cleanup() {
3946
4417
  try {
3947
4418
  let e = "__storage_last_cleanup__";
3948
- this.get(e) || Widget.storage.keys().forEach((e)=>{
4419
+ this.get(e) || (await Widget.storage.keys()).forEach((e)=>{
3949
4420
  this.get(e);
3950
4421
  }), this.set(e, "1", {
3951
4422
  ttl: TTL_1_DAY
@@ -4081,9 +4552,9 @@ class Fetch {
4081
4552
  }, s), r = storage.getJson(n);
4082
4553
  if (r) return console.debug("fetch cache hit", n), Promise.resolve(r);
4083
4554
  }
4084
- let a = o ? void 0 : n, { timeout: u, schema: l, params: c, ...f } = s, d = t;
4085
- c && (d = `${t}?${url_parse.qs.stringify(c)}`), console.debug("\u2B06\uFE0F fetch", d, null != a ? a : "", f);
4086
- let p = o ? Widget.http.get(d, f) : Widget.http.post(d, a, f);
4555
+ let a = o ? void 0 : n, { timeout: u, schema: l, params: c, ...d } = s, f = t;
4556
+ c && (f = `${t}?${url_parse.qs.stringify(c)}`), console.debug("\u2B06\uFE0F fetch", f, null != a ? a : "", d);
4557
+ let p = o ? Widget.http.get(f, d) : Widget.http.post(f, a, d);
4087
4558
  return u && u > 0 ? Promise.race([
4088
4559
  p,
4089
4560
  this.createTimeoutPromise(u)
@@ -4267,23 +4738,8 @@ const doubanSubjectItemSchema = schemas_object({
4267
4738
  ].filter(Boolean).join(":")
4268
4739
  }
4269
4740
  })).data) ? void 0 : t.subjects.items) ? n : [];
4270
- }, getDoubanInfoParamsSchema = schemas_object({
4271
- tmdbId: coerce_string().optional(),
4272
- type: schemas_enum([
4273
- "movie",
4274
- "tv"
4275
- ]).transform((e)=>e),
4276
- title: coerce_string().optional(),
4277
- seriesName: coerce_string().optional(),
4278
- season: coerce_number().optional(),
4279
- episode: coerce_number().optional(),
4280
- fuzzyMatch: schemas_enum([
4281
- "always",
4282
- "never",
4283
- "auto"
4284
- ]).catch("auto").optional().default("auto")
4285
- }), getDoubanIds = async (e)=>{
4286
- let t = new Set(), { tmdbId: n, type: r, seriesName: i, season: o, fuzzyMatch: s } = getDoubanInfoParamsSchema.parse(e);
4741
+ }, getDoubanIds = async (e)=>{
4742
+ let t = new Set(), { tmdbId: n, type: r, seriesName: i, season: o, fuzzyMatch: s } = searchDanmuParamsSchema.parse(e);
4287
4743
  try {
4288
4744
  let e = await getDoubanInfoByTmdbId(r, n, o);
4289
4745
  (null == e ? void 0 : e.doubanId) && t.add(e.doubanId);
@@ -4323,7 +4779,7 @@ const doubanSubjectItemSchema = schemas_object({
4323
4779
  });
4324
4780
  if (200 !== i.statusCode) throw Error(`Failed to get video platform info: ${i.statusCode}, ${JSON.stringify(i.data)}`);
4325
4781
  let o = {
4326
- mediaType: (null == (t = i.data) ? void 0 : t.is_tv) ? "tv" : "movie",
4782
+ mediaType: (null == (t = i.data) ? void 0 : t.is_tv) ? constants_MediaType.TV : constants_MediaType.Movie,
4327
4783
  providers: {}
4328
4784
  };
4329
4785
  for (let e of null != (r = null == (n = i.data) ? void 0 : n.vendors) ? r : []){
@@ -5079,17 +5535,17 @@ const parseXml = function(e) {
5079
5535
  }
5080
5536
  ]) : n.add(this.options.textNodeName, a), o = t + 2;
5081
5537
  } else {
5082
- let s = readTagExp(e, o, this.options.removeNSPrefix), a = s.tagName, u = s.rawTagName, l = s.tagExp, c = s.attrExpPresent, f = s.closeIndex;
5538
+ let s = readTagExp(e, o, this.options.removeNSPrefix), a = s.tagName, u = s.rawTagName, l = s.tagExp, c = s.attrExpPresent, d = s.closeIndex;
5083
5539
  this.options.transformTagName && (a = this.options.transformTagName(a)), n && r && '!xml' !== n.tagname && (r = this.saveTextToParentTag(r, n, i, !1));
5084
- let d = n;
5085
- d && -1 !== this.options.unpairedTags.indexOf(d.tagname) && (n = this.tagsNodeStack.pop(), i = i.substring(0, i.lastIndexOf("."))), a !== t.tagname && (i += i ? "." + a : a);
5540
+ let f = n;
5541
+ f && -1 !== this.options.unpairedTags.indexOf(f.tagname) && (n = this.tagsNodeStack.pop(), i = i.substring(0, i.lastIndexOf("."))), a !== t.tagname && (i += i ? "." + a : a);
5086
5542
  let p = o;
5087
5543
  if (this.isItStopNode(this.options.stopNodes, i, a)) {
5088
5544
  let t = "";
5089
5545
  if (l.length > 0 && l.lastIndexOf("/") === l.length - 1) "/" === a[a.length - 1] ? (a = a.substr(0, a.length - 1), i = i.substr(0, i.length - 1), l = a) : l = l.substr(0, l.length - 1), o = s.closeIndex;
5090
5546
  else if (-1 !== this.options.unpairedTags.indexOf(a)) o = s.closeIndex;
5091
5547
  else {
5092
- let n = this.readStopNodeData(e, u, f + 1);
5548
+ let n = this.readStopNodeData(e, u, d + 1);
5093
5549
  if (!n) throw Error(`Unexpected end of ${u}`);
5094
5550
  o = n.i, t = n.tagContent;
5095
5551
  }
@@ -5104,7 +5560,7 @@ const parseXml = function(e) {
5104
5560
  let e = new XmlNode(a);
5105
5561
  this.tagsNodeStack.push(n), a !== l && c && (e[":@"] = this.buildAttributesMap(l, i, a)), this.addChild(n, e, i, p), n = e;
5106
5562
  }
5107
- r = "", o = f;
5563
+ r = "", o = d;
5108
5564
  }
5109
5565
  }
5110
5566
  else r += e[o];
@@ -5486,24 +5942,32 @@ const iqiyiIdSchema = schemas_object({
5486
5942
  }
5487
5943
  })), safeParseVideo = (e)=>{
5488
5944
  let t = iqiyiEpisodeTabDataVideoSchema.safeParse(e);
5489
- return t.success ? t.data : (console.warn("\u7231\u5947\u827A: \u89E3\u6790\u5206\u96C6\u6570\u636E\u65F6\u53D1\u751F\u9519\u8BEF:", t.error.format(), e), null);
5490
- }, iqiyiTvTabDataSchema = schemas_object({
5491
- data: schemas_array(schemas_object({
5492
- videos: schemas_object({
5493
- feature_paged: record(schemas_string(), schemas_array(unknown().transform((e)=>safeParseVideo(e)))).optional().transform((e)=>compact(Object.values(null != e ? e : {}).flat()))
5494
- }).optional()
5495
- }).transform((e)=>{
5496
- var t;
5497
- return null == (t = e.videos) ? void 0 : t.feature_paged;
5498
- })).transform((e)=>compact(e.flat()))
5499
- }), iqiyiMovieTabDataSchema = schemas_object({
5945
+ return t.success ? t.data : (console.warn("\u7231\u5947\u827A: \u89E3\u6790\u5206\u96C6\u6570\u636E\u65F6\u53D1\u751F\u9519\u8BEF:", prettifyError(t.error), e), null);
5946
+ }, iqiyiTvTabSchema = schemas_object({
5947
+ bk_id: literal("selector_bk"),
5948
+ bk_type: literal("album_episodes"),
5500
5949
  data: schemas_object({
5501
- videos: schemas_array(unknown().transform((e)=>safeParseVideo(e)))
5502
- }).transform((e)=>compact(e.videos))
5503
- }), iqiyiEpisodeTabDataSchema = union([
5504
- iqiyiTvTabDataSchema,
5505
- iqiyiMovieTabDataSchema
5506
- ]), iqiyiV3ApiResponseSchema = schemas_object({
5950
+ data: schemas_array(unknown().transform((e)=>schemas_object({
5951
+ videos: schemas_object({
5952
+ feature_paged: record(any(), schemas_array(unknown().transform((e)=>safeParseVideo(e)))).optional().transform((e)=>compact(Object.values(null != e ? e : {}).flat()))
5953
+ }).optional()
5954
+ }).transform((e)=>{
5955
+ var t;
5956
+ return null == (t = e.videos) ? void 0 : t.feature_paged;
5957
+ }).safeParse(e).data)).transform((e)=>compact(e.flat()))
5958
+ })
5959
+ }), iqiyiMovieTabSchema = schemas_object({
5960
+ bk_id: literal("film_feature_bk"),
5961
+ bk_type: literal("video_list"),
5962
+ data: schemas_object({
5963
+ data: schemas_object({
5964
+ videos: schemas_array(unknown().transform((e)=>safeParseVideo(e)))
5965
+ }).transform((e)=>compact(e.videos))
5966
+ })
5967
+ }), iqiyiEpisodeTabSchema = union([
5968
+ iqiyiTvTabSchema,
5969
+ iqiyiMovieTabSchema
5970
+ ]).transform((e)=>e.data.data), iqiyiV3ApiResponseSchema = schemas_object({
5507
5971
  status_code: schemas_number(),
5508
5972
  data: schemas_object({
5509
5973
  base_data: schemas_object({
@@ -5587,7 +6051,7 @@ class IqiyiScraper extends BaseScraper {
5587
6051
  console.debug(`URL\u{6784}\u{5EFA}: s1=${i}, s2=${o}, \u{5B8C}\u{6574}URL=${s}`);
5588
6052
  let a = await this.fetch.get(s, {
5589
6053
  zlibMode: !0
5590
- }), u = this.xmlParser.parse(a.data), { success: l, data: c, error: f } = iqiyiCommentsResponseSchema.safeParse(u);
6054
+ }), u = this.xmlParser.parse(a.data), { success: l, data: c, error: d } = iqiyiCommentsResponseSchema.safeParse(u);
5591
6055
  return l ? c.map((e)=>{
5592
6056
  let t = 16777215;
5593
6057
  try {
@@ -5600,7 +6064,7 @@ class IqiyiScraper extends BaseScraper {
5600
6064
  color: t,
5601
6065
  content: e.content
5602
6066
  };
5603
- }) : (console.warn(`\u{7231}\u{5947}\u{827A}: \u{89E3}\u{6790}\u{5F39}\u{5E55}\u{6570}\u{636E}\u{65F6}\u{53D1}\u{751F}\u{9519}\u{8BEF}:`, prettifyError(f)), []);
6067
+ }) : (console.warn(`\u{7231}\u{5947}\u{827A}: \u{89E3}\u{6790}\u{5F39}\u{5E55}\u{6570}\u{636E}\u{65F6}\u{53D1}\u{751F}\u{9519}\u{8BEF}:`, prettifyError(d)), []);
5604
6068
  }
5605
6069
  async getEpisodesV3(e) {
5606
6070
  let t = {
@@ -5635,10 +6099,10 @@ class IqiyiScraper extends BaseScraper {
5635
6099
  url: e.play_url
5636
6100
  }))) ? o : [];
5637
6101
  if (!c.length) {
5638
- let t = null == e || null == (u = e.data) || null == (a = u.template) || null == (s = a.tabs) ? void 0 : s.flatMap((e)=>e.blocks || []).find((e)=>"selector_bk" === e.bk_id && "album_episodes" === e.bk_type || "film_feature_bk" === e.bk_id && "video_list" === e.bk_type), { success: n, data: r, error: i } = iqiyiEpisodeTabDataSchema.safeParse(null == t ? void 0 : t.data);
5639
- if (!n) return console.warn(`\u{7231}\u{5947}\u{827A}: \u{89E3}\u{6790}\u{5206}\u{96C6}\u{6570}\u{636E}\u{65F6}\u{53D1}\u{751F}\u{9519}\u{8BEF}:`, prettifyError(i), t), [];
5640
- let o = this.getEpisodeBlacklistPattern(), f = 1;
5641
- for (let e of r.data){
6102
+ let t = null == e || null == (u = e.data) || null == (a = u.template) || null == (s = a.tabs) ? void 0 : s.flatMap((e)=>e.blocks || []).find((e)=>iqiyiEpisodeTabSchema.safeParse(e).success), { success: n, data: r, error: i } = iqiyiEpisodeTabSchema.safeParse(t);
6103
+ if (!n) return console.warn(`\u{7231}\u{5947}\u{827A}: \u{89E3}\u{6790}\u{5206}\u{96C6}\u{5217}\u{8868}\u{6570}\u{636E}\u{65F6}\u{53D1}\u{751F}\u{9519}\u{8BEF}:`, prettifyError(i), t), [];
6104
+ let o = this.getEpisodeBlacklistPattern(), d = 1;
6105
+ for (let e of r){
5642
6106
  if (17 === e.mark_type_show) continue;
5643
6107
  let t = this.videoIdToEntityId(e.videoId);
5644
6108
  t && (null != o && o.test(e.title) || (c.push({
@@ -5647,8 +6111,8 @@ class IqiyiScraper extends BaseScraper {
5647
6111
  entityId: t
5648
6112
  }),
5649
6113
  episodeTitle: e.title,
5650
- episodeNumber: e.short_display_name && null != (l = this.getEpisodeIndexFromTitle(e.short_display_name)) ? l : f
5651
- }), f += 1));
6114
+ episodeNumber: e.short_display_name && null != (l = this.getEpisodeIndexFromTitle(e.short_display_name)) ? l : d
6115
+ }), d += 1));
5652
6116
  }
5653
6117
  }
5654
6118
  return c;
@@ -5700,6 +6164,261 @@ class IqiyiScraper extends BaseScraper {
5700
6164
  });
5701
6165
  }
5702
6166
  }
6167
+ var aes = __webpack_require__(129), aes_default = __webpack_require__.n(aes), enc_utf8 = __webpack_require__(60), enc_utf8_default = __webpack_require__.n(enc_utf8), hmac_sha256 = __webpack_require__(939), hmac_sha256_default = __webpack_require__.n(hmac_sha256), mode_ecb = __webpack_require__(760), mode_ecb_default = __webpack_require__.n(mode_ecb), pad_pkcs7 = __webpack_require__(186), pad_pkcs7_default = __webpack_require__.n(pad_pkcs7);
6168
+ function isNil(e) {
6169
+ return null == e;
6170
+ }
6171
+ function renren_define_property(e, t, n) {
6172
+ return t in e ? Object.defineProperty(e, t, {
6173
+ value: n,
6174
+ enumerable: !0,
6175
+ configurable: !0,
6176
+ writable: !0
6177
+ }) : e[t] = n, e;
6178
+ }
6179
+ const AES_KEY = "3b744389882a4067", SIGN_SECRET = "ES513W0B1CsdUrR13Qk5EgDAKPeeKZY", BASE_API = "https://api.rrmj.plus", CLIENT_TYPE = "web_pc", CLIENT_VERSION = "1.0.0", renrenIdSchema = schemas_object({
6180
+ dramaId: coerce_number(),
6181
+ episodeId: coerce_number().optional()
6182
+ }), aesEcbPkcs7DecryptBase64 = (e)=>{
6183
+ let t = enc_base64_default().parse(e);
6184
+ return aes_default().decrypt({
6185
+ ciphertext: t
6186
+ }, enc_utf8_default().parse(AES_KEY), {
6187
+ mode: mode_ecb_default(),
6188
+ padding: pad_pkcs7_default()
6189
+ }).toString(enc_utf8_default());
6190
+ }, aesResponeSchema = schemas_string().transform((e)=>safeJsonParseWithZod(aesEcbPkcs7DecryptBase64(e), schemas_object({
6191
+ data: unknown()
6192
+ }))), renrenSearchResponseSchema = schemas_object({
6193
+ searchDramaList: schemas_array(unknown().transform((e)=>{
6194
+ var t;
6195
+ return null != (t = schemas_object({
6196
+ id: schemas_string(),
6197
+ title: schemas_string(),
6198
+ subtitle: schemas_string().optional(),
6199
+ classify: preprocess((e)=>{
6200
+ var t;
6201
+ return null != (t = ({
6202
+ 电影: constants_MediaType.Movie,
6203
+ 电视剧: constants_MediaType.TV
6204
+ })[e]) ? t : null;
6205
+ }, schemas_enum(constants_MediaType).nullish().catch(null)),
6206
+ name: schemas_string().optional(),
6207
+ year: coerce_number().optional()
6208
+ }).safeParse(e).data) ? t : null;
6209
+ })).transform((e)=>compact(e))
6210
+ }), renrenDramaInfoResponseSchema = schemas_object({
6211
+ dramaInfo: schemas_object({
6212
+ dramaId: coerce_number(),
6213
+ title: schemas_string(),
6214
+ enName: schemas_string().optional(),
6215
+ seasonNo: coerce_number().optional()
6216
+ }).optional(),
6217
+ episodeList: schemas_array(unknown().transform((e)=>{
6218
+ var t;
6219
+ return null != (t = schemas_object({
6220
+ id: coerce_number(),
6221
+ episodeNo: coerce_number(),
6222
+ text: schemas_string().optional(),
6223
+ title: schemas_string().optional()
6224
+ }).safeParse(e).data) ? t : null;
6225
+ })).transform((e)=>compact(e))
6226
+ }), renrenCommentItemSchema = schemas_object({
6227
+ d: schemas_string(),
6228
+ p: schemas_string().transform((e)=>{
6229
+ let t = e.split(","), n = coerce_number().catch(0.0).parse(t[0]), r = coerce_number().int().catch(1).parse(t[1]), i = coerce_number().int().catch(25).parse(t[2]), o = coerce_number().int().catch(16777215).parse(t[3]), s = t[6] || "", a = t[7] || `${n.toFixed(3)}:${s}`;
6230
+ return {
6231
+ timestamp: n,
6232
+ mode: r,
6233
+ size: i,
6234
+ color: o,
6235
+ userId: s,
6236
+ contentId: a
6237
+ };
6238
+ })
6239
+ }).transform((e)=>({
6240
+ id: e.p.contentId,
6241
+ timestamp: e.p.timestamp,
6242
+ mode: e.p.mode,
6243
+ color: e.p.color,
6244
+ content: e.d
6245
+ }));
6246
+ class RenRenScraper extends BaseScraper {
6247
+ get deviceId() {
6248
+ return generateUUID().toUpperCase();
6249
+ }
6250
+ async search(e) {
6251
+ let { success: t, data: n, error: r } = searchDanmuParamsSchema.safeParse(e);
6252
+ if (!t) return console.error("RenRen: Invalid search params", prettifyError(r)), [];
6253
+ let { seriesName: i, season: o } = n;
6254
+ if (!i) return [];
6255
+ let s = await this.request("/m-station/search/drama", {
6256
+ params: {
6257
+ keywords: i,
6258
+ size: Math.max(10, null != o ? o : 1),
6259
+ order: "match",
6260
+ search_after: "",
6261
+ isExecuteVipActivity: !0
6262
+ },
6263
+ cache: {
6264
+ cacheKey: `renren:search:${i}`,
6265
+ ttl: TTL_1_DAY
6266
+ },
6267
+ schema: aesResponeSchema.transform((e)=>{
6268
+ var t;
6269
+ let n = renrenSearchResponseSchema.safeParse(null == e ? void 0 : e.data);
6270
+ return n.success ? null == (t = n.data) ? void 0 : t.searchDramaList : (console.warn("RenRen: Search parse error", prettifyError(n.error), null == e ? void 0 : e.data), []);
6271
+ })
6272
+ });
6273
+ if (!s.data) return [];
6274
+ let a = [];
6275
+ for await (let e of s.data){
6276
+ var u, l, c, d, f, p, h;
6277
+ let t = e.title.replace(/<[^>]+>/g, "").replace(":", "\uFF1A"), n = await this.getDramaInfo(e.id);
6278
+ if (!n) {
6279
+ console.log("RenRen: Search", t, "not found");
6280
+ continue;
6281
+ }
6282
+ if (!((null == (l = n.dramaInfo) || null == (u = l.enName) ? void 0 : u.includes(i)) || (null == (d = n.dramaInfo) || null == (c = d.title) ? void 0 : c.includes(i)) || t.includes(i) || (null == (f = e.name) ? void 0 : f.includes(i)))) {
6283
+ console.log("RenRen: Search", t, "not match");
6284
+ continue;
6285
+ }
6286
+ let r = !1, s = null != (h = null == (p = n.dramaInfo) ? void 0 : p.seasonNo) ? h : 1;
6287
+ isNil(o) || s !== o || (r = !0);
6288
+ let m = {
6289
+ provider: this.providerName,
6290
+ dramaId: e.id,
6291
+ dramaTitle: t,
6292
+ season: s
6293
+ };
6294
+ if (a.push(m), r) {
6295
+ a = [
6296
+ m
6297
+ ];
6298
+ break;
6299
+ }
6300
+ }
6301
+ return a;
6302
+ }
6303
+ async getEpisodes(e, t) {
6304
+ let n = this.parseIdString(e);
6305
+ if (!n) return [];
6306
+ let r = await this.getDramaInfo(n.dramaId.toString());
6307
+ if (!r) return [];
6308
+ let i = r.episodeList.map((e)=>{
6309
+ var t;
6310
+ return {
6311
+ provider: this.providerName,
6312
+ episodeId: this.generateIdString({
6313
+ dramaId: n.dramaId,
6314
+ episodeId: e.id
6315
+ }),
6316
+ episodeTitle: e.title || `${null == (t = r.dramaInfo) ? void 0 : t.title} E${e.episodeNo}`,
6317
+ episodeNumber: e.episodeNo
6318
+ };
6319
+ });
6320
+ return isNil(t) ? i : i.filter((e)=>e.episodeNumber === t);
6321
+ }
6322
+ async getSegments() {
6323
+ return [
6324
+ {
6325
+ provider: this.providerName,
6326
+ segmentId: "1",
6327
+ startTime: 0
6328
+ }
6329
+ ];
6330
+ }
6331
+ async getComments(e) {
6332
+ let t = this.parseIdString(e);
6333
+ return (null == t ? void 0 : t.episodeId) ? this.fetchEpisodeDanmu(t.episodeId.toString()) : [];
6334
+ }
6335
+ async getDramaInfo(e) {
6336
+ return (await this.request("/m-station/drama/page", {
6337
+ params: {
6338
+ hsdrOpen: 0,
6339
+ isAgeLimit: 0,
6340
+ dramaId: e,
6341
+ hevcOpen: 1
6342
+ },
6343
+ schema: aesResponeSchema.transform((t)=>{
6344
+ let n = renrenDramaInfoResponseSchema.safeParse(null == t ? void 0 : t.data);
6345
+ return n.success ? n.data : (console.warn("RenRen: getDramaInfo", e, "parse error", prettifyError(n.error), null == t ? void 0 : t.data), null);
6346
+ }),
6347
+ cache: {
6348
+ cacheKey: `renren:dramaInfo:${e}`,
6349
+ ttl: TTL_1_DAY
6350
+ }
6351
+ })).data;
6352
+ }
6353
+ async fetchEpisodeDanmu(e) {
6354
+ return (await this.fetch.get(`https://static-dm.rrmj.plus/v1/produce/danmu/EPISODE/${e}`, {
6355
+ headers: {
6356
+ Accept: "application/json"
6357
+ },
6358
+ schema: schemas_array(unknown().transform((e)=>{
6359
+ var t;
6360
+ return null != (t = renrenCommentItemSchema.safeParse(e).data) ? t : null;
6361
+ })).transform((e)=>compact(e))
6362
+ })).data;
6363
+ }
6364
+ generateSignature(e) {
6365
+ let { method: t, aliId: n, timestampMs: r, path: i, sortedQuery: o, secret: s } = e, a = [
6366
+ t.toUpperCase(),
6367
+ `aliId:${n}`,
6368
+ `ct:${CLIENT_TYPE}`,
6369
+ `cv:${CLIENT_VERSION}`,
6370
+ `t:${r}`,
6371
+ `${i}?${o}`
6372
+ ].join("\n"), u = hmac_sha256_default()(a, s);
6373
+ return enc_base64_default().stringify(u);
6374
+ }
6375
+ generateHeaders(e) {
6376
+ let { method: t, path: n, params: r } = e, i = Object.entries(r).sort((e, t)=>e[0].localeCompare(t[0])).map((e)=>{
6377
+ let [t, n] = e;
6378
+ return `${t}=${encodeURIComponent(n)}`;
6379
+ }).join("&"), o = Date.now(), s = this.deviceId, a = this.generateSignature({
6380
+ method: t,
6381
+ aliId: s,
6382
+ timestampMs: o,
6383
+ path: n,
6384
+ sortedQuery: i,
6385
+ secret: SIGN_SECRET
6386
+ });
6387
+ return {
6388
+ clientVersion: CLIENT_VERSION,
6389
+ deviceId: s,
6390
+ clientType: CLIENT_TYPE,
6391
+ t: o.toString(),
6392
+ aliId: s,
6393
+ umid: s,
6394
+ token: "",
6395
+ cv: CLIENT_VERSION,
6396
+ ct: CLIENT_TYPE,
6397
+ uet: "9",
6398
+ "x-ca-sign": a,
6399
+ Accept: "application/json"
6400
+ };
6401
+ }
6402
+ request(e, t) {
6403
+ let { params: n = {}, ...r } = t, i = this.generateHeaders({
6404
+ method: "GET",
6405
+ path: e,
6406
+ params: n
6407
+ });
6408
+ return this.fetch.get(`${BASE_API}${e}`, {
6409
+ ...r,
6410
+ headers: i,
6411
+ params: n
6412
+ });
6413
+ }
6414
+ constructor(){
6415
+ super(), renren_define_property(this, "providerName", "renren"), renren_define_property(this, "idSchema", renrenIdSchema), this.fetch.setHeaders({
6416
+ "User-Agent": "Mozilla/5.0",
6417
+ Origin: "https://rrsp.com.cn",
6418
+ Referer: "https://rrsp.com.cn/"
6419
+ });
6420
+ }
6421
+ }
5703
6422
  function tencent_define_property(e, t, n) {
5704
6423
  return t in e ? Object.defineProperty(e, t, {
5705
6424
  value: n,
@@ -5786,13 +6505,7 @@ class TencentScraper extends BaseScraper {
5786
6505
  episodeNumber: r
5787
6506
  };
5788
6507
  });
5789
- if (void 0 !== t) {
5790
- let e = r.find((e)=>e.episodeNumber === t);
5791
- return e ? [
5792
- e
5793
- ] : [];
5794
- }
5795
- return r;
6508
+ return void 0 !== t ? r.filter((e)=>e.episodeNumber === t) : r;
5796
6509
  }
5797
6510
  async getSegments(e) {
5798
6511
  let t = this.parseIdString(e);
@@ -5901,7 +6614,6 @@ class TencentScraper extends BaseScraper {
5901
6614
  });
5902
6615
  }
5903
6616
  }
5904
- var enc_utf8 = __webpack_require__(60), enc_utf8_default = __webpack_require__.n(enc_utf8);
5905
6617
  function youku_define_property(e, t, n) {
5906
6618
  return t in e ? Object.defineProperty(e, t, {
5907
6619
  value: n,
@@ -5978,11 +6690,11 @@ class YoukuScraper extends BaseScraper {
5978
6690
  }),
5979
6691
  episodeTitle: e.title,
5980
6692
  episodeNumber: t
5981
- }), o = await this.getEpisodesPage(s, l, a), c = e(null != (r = null == o ? void 0 : o.videos) ? r : []), f = c.find((e)=>e.seq === u);
5982
- if (f) return [
5983
- n(f, u)
6693
+ }), o = await this.getEpisodesPage(s, l, a), c = e(null != (r = null == o ? void 0 : o.videos) ? r : []), d = c.find((e)=>e.seq === u);
6694
+ if (d) return [
6695
+ n(d, u)
5984
6696
  ];
5985
- let d = Number(null != (i = null == o ? void 0 : o.total) ? i : 0), p = Math.max(1, Math.ceil(d / a)), h = Array.from({
6697
+ let f = Number(null != (i = null == o ? void 0 : o.total) ? i : 0), p = Math.max(1, Math.ceil(f / a)), h = Array.from({
5986
6698
  length: p
5987
6699
  }, (e, t)=>t + 1).filter((e)=>e !== l), m = [];
5988
6700
  for (let e of h){
@@ -5993,17 +6705,17 @@ class YoukuScraper extends BaseScraper {
5993
6705
  let g = e(m.flatMap((e)=>{
5994
6706
  var t;
5995
6707
  return null != (t = null == e ? void 0 : e.videos) ? t : [];
5996
- })), y = [
6708
+ })), v = [
5997
6709
  ...c,
5998
6710
  ...g
5999
6711
  ];
6000
6712
  if (void 0 !== t) {
6001
- let e = y.find((e)=>e.seq === u);
6713
+ let e = v.find((e)=>e.seq === u);
6002
6714
  return e ? [
6003
6715
  n(e, u)
6004
6716
  ] : [];
6005
6717
  }
6006
- return y.sort((e, t)=>{
6718
+ return v.sort((e, t)=>{
6007
6719
  var n, r;
6008
6720
  return (null != (n = e.seq) ? n : Number.MAX_SAFE_INTEGER) - (null != (r = t.seq) ? r : Number.MAX_SAFE_INTEGER);
6009
6721
  }).map((e, t)=>n(e, t + 1));
@@ -6191,7 +6903,8 @@ const scrapers = [
6191
6903
  TencentScraper,
6192
6904
  YoukuScraper,
6193
6905
  IqiyiScraper,
6194
- BilibiliScraper
6906
+ BilibiliScraper,
6907
+ RenRenScraper
6195
6908
  ];
6196
6909
  class scrapers_Scraper {
6197
6910
  get scraperMap() {
@@ -6280,7 +6993,7 @@ class scrapers_Scraper {
6280
6993
  }));
6281
6994
  }
6282
6995
  getEpisodeNumber(e, t) {
6283
- if ("tv" === e && t) return parseInt(t);
6996
+ if (e === constants_MediaType.TV && t) return parseInt(t);
6284
6997
  }
6285
6998
  async getDetailWithAnimeId(e, t, n) {
6286
6999
  let [r, i] = e.split(":");
@@ -6303,13 +7016,33 @@ class scrapers_Scraper {
6303
7016
  });
6304
7017
  return this.getEpisodes(...uniqWith(o, isEqual));
6305
7018
  }
7019
+ async getDetailWithSearchParams(e) {
7020
+ let t = [];
7021
+ for (let n of this.scrapers)n.search && t.push(n.search(e).catch((e)=>(console.error(e), [])));
7022
+ let n = (await Promise.all(t)).flat();
7023
+ if (!n.length) return [];
7024
+ let r = this.getEpisodeNumber(e.type, e.episode), i = [];
7025
+ for (let e of n){
7026
+ let t = this.scraperMap[e.provider];
7027
+ if (!t) continue;
7028
+ let n = t.generateIdString({
7029
+ dramaId: e.dramaId
7030
+ });
7031
+ i.push({
7032
+ provider: e.provider,
7033
+ idString: n,
7034
+ episodeNumber: r
7035
+ });
7036
+ }
7037
+ return this.getEpisodes(...uniqWith(i, isEqual));
7038
+ }
6306
7039
  constructor(){
6307
7040
  scrapers_define_property(this, "scrapers", []), scrapers.forEach((e)=>{
6308
7041
  this.scrapers.push(new e());
6309
7042
  });
6310
7043
  }
6311
7044
  }
6312
- const widgetVersion = "0.1.0";
7045
+ const widgetVersion = "0.2.0";
6313
7046
  WidgetMetadata = {
6314
7047
  id: "baranwang.danmu.universe",
6315
7048
  title: "\u901A\u7528\u5F39\u5E55",
@@ -6349,13 +7082,6 @@ WidgetMetadata = {
6349
7082
  functionName: "searchDanmu",
6350
7083
  description: "\u641C\u7D22\u5F39\u5E55"
6351
7084
  },
6352
- {
6353
- type: "danmu",
6354
- id: "getComments",
6355
- title: "\u83B7\u53D6\u5F39\u5E55",
6356
- functionName: "getComments",
6357
- description: "\u83B7\u53D6\u5F39\u5E55"
6358
- },
6359
7085
  {
6360
7086
  type: "danmu",
6361
7087
  id: "getDetail",
@@ -6363,6 +7089,13 @@ WidgetMetadata = {
6363
7089
  functionName: "getDetail",
6364
7090
  description: "\u83B7\u53D6\u8BE6\u60C5"
6365
7091
  },
7092
+ {
7093
+ type: "danmu",
7094
+ id: "getComments",
7095
+ title: "\u83B7\u53D6\u5F39\u5E55",
7096
+ functionName: "getComments",
7097
+ description: "\u83B7\u53D6\u5F39\u5E55"
7098
+ },
6366
7099
  {
6367
7100
  type: "danmu",
6368
7101
  id: "getDanmuWithSegmentTime",
@@ -6374,25 +7107,23 @@ WidgetMetadata = {
6374
7107
  };
6375
7108
  const src_scraper = new scrapers_Scraper();
6376
7109
  searchDanmu = async (e)=>{
6377
- storage.cleanup();
6378
- let { tmdbId: t, type: n, episode: r } = e;
6379
- if (!t) return null;
6380
- let i = await getDoubanIds(e);
6381
- return i.length ? {
6382
- animes: (await src_scraper.getDetailWithDoubanIds(i, n, r)).map((e)=>{
7110
+ let { type: t, episode: n, fuzzyMatch: r = "auto" } = e, i = [], o = await getDoubanIds(e);
7111
+ if (o.length && (i = await src_scraper.getDetailWithDoubanIds(o, t, n)), !(null == i ? void 0 : i.length) && "auto" === r || "always" === r) {
7112
+ let t = await src_scraper.getDetailWithSearchParams(e);
7113
+ i = i.concat(t);
7114
+ }
7115
+ return i.length, {
7116
+ animes: i.map((e)=>{
6383
7117
  let t = `[${PROVIDER_NAMES[e.provider]}] `;
6384
7118
  return e.episodeTitle && (t += e.episodeTitle), {
6385
7119
  animeId: e.episodeId,
6386
7120
  animeTitle: t
6387
7121
  };
6388
7122
  })
6389
- } : null;
7123
+ };
6390
7124
  }, getDetail = async (e)=>{
6391
- let { animeId: t, tmdbId: n, type: r, episode: i } = e;
6392
- if (!n && !t) return null;
6393
- if (t) return src_scraper.getDetailWithAnimeId(t.toString(), r, i);
6394
- let o = await getDoubanIds(e);
6395
- return o.length ? src_scraper.getDetailWithDoubanIds(o, r, i) : null;
7125
+ let { animeId: t, type: n, episode: r } = e;
7126
+ return t ? src_scraper.getDetailWithAnimeId(t.toString(), n, r) : null;
6396
7127
  }, getComments = async (e)=>{
6397
7128
  let { animeId: t, commentId: n, segmentTime: r, tmdbId: i, type: o, episode: s } = e, a = null != n ? n : t;
6398
7129
  if (!a) {