@rexnow/danmu-universal 0.17.0 → 0.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/danmu-universal.js +220 -163
- package/dist/danmu-universal.lite.js +308 -251
- package/package.json +4 -4
package/dist/danmu-universal.js
CHANGED
|
@@ -10225,7 +10225,27 @@ function aB(e = {}) {
|
|
|
10225
10225
|
scraperMap: t
|
|
10226
10226
|
};
|
|
10227
10227
|
}
|
|
10228
|
-
|
|
10228
|
+
let aF = aB().scraperMap;
|
|
10229
|
+
function aL(e, t) {
|
|
10230
|
+
return aF[e].parseProviderIdString(t);
|
|
10231
|
+
}
|
|
10232
|
+
function aR(e, t) {
|
|
10233
|
+
switch(e){
|
|
10234
|
+
case "tencent":
|
|
10235
|
+
return aF.tencent.generateIdString(t);
|
|
10236
|
+
case "youku":
|
|
10237
|
+
return aF.youku.generateIdString(t);
|
|
10238
|
+
case "iqiyi":
|
|
10239
|
+
return aF.iqiyi.generateIdString(t);
|
|
10240
|
+
case "bilibili":
|
|
10241
|
+
return aF.bilibili.generateIdString(t);
|
|
10242
|
+
case "mgtv":
|
|
10243
|
+
return aF.mgtv.generateIdString(t);
|
|
10244
|
+
case "renren":
|
|
10245
|
+
return aF.renren.generateIdString(t);
|
|
10246
|
+
}
|
|
10247
|
+
}
|
|
10248
|
+
function aZ(e, t, r, n, i, o, a) {
|
|
10229
10249
|
try {
|
|
10230
10250
|
var s = e[o](a), l = s.value;
|
|
10231
10251
|
} catch (e) {
|
|
@@ -10234,23 +10254,22 @@ function aF(e, t, r, n, i, o, a) {
|
|
|
10234
10254
|
}
|
|
10235
10255
|
s.done ? t(l) : Promise.resolve(l).then(n, i);
|
|
10236
10256
|
}
|
|
10237
|
-
function
|
|
10257
|
+
function aU(e) {
|
|
10238
10258
|
return function() {
|
|
10239
10259
|
var t = this, r = arguments;
|
|
10240
10260
|
return new Promise(function(n, i) {
|
|
10241
10261
|
var o = e.apply(t, r);
|
|
10242
10262
|
function a(e) {
|
|
10243
|
-
|
|
10263
|
+
aZ(o, n, i, a, s, "next", e);
|
|
10244
10264
|
}
|
|
10245
10265
|
function s(e) {
|
|
10246
|
-
|
|
10266
|
+
aZ(o, n, i, a, s, "throw", e);
|
|
10247
10267
|
}
|
|
10248
10268
|
a(void 0);
|
|
10249
10269
|
});
|
|
10250
10270
|
};
|
|
10251
10271
|
}
|
|
10252
|
-
aB().scraperMap
|
|
10253
|
-
let aR = aB().scraperMap, aZ = ne({
|
|
10272
|
+
let aq = aB().scraperMap, aV = ne({
|
|
10254
10273
|
"global.content.aggregation": nP().catch(!0),
|
|
10255
10274
|
"global.content.conversion": nu([
|
|
10256
10275
|
"original",
|
|
@@ -10284,27 +10303,27 @@ let aR = aB().scraperMap, aZ = ne({
|
|
|
10284
10303
|
}
|
|
10285
10304
|
}
|
|
10286
10305
|
}));
|
|
10287
|
-
function
|
|
10306
|
+
function aH(e) {
|
|
10288
10307
|
return null === e ? 1 : 2 * (void 0 === e);
|
|
10289
10308
|
}
|
|
10290
|
-
function
|
|
10291
|
-
let r =
|
|
10309
|
+
function aW(e, t) {
|
|
10310
|
+
let r = aH(e), n = aH(t);
|
|
10292
10311
|
return r < n ? -1 : r > n ? 1 : 0 !== r ? 0 : e < t ? -1 : +(e > t);
|
|
10293
10312
|
}
|
|
10294
|
-
function
|
|
10295
|
-
function
|
|
10313
|
+
function aK() {}
|
|
10314
|
+
function aG(e) {
|
|
10296
10315
|
return Object.getOwnPropertySymbols(e).filter((t)=>Object.prototype.propertyIsEnumerable.call(e, t));
|
|
10297
10316
|
}
|
|
10298
|
-
function
|
|
10317
|
+
function aY(e) {
|
|
10299
10318
|
return null == e ? void 0 === e ? "[object Undefined]" : "[object Null]" : Object.prototype.toString.call(e);
|
|
10300
10319
|
}
|
|
10301
|
-
let
|
|
10320
|
+
let aJ = "[object Object]", aX = "object" == typeof globalThis && globalThis || "object" == typeof window && window || "object" == typeof self && self || "object" == typeof global && global || function() {
|
|
10302
10321
|
return this;
|
|
10303
10322
|
}();
|
|
10304
|
-
function
|
|
10305
|
-
return void 0 !==
|
|
10323
|
+
function aQ(e) {
|
|
10324
|
+
return void 0 !== aX.Buffer && aX.Buffer.isBuffer(e);
|
|
10306
10325
|
}
|
|
10307
|
-
function
|
|
10326
|
+
function a0(e, t) {
|
|
10308
10327
|
return function e(t, r, n, i, o, a, s) {
|
|
10309
10328
|
let l = s(t, r, n, i, o, a);
|
|
10310
10329
|
if (void 0 !== l) return l;
|
|
@@ -10321,8 +10340,8 @@ function aJ(e, t) {
|
|
|
10321
10340
|
}
|
|
10322
10341
|
return function t(r, n, i, o) {
|
|
10323
10342
|
if (Object.is(r, n)) return !0;
|
|
10324
|
-
let a =
|
|
10325
|
-
if ("[object Arguments]" === a && (a =
|
|
10343
|
+
let a = aY(r), s = aY(n);
|
|
10344
|
+
if ("[object Arguments]" === a && (a = aJ), "[object Arguments]" === s && (s = aJ), a !== s) return !1;
|
|
10326
10345
|
switch(a){
|
|
10327
10346
|
case "[object String]":
|
|
10328
10347
|
return r.toString() === n.toString();
|
|
@@ -10370,7 +10389,7 @@ function aJ(e, t) {
|
|
|
10370
10389
|
case "[object BigInt64Array]":
|
|
10371
10390
|
case "[object Float32Array]":
|
|
10372
10391
|
case "[object Float64Array]":
|
|
10373
|
-
if (
|
|
10392
|
+
if (aQ(r) !== aQ(n) || r.length !== n.length) return !1;
|
|
10374
10393
|
for(let t = 0; t < r.length; t++)if (!e(r[t], n[t], t, r, n, i, o)) return !1;
|
|
10375
10394
|
return !0;
|
|
10376
10395
|
case "[object ArrayBuffer]":
|
|
@@ -10381,15 +10400,15 @@ function aJ(e, t) {
|
|
|
10381
10400
|
return t(new Uint8Array(r), new Uint8Array(n), i, o);
|
|
10382
10401
|
case "[object Error]":
|
|
10383
10402
|
return r.name === n.name && r.message === n.message;
|
|
10384
|
-
case
|
|
10403
|
+
case aJ:
|
|
10385
10404
|
{
|
|
10386
10405
|
if (!(t(r.constructor, n.constructor, i, o) || b(r) && b(n))) return !1;
|
|
10387
10406
|
let a = [
|
|
10388
10407
|
...Object.keys(r),
|
|
10389
|
-
...
|
|
10408
|
+
...aG(r)
|
|
10390
10409
|
], s = [
|
|
10391
10410
|
...Object.keys(n),
|
|
10392
|
-
...
|
|
10411
|
+
...aG(n)
|
|
10393
10412
|
];
|
|
10394
10413
|
if (a.length !== s.length) return !1;
|
|
10395
10414
|
for(let t = 0; t < a.length; t++){
|
|
@@ -10407,9 +10426,9 @@ function aJ(e, t) {
|
|
|
10407
10426
|
i.delete(r), i.delete(n);
|
|
10408
10427
|
}
|
|
10409
10428
|
}(t, r, a, s);
|
|
10410
|
-
}(e, t, void 0, void 0, void 0, void 0,
|
|
10429
|
+
}(e, t, void 0, void 0, void 0, void 0, aK);
|
|
10411
10430
|
}
|
|
10412
|
-
function
|
|
10431
|
+
function a1(e, t, r, n, i, o, a) {
|
|
10413
10432
|
try {
|
|
10414
10433
|
var s = e[o](a), l = s.value;
|
|
10415
10434
|
} catch (e) {
|
|
@@ -10418,22 +10437,22 @@ function aX(e, t, r, n, i, o, a) {
|
|
|
10418
10437
|
}
|
|
10419
10438
|
s.done ? t(l) : Promise.resolve(l).then(n, i);
|
|
10420
10439
|
}
|
|
10421
|
-
function
|
|
10440
|
+
function a2(e) {
|
|
10422
10441
|
return function() {
|
|
10423
10442
|
var t = this, r = arguments;
|
|
10424
10443
|
return new Promise(function(n, i) {
|
|
10425
10444
|
var o = e.apply(t, r);
|
|
10426
10445
|
function a(e) {
|
|
10427
|
-
|
|
10446
|
+
a1(o, n, i, a, s, "next", e);
|
|
10428
10447
|
}
|
|
10429
10448
|
function s(e) {
|
|
10430
|
-
|
|
10449
|
+
a1(o, n, i, a, s, "throw", e);
|
|
10431
10450
|
}
|
|
10432
10451
|
a(void 0);
|
|
10433
10452
|
});
|
|
10434
10453
|
};
|
|
10435
10454
|
}
|
|
10436
|
-
function
|
|
10455
|
+
function a3(e, t, r) {
|
|
10437
10456
|
return t in e ? Object.defineProperty(e, t, {
|
|
10438
10457
|
value: r,
|
|
10439
10458
|
enumerable: !0,
|
|
@@ -10441,31 +10460,31 @@ function a0(e, t, r) {
|
|
|
10441
10460
|
writable: !0
|
|
10442
10461
|
}) : e[t] = r, e;
|
|
10443
10462
|
}
|
|
10444
|
-
function
|
|
10463
|
+
function a4(e) {
|
|
10445
10464
|
for(var t = 1; t < arguments.length; t++){
|
|
10446
10465
|
var r = null != arguments[t] ? arguments[t] : {}, n = Object.keys(r);
|
|
10447
10466
|
"function" == typeof Object.getOwnPropertySymbols && (n = n.concat(Object.getOwnPropertySymbols(r).filter(function(e) {
|
|
10448
10467
|
return Object.getOwnPropertyDescriptor(r, e).enumerable;
|
|
10449
10468
|
}))), n.forEach(function(t) {
|
|
10450
|
-
|
|
10469
|
+
a3(e, t, r[t]);
|
|
10451
10470
|
});
|
|
10452
10471
|
}
|
|
10453
10472
|
return e;
|
|
10454
10473
|
}
|
|
10455
|
-
let
|
|
10474
|
+
let a6 = ne({
|
|
10456
10475
|
url: rN(),
|
|
10457
10476
|
name: rN().optional(),
|
|
10458
10477
|
pubdate: rN().optional(),
|
|
10459
10478
|
period: rN().optional()
|
|
10460
|
-
}),
|
|
10479
|
+
}), a5 = (e, t)=>{
|
|
10461
10480
|
var r;
|
|
10462
10481
|
if (!t) return !0;
|
|
10463
10482
|
let n = null == (r = e.match(/第\s*([0-9零〇一二两三四五六七八九十百千万萬]+)\s*季/)) ? void 0 : r[1], i = n ? il(`第${n}期`).episodeNumber : null;
|
|
10464
10483
|
return null === i ? t <= 1 : i === t;
|
|
10465
|
-
},
|
|
10484
|
+
}, a8 = (e)=>e.replace(/第\s*([0-9零〇一二两三四五六七八九十百千万萬]+)\s*季/g, (e, t)=>{
|
|
10466
10485
|
var r, n;
|
|
10467
10486
|
return null != (n = null == (r = il(`第${t}期`).episodeNumber) ? void 0 : r.toString()) ? n : t;
|
|
10468
|
-
}).replace(/[\s·::,,。!?!?.、\-—_]/g, ""),
|
|
10487
|
+
}).replace(/[\s·::,,。!?!?.、\-—_]/g, ""), a7 = (e)=>{
|
|
10469
10488
|
let t = n$()(e, !0), r = t.pathname.match(/^\/x\/cover\/([^/]+)\/([^/.]+)\.html$/);
|
|
10470
10489
|
if (r) return {
|
|
10471
10490
|
cid: r[1],
|
|
@@ -10476,20 +10495,20 @@ let a2 = ne({
|
|
|
10476
10495
|
cid: n[1]
|
|
10477
10496
|
};
|
|
10478
10497
|
let { cid: i, vid: o } = t.query;
|
|
10479
|
-
return i ?
|
|
10498
|
+
return i ? a4({
|
|
10480
10499
|
cid: i
|
|
10481
10500
|
}, o ? {
|
|
10482
10501
|
vid: o
|
|
10483
10502
|
} : {}) : null;
|
|
10484
|
-
},
|
|
10503
|
+
}, a9 = (e)=>{
|
|
10485
10504
|
var t;
|
|
10486
10505
|
let r = n$()(e, !0), n = r.query.showid || r.query.showId || r.query.s, i = r.query.vid || (null == (t = r.pathname.match(/^\/v_show\/id_(.+)\.html$/)) ? void 0 : t[1]);
|
|
10487
|
-
return n || i ?
|
|
10506
|
+
return n || i ? a4({}, n ? {
|
|
10488
10507
|
showId: n
|
|
10489
10508
|
} : {}, i ? {
|
|
10490
10509
|
vid: i
|
|
10491
10510
|
} : {}) : null;
|
|
10492
|
-
},
|
|
10511
|
+
}, se = (e)=>{
|
|
10493
10512
|
let t = n$()(e, !0), r = t.pathname.match(/^\/b\/([^/]+)\/([^/.]+)\.html$/);
|
|
10494
10513
|
if (r) return {
|
|
10495
10514
|
dramaId: r[1],
|
|
@@ -10499,20 +10518,20 @@ let a2 = ne({
|
|
|
10499
10518
|
return n ? {
|
|
10500
10519
|
dramaId: n[1]
|
|
10501
10520
|
} : null;
|
|
10502
|
-
},
|
|
10521
|
+
}, st = (e, t, r = {})=>{
|
|
10503
10522
|
var n, i, o, a;
|
|
10504
10523
|
if ("string" == typeof e) return (void 0 !== t || (null == (i = r.episodeName) ? void 0 : i.trim()) || is(r.airDate)) && ((e)=>{
|
|
10505
|
-
let t =
|
|
10524
|
+
let t = a7(e);
|
|
10506
10525
|
if (null == t ? void 0 : t.vid) return !0;
|
|
10507
|
-
let r =
|
|
10526
|
+
let r = a9(e);
|
|
10508
10527
|
if (null == r ? void 0 : r.vid) return !0;
|
|
10509
|
-
let n =
|
|
10528
|
+
let n = se(e);
|
|
10510
10529
|
return !!n && "videoId" in n || /^\/v_[^/]+(?:\.html|\/|$)/.test(n$()(e).pathname);
|
|
10511
10530
|
})(e) ? void 0 : e;
|
|
10512
10531
|
if (!(null == e ? void 0 : e.length)) return;
|
|
10513
10532
|
let s = il(null != (o = r.episodeName) ? o : ""), l = is(r.airDate), u = null != (a = s.episodeNumber) ? a : t, c = !1, d = e.map((e, t)=>{
|
|
10514
10533
|
var r, n, i, o;
|
|
10515
|
-
return i =
|
|
10534
|
+
return i = a4({}, e), o = o = {
|
|
10516
10535
|
index: t,
|
|
10517
10536
|
identity: il(null != (r = e.name) ? r : ""),
|
|
10518
10537
|
airDate: is(null != (n = e.pubdate) ? n : e.period)
|
|
@@ -10558,12 +10577,12 @@ let a2 = ne({
|
|
|
10558
10577
|
}
|
|
10559
10578
|
return null == (n = d.sort((e, t)=>e.index - t.index)[0]) ? void 0 : n.url;
|
|
10560
10579
|
}
|
|
10561
|
-
},
|
|
10580
|
+
}, sr = ne({
|
|
10562
10581
|
data: ne({
|
|
10563
|
-
list: r7(
|
|
10582
|
+
list: r7(a6),
|
|
10564
10583
|
total: nZ().optional().default(0)
|
|
10565
10584
|
})
|
|
10566
|
-
}).transform((e)=>e.data),
|
|
10585
|
+
}).transform((e)=>e.data), sn = ne({
|
|
10567
10586
|
data: ne({
|
|
10568
10587
|
longData: nn([
|
|
10569
10588
|
ne({
|
|
@@ -10584,7 +10603,7 @@ let a2 = ne({
|
|
|
10584
10603
|
playlinks_total: ns(rN(), nZ()).optional(),
|
|
10585
10604
|
playlinks: ns(rN(), nn([
|
|
10586
10605
|
rN(),
|
|
10587
|
-
r7(
|
|
10606
|
+
r7(a6)
|
|
10588
10607
|
])).optional()
|
|
10589
10608
|
}).safeParse(e).data) ? t : null;
|
|
10590
10609
|
})).transform((e)=>i_(e))
|
|
@@ -10595,11 +10614,11 @@ let a2 = ne({
|
|
|
10595
10614
|
])
|
|
10596
10615
|
})
|
|
10597
10616
|
}).transform((e)=>e.data.longData.rows);
|
|
10598
|
-
class
|
|
10617
|
+
class si {
|
|
10599
10618
|
selectVarietyUrl(e, t, r, n) {
|
|
10600
|
-
return
|
|
10619
|
+
return a2(function*() {
|
|
10601
10620
|
var i, o, a, s, l, u, c;
|
|
10602
|
-
let d = null == (i = e.playlinks) ? void 0 : i[t], h =
|
|
10621
|
+
let d = null == (i = e.playlinks) ? void 0 : i[t], h = st(d, r, n);
|
|
10603
10622
|
if (h || "3" !== e.cat_id) return h;
|
|
10604
10623
|
let f = null == (o = e.playlinks_total) ? void 0 : o[t];
|
|
10605
10624
|
if (!f && void 0 === d) return;
|
|
@@ -10613,19 +10632,19 @@ class st {
|
|
|
10613
10632
|
count: 20,
|
|
10614
10633
|
offset: i
|
|
10615
10634
|
},
|
|
10616
|
-
schema:
|
|
10635
|
+
schema: sr,
|
|
10617
10636
|
cache: {
|
|
10618
10637
|
cacheKey: `360:variety:${e.id}:${t}:${null != (u = e.year) ? u : ""}:${i}`,
|
|
10619
10638
|
ttl: 7200000
|
|
10620
10639
|
}
|
|
10621
|
-
}), d = null != (c = null == (a = o.data) ? void 0 : a.list) ? c : [], h =
|
|
10640
|
+
}), d = null != (c = null == (a = o.data) ? void 0 : a.list) ? c : [], h = st(d, r, n);
|
|
10622
10641
|
if (h) return h;
|
|
10623
10642
|
if ((null == (s = o.data) ? void 0 : s.total) && (p = Math.min(o.data.total, 100)), !d.length || i + 20 >= p) break;
|
|
10624
10643
|
}
|
|
10625
10644
|
}).call(this);
|
|
10626
10645
|
}
|
|
10627
10646
|
getEpisodeParams(e) {
|
|
10628
|
-
return
|
|
10647
|
+
return a2(function*() {
|
|
10629
10648
|
let { success: t, data: r, error: n } = nV.safeParse(e);
|
|
10630
10649
|
if (!t) return this.logger.error("搜索参数无效,错误:", es(n)), [];
|
|
10631
10650
|
let { seriesName: i, season: o, type: a, episode: s } = r;
|
|
@@ -10665,7 +10684,7 @@ class st {
|
|
|
10665
10684
|
v_ap: "1",
|
|
10666
10685
|
tab: "all"
|
|
10667
10686
|
},
|
|
10668
|
-
schema:
|
|
10687
|
+
schema: sn
|
|
10669
10688
|
});
|
|
10670
10689
|
if (!(null == (u = t.data) ? void 0 : u.length)) continue;
|
|
10671
10690
|
let n = {
|
|
@@ -10688,12 +10707,12 @@ class st {
|
|
|
10688
10707
|
continue;
|
|
10689
10708
|
}
|
|
10690
10709
|
} else {
|
|
10691
|
-
let e =
|
|
10710
|
+
let e = a8(u.titleTxt) === a8(i);
|
|
10692
10711
|
if (!e && !u.titleTxt.includes(i)) {
|
|
10693
10712
|
this.logger.warn("搜索结果中包含的剧集标题与搜索关键词不匹配,跳过");
|
|
10694
10713
|
continue;
|
|
10695
10714
|
}
|
|
10696
|
-
if (!
|
|
10715
|
+
if (!a5(u.titleTxt, o) && (!e || void 0 !== o && o > 1)) {
|
|
10697
10716
|
this.logger.warn("搜索结果中的季数与请求不匹配,跳过");
|
|
10698
10717
|
continue;
|
|
10699
10718
|
}
|
|
@@ -10704,10 +10723,10 @@ class st {
|
|
|
10704
10723
|
}
|
|
10705
10724
|
let t = yield this.selectVarietyUrl(u, "qq", s, n);
|
|
10706
10725
|
if (t) {
|
|
10707
|
-
let e =
|
|
10726
|
+
let e = a7(t);
|
|
10708
10727
|
e && l.push({
|
|
10709
10728
|
provider: "tencent",
|
|
10710
|
-
idString:
|
|
10729
|
+
idString: sc.scraperMap.tencent.generateIdString(e),
|
|
10711
10730
|
episodeNumber: s,
|
|
10712
10731
|
episodeName: r.episodeName,
|
|
10713
10732
|
airDate: r.airDate
|
|
@@ -10715,10 +10734,10 @@ class st {
|
|
|
10715
10734
|
}
|
|
10716
10735
|
let h = yield this.selectVarietyUrl(u, "youku", s, n);
|
|
10717
10736
|
if (h) {
|
|
10718
|
-
let e =
|
|
10737
|
+
let e = a9(h);
|
|
10719
10738
|
e && l.push({
|
|
10720
10739
|
provider: "youku",
|
|
10721
|
-
idString:
|
|
10740
|
+
idString: sc.scraperMap.youku.generateIdString(e),
|
|
10722
10741
|
episodeNumber: s,
|
|
10723
10742
|
episodeName: r.episodeName,
|
|
10724
10743
|
airDate: r.airDate
|
|
@@ -10726,10 +10745,10 @@ class st {
|
|
|
10726
10745
|
}
|
|
10727
10746
|
let f = yield this.selectVarietyUrl(u, "qiyi", s, n);
|
|
10728
10747
|
if (f) {
|
|
10729
|
-
let e = null == (c = f.match(/\/v_([^/]+?)(\/|.html|$)/)) ? void 0 : c[1], t = e ?
|
|
10748
|
+
let e = null == (c = f.match(/\/v_([^/]+?)(\/|.html|$)/)) ? void 0 : c[1], t = e ? sc.scraperMap.iqiyi.videoIdToEntityId(e) : void 0;
|
|
10730
10749
|
t && l.push({
|
|
10731
10750
|
provider: "iqiyi",
|
|
10732
|
-
idString:
|
|
10751
|
+
idString: sc.scraperMap.iqiyi.generateIdString({
|
|
10733
10752
|
entityId: t,
|
|
10734
10753
|
episodeId: t
|
|
10735
10754
|
}),
|
|
@@ -10745,7 +10764,7 @@ class st {
|
|
|
10745
10764
|
})).data.match(/"season_id":(\d+)/)) ? void 0 : d[1];
|
|
10746
10765
|
e && l.push({
|
|
10747
10766
|
provider: "bilibili",
|
|
10748
|
-
idString:
|
|
10767
|
+
idString: sc.scraperMap.bilibili.generateIdString({
|
|
10749
10768
|
seasonId: e
|
|
10750
10769
|
}),
|
|
10751
10770
|
episodeNumber: s,
|
|
@@ -10755,10 +10774,10 @@ class st {
|
|
|
10755
10774
|
}
|
|
10756
10775
|
let m = yield this.selectVarietyUrl(u, "imgo", s, n);
|
|
10757
10776
|
if (m) {
|
|
10758
|
-
let e =
|
|
10777
|
+
let e = se(m);
|
|
10759
10778
|
e && l.push({
|
|
10760
10779
|
provider: "mgtv",
|
|
10761
|
-
idString:
|
|
10780
|
+
idString: sc.scraperMap.mgtv.generateIdString(e),
|
|
10762
10781
|
episodeNumber: s,
|
|
10763
10782
|
episodeName: r.episodeName,
|
|
10764
10783
|
airDate: r.airDate
|
|
@@ -10771,10 +10790,10 @@ class st {
|
|
|
10771
10790
|
}).call(this);
|
|
10772
10791
|
}
|
|
10773
10792
|
constructor(){
|
|
10774
|
-
|
|
10793
|
+
a3(this, "logger", new nT("360")), a3(this, "fetch", new ef()), a3(this, "BASE_API", "https://api.so.360kan.com");
|
|
10775
10794
|
}
|
|
10776
10795
|
}
|
|
10777
|
-
let
|
|
10796
|
+
let so = no(aV, ne({
|
|
10778
10797
|
"global.content.preserveDanmakuColor": nu([
|
|
10779
10798
|
"true",
|
|
10780
10799
|
"false"
|
|
@@ -10786,7 +10805,7 @@ let sr = no(aZ, ne({
|
|
|
10786
10805
|
}
|
|
10787
10806
|
}
|
|
10788
10807
|
})));
|
|
10789
|
-
function
|
|
10808
|
+
function sa(e, t, r, n, i, o, a) {
|
|
10790
10809
|
try {
|
|
10791
10810
|
var s = e[o](a), l = s.value;
|
|
10792
10811
|
} catch (e) {
|
|
@@ -10795,22 +10814,22 @@ function sn(e, t, r, n, i, o, a) {
|
|
|
10795
10814
|
}
|
|
10796
10815
|
s.done ? t(l) : Promise.resolve(l).then(n, i);
|
|
10797
10816
|
}
|
|
10798
|
-
function
|
|
10817
|
+
function ss(e) {
|
|
10799
10818
|
return function() {
|
|
10800
10819
|
var t = this, r = arguments;
|
|
10801
10820
|
return new Promise(function(n, i) {
|
|
10802
10821
|
var o = e.apply(t, r);
|
|
10803
10822
|
function a(e) {
|
|
10804
|
-
|
|
10823
|
+
sa(o, n, i, a, s, "next", e);
|
|
10805
10824
|
}
|
|
10806
10825
|
function s(e) {
|
|
10807
|
-
|
|
10826
|
+
sa(o, n, i, a, s, "throw", e);
|
|
10808
10827
|
}
|
|
10809
10828
|
a(void 0);
|
|
10810
10829
|
});
|
|
10811
10830
|
};
|
|
10812
10831
|
}
|
|
10813
|
-
function
|
|
10832
|
+
function sl(e, t, r) {
|
|
10814
10833
|
return t in e ? Object.defineProperty(e, t, {
|
|
10815
10834
|
value: r,
|
|
10816
10835
|
enumerable: !0,
|
|
@@ -10818,18 +10837,18 @@ function so(e, t, r) {
|
|
|
10818
10837
|
writable: !0
|
|
10819
10838
|
}) : e[t] = r, e;
|
|
10820
10839
|
}
|
|
10821
|
-
function
|
|
10840
|
+
function su(e) {
|
|
10822
10841
|
for(var t = 1; t < arguments.length; t++){
|
|
10823
10842
|
var r = null != arguments[t] ? arguments[t] : {}, n = Object.keys(r);
|
|
10824
10843
|
"function" == typeof Object.getOwnPropertySymbols && (n = n.concat(Object.getOwnPropertySymbols(r).filter(function(e) {
|
|
10825
10844
|
return Object.getOwnPropertyDescriptor(r, e).enumerable;
|
|
10826
10845
|
}))), n.forEach(function(t) {
|
|
10827
|
-
|
|
10846
|
+
sl(e, t, r[t]);
|
|
10828
10847
|
});
|
|
10829
10848
|
}
|
|
10830
10849
|
return e;
|
|
10831
10850
|
}
|
|
10832
|
-
let
|
|
10851
|
+
let sc = new class {
|
|
10833
10852
|
get conversionConverter() {
|
|
10834
10853
|
{
|
|
10835
10854
|
let e = v(466), t = this.globalParams.global.content.conversion;
|
|
@@ -10846,7 +10865,7 @@ let ss = new class {
|
|
|
10846
10865
|
return this._scraperMap;
|
|
10847
10866
|
}
|
|
10848
10867
|
getSegmentsByProvider(e, t) {
|
|
10849
|
-
return
|
|
10868
|
+
return ss(function*() {
|
|
10850
10869
|
var r, n;
|
|
10851
10870
|
let i = this.scraperMap[e];
|
|
10852
10871
|
if (!i) return [];
|
|
@@ -10859,7 +10878,7 @@ let ss = new class {
|
|
|
10859
10878
|
let i = n.length;
|
|
10860
10879
|
for(let s = 0; s < r.length; s++){
|
|
10861
10880
|
var o, a;
|
|
10862
|
-
let l = i > s ? n[s] : n[i - 1], u = r[s], c = "function" == typeof u, d = (o = c ? u(e) : e[u], a = c ? u(t) : t[u], "asc" === l ?
|
|
10881
|
+
let l = i > s ? n[s] : n[i - 1], u = r[s], c = "function" == typeof u, d = (o = c ? u(e) : e[u], a = c ? u(t) : t[u], "asc" === l ? aW(o, a) : aW(a, o));
|
|
10863
10882
|
if (0 !== d) return d;
|
|
10864
10883
|
}
|
|
10865
10884
|
return 0;
|
|
@@ -10878,8 +10897,8 @@ let ss = new class {
|
|
|
10878
10897
|
return o < 0 ? null : null != (r = e[o]) ? r : null;
|
|
10879
10898
|
}
|
|
10880
10899
|
getSegmentWithTime(e = 0, ...t) {
|
|
10881
|
-
return
|
|
10882
|
-
let r = this.conversionConverter, n = t.map(({ provider: t, idString: r })=>
|
|
10900
|
+
return ss(function*() {
|
|
10901
|
+
let r = this.conversionConverter, n = t.map(({ provider: t, idString: r })=>ss(function*() {
|
|
10883
10902
|
try {
|
|
10884
10903
|
let n = yield this.getSegmentsByProvider(t, r);
|
|
10885
10904
|
if (!n.length) return null;
|
|
@@ -10939,7 +10958,7 @@ let ss = new class {
|
|
|
10939
10958
|
return this.getSegmentWithTime(t, ...r);
|
|
10940
10959
|
}
|
|
10941
10960
|
getEpisodes(...e) {
|
|
10942
|
-
return
|
|
10961
|
+
return ss(function*() {
|
|
10943
10962
|
let t = [];
|
|
10944
10963
|
for (let { provider: r, idString: n, episodeNumber: i, episodeName: o, airDate: a } of function(e, t) {
|
|
10945
10964
|
let r = [];
|
|
@@ -10948,7 +10967,7 @@ let ss = new class {
|
|
|
10948
10967
|
r.every((e)=>!t(e, i)) && r.push(i);
|
|
10949
10968
|
}
|
|
10950
10969
|
return r;
|
|
10951
|
-
}(e,
|
|
10970
|
+
}(e, a0)){
|
|
10952
10971
|
let e = this.scraperMap[r];
|
|
10953
10972
|
e && t.push(e.getEpisodes(n, i, {
|
|
10954
10973
|
episodeName: o,
|
|
@@ -10957,7 +10976,7 @@ let ss = new class {
|
|
|
10957
10976
|
}
|
|
10958
10977
|
return (yield Promise.all(t).catch((e)=>(console.error(e), []))).flat().map((e)=>{
|
|
10959
10978
|
var t, r;
|
|
10960
|
-
return t =
|
|
10979
|
+
return t = su({}, e), r = r = {
|
|
10961
10980
|
episodeId: `${e.provider}:${e.episodeId}`
|
|
10962
10981
|
}, Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(r)) : (function(e, t) {
|
|
10963
10982
|
var r = Object.keys(e);
|
|
@@ -10976,9 +10995,9 @@ let ss = new class {
|
|
|
10976
10995
|
if ("tv" === e && t) return parseInt(t, 10);
|
|
10977
10996
|
}
|
|
10978
10997
|
getDetailWithAnimeId(e, t, r) {
|
|
10979
|
-
return
|
|
10998
|
+
return ss(function*(e, t, r, n = {}) {
|
|
10980
10999
|
let [i, o] = e.split(":");
|
|
10981
|
-
return yield this.getEpisodes(
|
|
11000
|
+
return yield this.getEpisodes(su({
|
|
10982
11001
|
provider: i,
|
|
10983
11002
|
idString: o,
|
|
10984
11003
|
episodeNumber: this.getEpisodeNumber(t, r)
|
|
@@ -10986,7 +11005,7 @@ let ss = new class {
|
|
|
10986
11005
|
}).apply(this, arguments);
|
|
10987
11006
|
}
|
|
10988
11007
|
getEpisodeParams(e) {
|
|
10989
|
-
return
|
|
11008
|
+
return ss(function*() {
|
|
10990
11009
|
let t = [];
|
|
10991
11010
|
for (let r of this.scrapers)r.search && t.push(r.search(e).catch((e)=>(console.error(e), [])));
|
|
10992
11011
|
let r = (yield Promise.all(t)).flat(), n = this.getEpisodeNumber(e.type, e.episode), i = [];
|
|
@@ -11006,7 +11025,7 @@ let ss = new class {
|
|
|
11006
11025
|
} catch (e) {}
|
|
11007
11026
|
try {
|
|
11008
11027
|
if ("true" === e.qihooSearch) {
|
|
11009
|
-
let t = new
|
|
11028
|
+
let t = new si(), r = yield t.getEpisodeParams(e);
|
|
11010
11029
|
i.push(...r);
|
|
11011
11030
|
}
|
|
11012
11031
|
} catch (e) {}
|
|
@@ -11014,18 +11033,18 @@ let ss = new class {
|
|
|
11014
11033
|
}).call(this);
|
|
11015
11034
|
}
|
|
11016
11035
|
setGlobalParams(e) {
|
|
11017
|
-
let { success: t, data: r } =
|
|
11036
|
+
let { success: t, data: r } = so.safeParse(e);
|
|
11018
11037
|
return t && (this.globalParams = r, this.scrapers.forEach((e)=>{
|
|
11019
11038
|
e.providerConfig = r.provider;
|
|
11020
11039
|
})), r;
|
|
11021
11040
|
}
|
|
11022
11041
|
constructor(){
|
|
11023
|
-
|
|
11042
|
+
sl(this, "scrapers", []), sl(this, "globalParams", {}), sl(this, "_scraperMap", void 0);
|
|
11024
11043
|
let e = aB();
|
|
11025
11044
|
this.scrapers = e.scrapers, this._scraperMap = e.scraperMap;
|
|
11026
11045
|
}
|
|
11027
11046
|
}();
|
|
11028
|
-
function
|
|
11047
|
+
function sd(e, t, r, n, i, o, a) {
|
|
11029
11048
|
try {
|
|
11030
11049
|
var s = e[o](a), l = s.value;
|
|
11031
11050
|
} catch (e) {
|
|
@@ -11034,31 +11053,31 @@ function sl(e, t, r, n, i, o, a) {
|
|
|
11034
11053
|
}
|
|
11035
11054
|
s.done ? t(l) : Promise.resolve(l).then(n, i);
|
|
11036
11055
|
}
|
|
11037
|
-
function
|
|
11056
|
+
function sh(e) {
|
|
11038
11057
|
return function() {
|
|
11039
11058
|
var t = this, r = arguments;
|
|
11040
11059
|
return new Promise(function(n, i) {
|
|
11041
11060
|
var o = e.apply(t, r);
|
|
11042
11061
|
function a(e) {
|
|
11043
|
-
|
|
11062
|
+
sd(o, n, i, a, s, "next", e);
|
|
11044
11063
|
}
|
|
11045
11064
|
function s(e) {
|
|
11046
|
-
|
|
11065
|
+
sd(o, n, i, a, s, "throw", e);
|
|
11047
11066
|
}
|
|
11048
11067
|
a(void 0);
|
|
11049
11068
|
});
|
|
11050
11069
|
};
|
|
11051
11070
|
}
|
|
11052
|
-
let
|
|
11071
|
+
let sf = ne({
|
|
11053
11072
|
season: nZ().optional().default(1),
|
|
11054
11073
|
pageSize: nZ().optional().default(20),
|
|
11055
11074
|
pageToken: rN().optional()
|
|
11056
|
-
}),
|
|
11057
|
-
class
|
|
11075
|
+
}), sp = "https://api.imdbapi.dev";
|
|
11076
|
+
class sm {
|
|
11058
11077
|
getImdbEpisodes(e, t) {
|
|
11059
|
-
return
|
|
11060
|
-
let { season: r, pageSize: n, pageToken: i } =
|
|
11061
|
-
return (yield this.fetch.get(`${
|
|
11078
|
+
return sh(function*() {
|
|
11079
|
+
let { season: r, pageSize: n, pageToken: i } = sf.parse(null != t ? t : {});
|
|
11080
|
+
return (yield this.fetch.get(`${sp}/titles/${e}/episodes`, {
|
|
11062
11081
|
params: {
|
|
11063
11082
|
season: r,
|
|
11064
11083
|
pageSize: n,
|
|
@@ -11090,8 +11109,8 @@ class sh {
|
|
|
11090
11109
|
}).call(this);
|
|
11091
11110
|
}
|
|
11092
11111
|
getImdbSeasons(e) {
|
|
11093
|
-
return
|
|
11094
|
-
return (yield this.fetch.get(`${
|
|
11112
|
+
return sh(function*() {
|
|
11113
|
+
return (yield this.fetch.get(`${sp}/titles/${e}/seasons`, {
|
|
11095
11114
|
cache: {
|
|
11096
11115
|
cacheKey: [
|
|
11097
11116
|
"imdb:seasons",
|
|
@@ -11117,7 +11136,7 @@ class sh {
|
|
|
11117
11136
|
}) : this[e] = t;
|
|
11118
11137
|
}
|
|
11119
11138
|
}
|
|
11120
|
-
function
|
|
11139
|
+
function sg(e, t, r, n, i, o, a) {
|
|
11121
11140
|
try {
|
|
11122
11141
|
var s = e[o](a), l = s.value;
|
|
11123
11142
|
} catch (e) {
|
|
@@ -11126,7 +11145,7 @@ function sf(e, t, r, n, i, o, a) {
|
|
|
11126
11145
|
}
|
|
11127
11146
|
s.done ? t(l) : Promise.resolve(l).then(n, i);
|
|
11128
11147
|
}
|
|
11129
|
-
class
|
|
11148
|
+
class sv {
|
|
11130
11149
|
getExternalIds(e, t) {
|
|
11131
11150
|
var r;
|
|
11132
11151
|
return (r = function*() {
|
|
@@ -11139,17 +11158,17 @@ class sp {
|
|
|
11139
11158
|
return new Promise(function(n, i) {
|
|
11140
11159
|
var o = r.apply(e, t);
|
|
11141
11160
|
function a(e) {
|
|
11142
|
-
|
|
11161
|
+
sg(o, n, i, a, s, "next", e);
|
|
11143
11162
|
}
|
|
11144
11163
|
function s(e) {
|
|
11145
|
-
|
|
11164
|
+
sg(o, n, i, a, s, "throw", e);
|
|
11146
11165
|
}
|
|
11147
11166
|
a(void 0);
|
|
11148
11167
|
});
|
|
11149
11168
|
})();
|
|
11150
11169
|
}
|
|
11151
11170
|
}
|
|
11152
|
-
function
|
|
11171
|
+
function sy(e, t, r, n, i, o, a) {
|
|
11153
11172
|
try {
|
|
11154
11173
|
var s = e[o](a), l = s.value;
|
|
11155
11174
|
} catch (e) {
|
|
@@ -11158,22 +11177,22 @@ function sm(e, t, r, n, i, o, a) {
|
|
|
11158
11177
|
}
|
|
11159
11178
|
s.done ? t(l) : Promise.resolve(l).then(n, i);
|
|
11160
11179
|
}
|
|
11161
|
-
function
|
|
11180
|
+
function sb(e) {
|
|
11162
11181
|
return function() {
|
|
11163
11182
|
var t = this, r = arguments;
|
|
11164
11183
|
return new Promise(function(n, i) {
|
|
11165
11184
|
var o = e.apply(t, r);
|
|
11166
11185
|
function a(e) {
|
|
11167
|
-
|
|
11186
|
+
sy(o, n, i, a, s, "next", e);
|
|
11168
11187
|
}
|
|
11169
11188
|
function s(e) {
|
|
11170
|
-
|
|
11189
|
+
sy(o, n, i, a, s, "throw", e);
|
|
11171
11190
|
}
|
|
11172
11191
|
a(void 0);
|
|
11173
11192
|
});
|
|
11174
11193
|
};
|
|
11175
11194
|
}
|
|
11176
|
-
function
|
|
11195
|
+
function sw(e, t, r) {
|
|
11177
11196
|
return t in e ? Object.defineProperty(e, t, {
|
|
11178
11197
|
value: r,
|
|
11179
11198
|
enumerable: !0,
|
|
@@ -11181,9 +11200,9 @@ function sv(e, t, r) {
|
|
|
11181
11200
|
writable: !0
|
|
11182
11201
|
}) : e[t] = r, e;
|
|
11183
11202
|
}
|
|
11184
|
-
class
|
|
11203
|
+
class s_ {
|
|
11185
11204
|
getDoubanInfoByImdbId(e, t) {
|
|
11186
|
-
return
|
|
11205
|
+
return sb(function*() {
|
|
11187
11206
|
var r, n, i, o, a, s;
|
|
11188
11207
|
let l = e;
|
|
11189
11208
|
if (t && "1" !== t.toString()) {
|
|
@@ -11220,14 +11239,14 @@ class sy {
|
|
|
11220
11239
|
}).call(this);
|
|
11221
11240
|
}
|
|
11222
11241
|
getDoubanInfoByTmdbId(e, t, r) {
|
|
11223
|
-
return
|
|
11242
|
+
return sb(function*() {
|
|
11224
11243
|
if (!t) return null;
|
|
11225
11244
|
let n = yield this.tmdbMatcher.getExternalIds(e, t);
|
|
11226
11245
|
return (this.logger.info("Get external ids by tmdb id", n), n.imdb_id) ? this.getDoubanInfoByImdbId(n.imdb_id, r) : null;
|
|
11227
11246
|
}).call(this);
|
|
11228
11247
|
}
|
|
11229
11248
|
searchDoubanInfoByName(e) {
|
|
11230
|
-
return
|
|
11249
|
+
return sb(function*() {
|
|
11231
11250
|
var t, r;
|
|
11232
11251
|
return e && null != (r = null == (t = (yield this.fetch.get("https://m.douban.com/rexxar/api/v2/search", {
|
|
11233
11252
|
params: {
|
|
@@ -11267,7 +11286,7 @@ class sy {
|
|
|
11267
11286
|
}).call(this);
|
|
11268
11287
|
}
|
|
11269
11288
|
getVideoPlatformInfoByDoubanId(e) {
|
|
11270
|
-
return
|
|
11289
|
+
return sb(function*() {
|
|
11271
11290
|
var t, r;
|
|
11272
11291
|
this.logger.info("获取视频平台信息", e);
|
|
11273
11292
|
let n = yield this.fetch.get(`https://m.douban.com/rexxar/api/v2/movie/${e}?for_mobile=1`, {
|
|
@@ -11297,10 +11316,10 @@ class sy {
|
|
|
11297
11316
|
for (let e of null != (r = null == (t = n.data) ? void 0 : t.vendors) ? r : []){
|
|
11298
11317
|
if (!e) continue;
|
|
11299
11318
|
let t = yield function(e) {
|
|
11300
|
-
return
|
|
11319
|
+
return aU(function*() {
|
|
11301
11320
|
for (let t of nB){
|
|
11302
11321
|
let r = yield function(e, t) {
|
|
11303
|
-
return
|
|
11322
|
+
return aU(function*() {
|
|
11304
11323
|
var r;
|
|
11305
11324
|
let n;
|
|
11306
11325
|
if (!nF.has(e)) return null;
|
|
@@ -11309,8 +11328,8 @@ class sy {
|
|
|
11309
11328
|
} catch (e) {
|
|
11310
11329
|
return null;
|
|
11311
11330
|
}
|
|
11312
|
-
return r = n,
|
|
11313
|
-
let n =
|
|
11331
|
+
return r = n, aU(function*() {
|
|
11332
|
+
let n = aq[e], i = yield n.parseProviderUrl(r);
|
|
11314
11333
|
if (!i) return null;
|
|
11315
11334
|
let o = n.generateIdString(i);
|
|
11316
11335
|
return {
|
|
@@ -11348,13 +11367,13 @@ class sy {
|
|
|
11348
11367
|
case "qq":
|
|
11349
11368
|
if ((null == t ? void 0 : t.provider) === "tencent") i.push({
|
|
11350
11369
|
provider: "tencent",
|
|
11351
|
-
idString:
|
|
11370
|
+
idString: sc.scraperMap.tencent.generateIdString(t.id)
|
|
11352
11371
|
});
|
|
11353
11372
|
else {
|
|
11354
11373
|
let { cid: e, vid: t } = r.query;
|
|
11355
11374
|
e && i.push({
|
|
11356
11375
|
provider: "tencent",
|
|
11357
|
-
idString:
|
|
11376
|
+
idString: sc.scraperMap.tencent.generateIdString({
|
|
11358
11377
|
cid: e,
|
|
11359
11378
|
vid: t
|
|
11360
11379
|
})
|
|
@@ -11364,13 +11383,13 @@ class sy {
|
|
|
11364
11383
|
case "iqiyi":
|
|
11365
11384
|
if ((null == t ? void 0 : t.provider) === "iqiyi") i.push({
|
|
11366
11385
|
provider: "iqiyi",
|
|
11367
|
-
idString:
|
|
11386
|
+
idString: sc.scraperMap.iqiyi.generateIdString(t.id)
|
|
11368
11387
|
});
|
|
11369
11388
|
else {
|
|
11370
11389
|
let { tvid: e } = r.query;
|
|
11371
11390
|
e && i.push({
|
|
11372
11391
|
provider: "iqiyi",
|
|
11373
|
-
idString:
|
|
11392
|
+
idString: sc.scraperMap.iqiyi.generateIdString({
|
|
11374
11393
|
entityId: e
|
|
11375
11394
|
})
|
|
11376
11395
|
});
|
|
@@ -11379,13 +11398,13 @@ class sy {
|
|
|
11379
11398
|
case "youku":
|
|
11380
11399
|
if ((null == t ? void 0 : t.provider) === "youku") i.push({
|
|
11381
11400
|
provider: "youku",
|
|
11382
|
-
idString:
|
|
11401
|
+
idString: sc.scraperMap.youku.generateIdString(t.id)
|
|
11383
11402
|
});
|
|
11384
11403
|
else {
|
|
11385
11404
|
let { showid: e, vid: t } = r.query;
|
|
11386
11405
|
(e || t) && i.push({
|
|
11387
11406
|
provider: "youku",
|
|
11388
|
-
idString:
|
|
11407
|
+
idString: sc.scraperMap.youku.generateIdString({
|
|
11389
11408
|
showId: e,
|
|
11390
11409
|
vid: t
|
|
11391
11410
|
})
|
|
@@ -11395,13 +11414,13 @@ class sy {
|
|
|
11395
11414
|
case "bilibili":
|
|
11396
11415
|
if ((null == t ? void 0 : t.provider) === "bilibili") i.push({
|
|
11397
11416
|
provider: "bilibili",
|
|
11398
|
-
idString:
|
|
11417
|
+
idString: sc.scraperMap.bilibili.generateIdString(t.id)
|
|
11399
11418
|
});
|
|
11400
11419
|
else {
|
|
11401
11420
|
let e = r.pathname.split("/").pop();
|
|
11402
11421
|
e && /\d+/.test(e) && i.push({
|
|
11403
11422
|
provider: "bilibili",
|
|
11404
|
-
idString:
|
|
11423
|
+
idString: sc.scraperMap.bilibili.generateIdString({
|
|
11405
11424
|
seasonId: e
|
|
11406
11425
|
})
|
|
11407
11426
|
});
|
|
@@ -11412,7 +11431,7 @@ class sy {
|
|
|
11412
11431
|
}).call(this);
|
|
11413
11432
|
}
|
|
11414
11433
|
getDoubanIds(e) {
|
|
11415
|
-
return
|
|
11434
|
+
return sb(function*() {
|
|
11416
11435
|
let t = new Set(), { tmdbId: r, type: n, seriesName: i, season: o, fuzzyMatch: a } = nV.parse(e);
|
|
11417
11436
|
try {
|
|
11418
11437
|
let e = yield this.getDoubanInfoByTmdbId(n, r, o);
|
|
@@ -11430,7 +11449,7 @@ class sy {
|
|
|
11430
11449
|
}).call(this);
|
|
11431
11450
|
}
|
|
11432
11451
|
getEpisodeParams(e) {
|
|
11433
|
-
return
|
|
11452
|
+
return sb(function*() {
|
|
11434
11453
|
let t = yield this.getDoubanIds(e);
|
|
11435
11454
|
this.logger.info("获取到豆瓣ID", t);
|
|
11436
11455
|
let r = [];
|
|
@@ -11445,10 +11464,10 @@ class sy {
|
|
|
11445
11464
|
}).call(this);
|
|
11446
11465
|
}
|
|
11447
11466
|
constructor(){
|
|
11448
|
-
|
|
11467
|
+
sw(this, "logger", new nT("豆瓣")), sw(this, "tmdbMatcher", new sv()), sw(this, "imdbMatcher", new sm()), sw(this, "fetch", new ef()), sw(this, "DOUBAN_API_KEY", "0ac44ae016490db2204ce0a042db2916");
|
|
11449
11468
|
}
|
|
11450
11469
|
}
|
|
11451
|
-
let
|
|
11470
|
+
let sx = {}, sO = {
|
|
11452
11471
|
91097: [
|
|
11453
11472
|
{
|
|
11454
11473
|
provider: "bilibili",
|
|
@@ -11496,13 +11515,13 @@ let sb = {}, sw = {
|
|
|
11496
11515
|
206484: [
|
|
11497
11516
|
{
|
|
11498
11517
|
provider: "tencent",
|
|
11499
|
-
idString: "cid=mzc00200z195unq
|
|
11518
|
+
idString: "cid=mzc00200z195unq",
|
|
11500
11519
|
season: 3,
|
|
11501
11520
|
epOffset: 0
|
|
11502
11521
|
},
|
|
11503
11522
|
{
|
|
11504
11523
|
provider: "tencent",
|
|
11505
|
-
idString: "cid=mzc00200w9z1axf
|
|
11524
|
+
idString: "cid=mzc00200w9z1axf",
|
|
11506
11525
|
season: 4,
|
|
11507
11526
|
epOffset: 0
|
|
11508
11527
|
}
|
|
@@ -11510,15 +11529,23 @@ let sb = {}, sw = {
|
|
|
11510
11529
|
229192: [
|
|
11511
11530
|
{
|
|
11512
11531
|
provider: "youku",
|
|
11513
|
-
idString: "showId=adaec02f09f9469ab8d8
|
|
11532
|
+
idString: "showId=adaec02f09f9469ab8d8",
|
|
11514
11533
|
season: 1,
|
|
11515
11534
|
epOffset: 0
|
|
11516
11535
|
}
|
|
11517
11536
|
],
|
|
11537
|
+
231620: [
|
|
11538
|
+
{
|
|
11539
|
+
provider: "tencent",
|
|
11540
|
+
idString: "cid=mzc002001bk7moh",
|
|
11541
|
+
season: 4,
|
|
11542
|
+
epOffset: 0
|
|
11543
|
+
}
|
|
11544
|
+
],
|
|
11518
11545
|
259231: [
|
|
11519
11546
|
{
|
|
11520
11547
|
provider: "tencent",
|
|
11521
|
-
idString: "cid=mzc002000iis17y
|
|
11548
|
+
idString: "cid=mzc002000iis17y",
|
|
11522
11549
|
season: 2,
|
|
11523
11550
|
epOffset: 0
|
|
11524
11551
|
}
|
|
@@ -11540,7 +11567,7 @@ let sb = {}, sw = {
|
|
|
11540
11567
|
}
|
|
11541
11568
|
]
|
|
11542
11569
|
};
|
|
11543
|
-
function
|
|
11570
|
+
function sk(e, t, r, n, i, o, a) {
|
|
11544
11571
|
try {
|
|
11545
11572
|
var s = e[o](a), l = s.value;
|
|
11546
11573
|
} catch (e) {
|
|
@@ -11549,22 +11576,22 @@ function s_(e, t, r, n, i, o, a) {
|
|
|
11549
11576
|
}
|
|
11550
11577
|
s.done ? t(l) : Promise.resolve(l).then(n, i);
|
|
11551
11578
|
}
|
|
11552
|
-
function
|
|
11579
|
+
function sS(e) {
|
|
11553
11580
|
return function() {
|
|
11554
11581
|
var t = this, r = arguments;
|
|
11555
11582
|
return new Promise(function(n, i) {
|
|
11556
11583
|
var o = e.apply(t, r);
|
|
11557
11584
|
function a(e) {
|
|
11558
|
-
|
|
11585
|
+
sk(o, n, i, a, s, "next", e);
|
|
11559
11586
|
}
|
|
11560
11587
|
function s(e) {
|
|
11561
|
-
|
|
11588
|
+
sk(o, n, i, a, s, "throw", e);
|
|
11562
11589
|
}
|
|
11563
11590
|
a(void 0);
|
|
11564
11591
|
});
|
|
11565
11592
|
};
|
|
11566
11593
|
}
|
|
11567
|
-
function
|
|
11594
|
+
function sP(e) {
|
|
11568
11595
|
for(var t = 1; t < arguments.length; t++){
|
|
11569
11596
|
var r = null != arguments[t] ? arguments[t] : {}, n = Object.keys(r);
|
|
11570
11597
|
"function" == typeof Object.getOwnPropertySymbols && (n = n.concat(Object.getOwnPropertySymbols(r).filter(function(e) {
|
|
@@ -11581,7 +11608,7 @@ function sO(e) {
|
|
|
11581
11608
|
}
|
|
11582
11609
|
return e;
|
|
11583
11610
|
}
|
|
11584
|
-
function
|
|
11611
|
+
function sI(e, t) {
|
|
11585
11612
|
return t = null != t ? t : {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : (function(e, t) {
|
|
11586
11613
|
var r = Object.keys(e);
|
|
11587
11614
|
if (Object.getOwnPropertySymbols) {
|
|
@@ -11598,7 +11625,7 @@ WidgetMetadata = {
|
|
|
11598
11625
|
title: "通用弹幕",
|
|
11599
11626
|
description: "通用弹幕插件,支持腾讯、优酷、爱奇艺、哔哩哔哩、人人视频等平台",
|
|
11600
11627
|
author: "Baran",
|
|
11601
|
-
version: "0.17.
|
|
11628
|
+
version: "0.17.1",
|
|
11602
11629
|
site: "https://github.com/baranwang/rex-widget/tree/main/apps/danmu-universal",
|
|
11603
11630
|
requiredVersion: "0.0.2",
|
|
11604
11631
|
globalParams: [
|
|
@@ -11814,13 +11841,13 @@ WidgetMetadata = {
|
|
|
11814
11841
|
description: "获取弹幕切片"
|
|
11815
11842
|
}
|
|
11816
11843
|
]
|
|
11817
|
-
}, searchDanmu = (e)=>
|
|
11844
|
+
}, searchDanmu = (e)=>sS(function*() {
|
|
11818
11845
|
let t;
|
|
11819
11846
|
console.log("searchDanmu params", e);
|
|
11820
|
-
let r =
|
|
11821
|
-
let n = r ? "tv" !== i ? t : t.map((e)=>
|
|
11847
|
+
let r = sc.setGlobalParams(e), { fuzzyMatch: n = "auto", type: i, episode: o } = e, a = (t, r = !0)=>sS(function*() {
|
|
11848
|
+
let n = r ? "tv" !== i ? t : t.map((e)=>sI(sP({}, e), {
|
|
11822
11849
|
episodeNumber: o ? parseInt(o, 10) : e.episodeNumber
|
|
11823
|
-
})) : t, a = yield
|
|
11850
|
+
})) : t, a = yield sc.getEpisodes(...n.map((t)=>sP({}, t, e.episodeName ? {
|
|
11824
11851
|
episodeName: e.episodeName.toString()
|
|
11825
11852
|
} : {}, e.airDate ? {
|
|
11826
11853
|
airDate: e.airDate.toString()
|
|
@@ -11839,9 +11866,9 @@ WidgetMetadata = {
|
|
|
11839
11866
|
let i = String(t);
|
|
11840
11867
|
if ("movie" === e) {
|
|
11841
11868
|
var o;
|
|
11842
|
-
return null != (o =
|
|
11869
|
+
return null != (o = sx[i]) ? o : null;
|
|
11843
11870
|
}
|
|
11844
|
-
let a =
|
|
11871
|
+
let a = sO[i];
|
|
11845
11872
|
if (!a || null == r) return null;
|
|
11846
11873
|
let s = a.filter((e)=>e.season === r);
|
|
11847
11874
|
if (null == n) return s.length ? s : null;
|
|
@@ -11886,26 +11913,56 @@ WidgetMetadata = {
|
|
|
11886
11913
|
tmdbId: l,
|
|
11887
11914
|
season: u,
|
|
11888
11915
|
episode: void 0 === o ? void 0 : Number(o)
|
|
11889
|
-
})) ? t.map(({ provider: e, idString: t, episodeNumber: r })=>
|
|
11916
|
+
})) ? t.map(({ provider: e, idString: t, episodeNumber: r })=>{
|
|
11917
|
+
let n = function(e, t) {
|
|
11918
|
+
switch(e){
|
|
11919
|
+
case "tencent":
|
|
11920
|
+
return aR("tencent", {
|
|
11921
|
+
cid: aL("tencent", t).cid
|
|
11922
|
+
});
|
|
11923
|
+
case "youku":
|
|
11924
|
+
return aR("youku", {
|
|
11925
|
+
showId: aL("youku", t).showId
|
|
11926
|
+
});
|
|
11927
|
+
case "iqiyi":
|
|
11928
|
+
return aR("iqiyi", {
|
|
11929
|
+
entityId: aL("iqiyi", t).entityId
|
|
11930
|
+
});
|
|
11931
|
+
case "bilibili":
|
|
11932
|
+
return aR("bilibili", {
|
|
11933
|
+
seasonId: aL("bilibili", t).seasonId
|
|
11934
|
+
});
|
|
11935
|
+
case "mgtv":
|
|
11936
|
+
return aR("mgtv", {
|
|
11937
|
+
dramaId: aL("mgtv", t).dramaId
|
|
11938
|
+
});
|
|
11939
|
+
case "renren":
|
|
11940
|
+
return aR("renren", {
|
|
11941
|
+
dramaId: aL("renren", t).dramaId
|
|
11942
|
+
});
|
|
11943
|
+
}
|
|
11944
|
+
}(e, t);
|
|
11945
|
+
return void 0 === r ? {
|
|
11890
11946
|
provider: e,
|
|
11891
|
-
idString:
|
|
11947
|
+
idString: n
|
|
11892
11948
|
} : {
|
|
11893
11949
|
provider: e,
|
|
11894
|
-
idString:
|
|
11950
|
+
idString: n,
|
|
11895
11951
|
episodeNumber: r
|
|
11896
|
-
}
|
|
11952
|
+
};
|
|
11953
|
+
}) : [] : [];
|
|
11897
11954
|
if (c.length) {
|
|
11898
11955
|
console.log("Found local episode params", c);
|
|
11899
11956
|
let e = yield a(c, !1);
|
|
11900
11957
|
if (e.length) return s(e);
|
|
11901
11958
|
}
|
|
11902
|
-
let d = [], h = new
|
|
11959
|
+
let d = [], h = new s_(), { doubanIds: f, videoPlatformInfo: p } = yield h.getEpisodeParams(e);
|
|
11903
11960
|
d = d.concat("tv" !== i ? p : p.map((e)=>{
|
|
11904
11961
|
if ("tencent" !== e.provider) return e;
|
|
11905
11962
|
try {
|
|
11906
|
-
let { cid: t } =
|
|
11907
|
-
return
|
|
11908
|
-
idString:
|
|
11963
|
+
let { cid: t } = sc.scraperMap.tencent.parseProviderIdString(e.idString);
|
|
11964
|
+
return sI(sP({}, e), {
|
|
11965
|
+
idString: sc.scraperMap.tencent.generateIdString({
|
|
11909
11966
|
cid: t
|
|
11910
11967
|
})
|
|
11911
11968
|
});
|
|
@@ -11922,12 +11979,12 @@ WidgetMetadata = {
|
|
|
11922
11979
|
console.error(e);
|
|
11923
11980
|
}
|
|
11924
11981
|
if ("always" === n) {
|
|
11925
|
-
let t = yield
|
|
11982
|
+
let t = yield sc.getEpisodeParams(e);
|
|
11926
11983
|
d = d.concat(t);
|
|
11927
11984
|
}
|
|
11928
11985
|
let m = yield a(d);
|
|
11929
11986
|
if (!m.length && "auto" === n) {
|
|
11930
|
-
let t = yield
|
|
11987
|
+
let t = yield sc.getEpisodeParams(e);
|
|
11931
11988
|
m = yield a(t);
|
|
11932
11989
|
}
|
|
11933
11990
|
return !m.length && nP().catch(!0).parse(e.emptyAnimeTitle) ? {
|
|
@@ -11938,19 +11995,19 @@ WidgetMetadata = {
|
|
|
11938
11995
|
}
|
|
11939
11996
|
]
|
|
11940
11997
|
} : s(m);
|
|
11941
|
-
})(), getDetail = (e)=>
|
|
11942
|
-
|
|
11998
|
+
})(), getDetail = (e)=>sS(function*() {
|
|
11999
|
+
sc.setGlobalParams(e);
|
|
11943
12000
|
let { animeId: t, type: r, episode: n, episodeName: i, airDate: o } = e;
|
|
11944
|
-
return t && t !== nH ?
|
|
12001
|
+
return t && t !== nH ? sc.getDetailWithAnimeId(t.toString(), r, n, sP({}, i ? {
|
|
11945
12002
|
episodeName: i.toString()
|
|
11946
12003
|
} : {}, o ? {
|
|
11947
12004
|
airDate: o.toString()
|
|
11948
12005
|
} : {})) : null;
|
|
11949
|
-
})(), getComments = (e)=>
|
|
11950
|
-
|
|
12006
|
+
})(), getComments = (e)=>sS(function*() {
|
|
12007
|
+
sc.setGlobalParams(e);
|
|
11951
12008
|
let { animeId: t, commentId: r, segmentTime: n } = e, i = null != r ? r : t;
|
|
11952
12009
|
if (i === nH) return null;
|
|
11953
|
-
let o = yield
|
|
12010
|
+
let o = yield sc.getDanmuWithSegmentTimeByVideoId(i.toString(), n);
|
|
11954
12011
|
return {
|
|
11955
12012
|
comments: o,
|
|
11956
12013
|
count: o.length
|