@forward-widget/danmu-universe 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/danmu-universe.js +165 -9
- package/package.json +4 -5
package/dist/danmu-universe.js
CHANGED
|
@@ -1016,8 +1016,8 @@ var __webpack_modules__ = {
|
|
|
1016
1016
|
var n = t + r, i = e[n];
|
|
1017
1017
|
e[n] = (i << 8 | i >>> 24) & 0x00ff00ff | (i << 24 | i >>> 8) & 0xff00ff00;
|
|
1018
1018
|
}
|
|
1019
|
-
var o = this._hash.words, s = e[t + 0], l = 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], z = e[t + 14],
|
|
1020
|
-
|
|
1019
|
+
var o = this._hash.words, s = e[t + 0], l = 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], z = e[t + 14], O = e[t + 15], E = o[0], I = o[1], P = o[2], A = o[3];
|
|
1020
|
+
E = u(E, I, P, A, s, 7, a[0]), A = u(A, E, I, P, l, 12, a[1]), P = u(P, A, E, I, p, 17, a[2]), I = u(I, P, A, E, h, 22, a[3]), E = u(E, I, P, A, m, 7, a[4]), A = u(A, E, I, P, g, 12, a[5]), P = u(P, A, E, I, v, 17, a[6]), I = u(I, P, A, E, y, 22, a[7]), E = u(E, I, P, A, b, 7, a[8]), A = u(A, E, I, P, _, 12, a[9]), P = u(P, A, E, I, w, 17, a[10]), I = u(I, P, A, E, x, 22, a[11]), E = u(E, I, P, A, k, 7, a[12]), A = u(A, E, I, P, S, 12, a[13]), P = u(P, A, E, I, z, 17, a[14]), I = u(I, P, A, E, O, 22, a[15]), E = c(E, I, P, A, l, 5, a[16]), A = c(A, E, I, P, v, 9, a[17]), P = c(P, A, E, I, x, 14, a[18]), I = c(I, P, A, E, s, 20, a[19]), E = c(E, I, P, A, g, 5, a[20]), A = c(A, E, I, P, w, 9, a[21]), P = c(P, A, E, I, O, 14, a[22]), I = c(I, P, A, E, m, 20, a[23]), E = c(E, I, P, A, _, 5, a[24]), A = c(A, E, I, P, z, 9, a[25]), P = c(P, A, E, I, h, 14, a[26]), I = c(I, P, A, E, b, 20, a[27]), E = c(E, I, P, A, S, 5, a[28]), A = c(A, E, I, P, p, 9, a[29]), P = c(P, A, E, I, y, 14, a[30]), I = c(I, P, A, E, k, 20, a[31]), E = d(E, I, P, A, g, 4, a[32]), A = d(A, E, I, P, b, 11, a[33]), P = d(P, A, E, I, x, 16, a[34]), I = d(I, P, A, E, z, 23, a[35]), E = d(E, I, P, A, l, 4, a[36]), A = d(A, E, I, P, m, 11, a[37]), P = d(P, A, E, I, y, 16, a[38]), I = d(I, P, A, E, w, 23, a[39]), E = d(E, I, P, A, S, 4, a[40]), A = d(A, E, I, P, s, 11, a[41]), P = d(P, A, E, I, h, 16, a[42]), I = d(I, P, A, E, v, 23, a[43]), E = d(E, I, P, A, _, 4, a[44]), A = d(A, E, I, P, k, 11, a[45]), P = d(P, A, E, I, O, 16, a[46]), I = d(I, P, A, E, p, 23, a[47]), E = f(E, I, P, A, s, 6, a[48]), A = f(A, E, I, P, y, 10, a[49]), P = f(P, A, E, I, z, 15, a[50]), I = f(I, P, A, E, g, 21, a[51]), E = f(E, I, P, A, k, 6, a[52]), A = f(A, E, I, P, h, 10, a[53]), P = f(P, A, E, I, w, 15, a[54]), I = f(I, P, A, E, l, 21, a[55]), E = f(E, I, P, A, b, 6, a[56]), A = f(A, E, I, P, O, 10, a[57]), P = f(P, A, E, I, v, 15, a[58]), I = f(I, P, A, E, S, 21, a[59]), E = f(E, I, P, A, m, 6, a[60]), A = f(A, E, I, P, x, 10, a[61]), P = f(P, A, E, I, p, 15, a[62]), I = f(I, P, A, E, _, 21, a[63]), o[0] = o[0] + E | 0, o[1] = o[1] + I | 0, o[2] = o[2] + P | 0, o[3] = o[3] + A | 0;
|
|
1021
1021
|
},
|
|
1022
1022
|
_doFinalize: function() {
|
|
1023
1023
|
var e = this._data, r = e.words, n = 8 * this._nDataBytes, i = 8 * e.sigBytes;
|
|
@@ -4343,7 +4343,9 @@ const DEFAULT_COLOR_HEX = "ffffff", DEFAULT_COLOR_INT = parseInt(DEFAULT_COLOR_H
|
|
|
4343
4343
|
"never",
|
|
4344
4344
|
"auto"
|
|
4345
4345
|
]).catch("auto").optional().default("auto")
|
|
4346
|
-
})
|
|
4346
|
+
}), EMPTY_ANIME_CONFIG = {
|
|
4347
|
+
ID: "__empty__"
|
|
4348
|
+
};
|
|
4347
4349
|
var enc_base64 = __webpack_require__(716), enc_base64_default = __webpack_require__.n(enc_base64);
|
|
4348
4350
|
function safeJsonParse(e) {
|
|
4349
4351
|
try {
|
|
@@ -4977,6 +4979,66 @@ function noop() {}
|
|
|
4977
4979
|
function isEqual(e, t) {
|
|
4978
4980
|
return isEqualWith(e, t, noop);
|
|
4979
4981
|
}
|
|
4982
|
+
function isDeepKey(e) {
|
|
4983
|
+
switch(typeof e){
|
|
4984
|
+
case 'number':
|
|
4985
|
+
case 'symbol':
|
|
4986
|
+
return !1;
|
|
4987
|
+
case 'string':
|
|
4988
|
+
return e.includes('.') || e.includes('[') || e.includes(']');
|
|
4989
|
+
}
|
|
4990
|
+
}
|
|
4991
|
+
function toKey(e) {
|
|
4992
|
+
return 'string' == typeof e || 'symbol' == typeof e ? e : Object.is(e?.valueOf?.(), -0) ? '-0' : String(e);
|
|
4993
|
+
}
|
|
4994
|
+
function toPath(e) {
|
|
4995
|
+
let t = [], r = e.length;
|
|
4996
|
+
if (0 === r) return t;
|
|
4997
|
+
let n = 0, i = '', o = '', s = !1;
|
|
4998
|
+
for(46 === e.charCodeAt(0) && (t.push(''), n++); n < r;){
|
|
4999
|
+
let a = e[n];
|
|
5000
|
+
o ? '\\' === a && n + 1 < r ? i += e[++n] : a === o ? o = '' : i += a : s ? '"' === a || "'" === a ? o = a : ']' === a ? (s = !1, t.push(i), i = '') : i += a : '[' === a ? (s = !0, i && (t.push(i), i = '')) : '.' === a ? i && (t.push(i), i = '') : i += a, n++;
|
|
5001
|
+
}
|
|
5002
|
+
return i && t.push(i), t;
|
|
5003
|
+
}
|
|
5004
|
+
function get(e, t, r) {
|
|
5005
|
+
if (null == e) return r;
|
|
5006
|
+
switch(typeof t){
|
|
5007
|
+
case 'string':
|
|
5008
|
+
{
|
|
5009
|
+
if (isUnsafeProperty(t)) return r;
|
|
5010
|
+
let n = e[t];
|
|
5011
|
+
if (void 0 === n) if (isDeepKey(t)) return get(e, toPath(t), r);
|
|
5012
|
+
else return r;
|
|
5013
|
+
return n;
|
|
5014
|
+
}
|
|
5015
|
+
case 'number':
|
|
5016
|
+
case 'symbol':
|
|
5017
|
+
{
|
|
5018
|
+
'number' == typeof t && (t = toKey(t));
|
|
5019
|
+
let n = e[t];
|
|
5020
|
+
if (void 0 === n) return r;
|
|
5021
|
+
return n;
|
|
5022
|
+
}
|
|
5023
|
+
default:
|
|
5024
|
+
{
|
|
5025
|
+
if (Array.isArray(t)) return getWithPath(e, t, r);
|
|
5026
|
+
if (isUnsafeProperty(t = Object.is(t?.valueOf(), -0) ? '-0' : String(t))) return r;
|
|
5027
|
+
let n = e[t];
|
|
5028
|
+
if (void 0 === n) return r;
|
|
5029
|
+
return n;
|
|
5030
|
+
}
|
|
5031
|
+
}
|
|
5032
|
+
}
|
|
5033
|
+
function getWithPath(e, t, r) {
|
|
5034
|
+
if (0 === t.length) return r;
|
|
5035
|
+
let n = e;
|
|
5036
|
+
for(let e = 0; e < t.length; e++){
|
|
5037
|
+
if (null == n || isUnsafeProperty(t[e])) return r;
|
|
5038
|
+
n = n[t[e]];
|
|
5039
|
+
}
|
|
5040
|
+
return void 0 === n ? r : n;
|
|
5041
|
+
}
|
|
4980
5042
|
function base_define_property(e, t, r) {
|
|
4981
5043
|
return t in e ? Object.defineProperty(e, t, {
|
|
4982
5044
|
value: r,
|
|
@@ -4996,6 +5058,13 @@ const providerCommentItemSchema = schemas_object({
|
|
|
4996
5058
|
content: schemas_string()
|
|
4997
5059
|
});
|
|
4998
5060
|
class BaseScraper {
|
|
5061
|
+
get providerConfig() {
|
|
5062
|
+
return this._providerConfig;
|
|
5063
|
+
}
|
|
5064
|
+
set providerConfig(e) {
|
|
5065
|
+
let t = get(e, this.providerName);
|
|
5066
|
+
t && (this.logger.debug("\u8BBE\u7F6E Provider \u914D\u7F6E", t), this._providerConfig = e);
|
|
5067
|
+
}
|
|
4999
5068
|
parseIdString(e) {
|
|
5000
5069
|
var t, r;
|
|
5001
5070
|
let n = safeJsonParse(decodeURIComponent(e)), i = null == (t = this.idSchema) ? void 0 : t.safeParse(n);
|
|
@@ -5030,7 +5099,7 @@ class BaseScraper {
|
|
|
5030
5099
|
}
|
|
5031
5100
|
constructor(){
|
|
5032
5101
|
var e = this;
|
|
5033
|
-
base_define_property(this, "idSchema", void 0), base_define_property(this, "fetch", new Fetch()), base_define_property(this, "GLOBAL_EPISODE_BLACKLIST_DEFAULT", "^(.*?)((.+?\u7248)|(\u7279(\u522B|\u5178))|((\u5BFC|\u6F14)\u5458|\u5609\u5BBE|\u89D2\u8272)\u8BBF\u8C08|\u798F\u5229|\u5148\u5BFC|\u5F69\u86CB|\u82B1\u7D6E|\u9884\u544A|\u7279\u8F91|\u4E13\u8BBF|\u8BBF\u8C08|\u5E55\u540E|\u5468\u8FB9|\u8D44\u8BAF|\u770B\u70B9|\u901F\u770B|\u56DE\u987E|\u76D8\u70B9|\u5408\u96C6|PV|MV|CM|OST|ED|OP|BD|\u7279\u5178|SP|NCOP|NCED|MENU|Web-DL|rip|x264|x265|aac|flac)(.*?)$"), base_define_property(this, "PROVIDER_SPECIFIC_BLACKLIST_DEFAULT", ""), base_define_property(this, "logger", {
|
|
5102
|
+
base_define_property(this, "_providerConfig", {}), base_define_property(this, "idSchema", void 0), base_define_property(this, "fetch", new Fetch()), base_define_property(this, "GLOBAL_EPISODE_BLACKLIST_DEFAULT", "^(.*?)((.+?\u7248)|(\u7279(\u522B|\u5178))|((\u5BFC|\u6F14)\u5458|\u5609\u5BBE|\u89D2\u8272)\u8BBF\u8C08|\u798F\u5229|\u5148\u5BFC|\u5F69\u86CB|\u82B1\u7D6E|\u9884\u544A|\u7279\u8F91|\u4E13\u8BBF|\u8BBF\u8C08|\u5E55\u540E|\u5468\u8FB9|\u8D44\u8BAF|\u770B\u70B9|\u901F\u770B|\u56DE\u987E|\u76D8\u70B9|\u5408\u96C6|PV|MV|CM|OST|ED|OP|BD|\u7279\u5178|SP|NCOP|NCED|MENU|Web-DL|rip|x264|x265|aac|flac)(.*?)$"), base_define_property(this, "PROVIDER_SPECIFIC_BLACKLIST_DEFAULT", ""), base_define_property(this, "logger", {
|
|
5034
5103
|
log: function(t) {
|
|
5035
5104
|
for(var r = arguments.length, n = Array(r > 1 ? r - 1 : 0), i = 1; i < r; i++)n[i - 1] = arguments[i];
|
|
5036
5105
|
console[t](`[${e.providerName}]`, ...n);
|
|
@@ -6208,6 +6277,65 @@ class IqiyiScraper extends BaseScraper {
|
|
|
6208
6277
|
});
|
|
6209
6278
|
}
|
|
6210
6279
|
}
|
|
6280
|
+
const assignValue = (e, t, r)=>{
|
|
6281
|
+
let n = e[t];
|
|
6282
|
+
Object.hasOwn(e, t) && eq(n, r) && (void 0 !== r || t in e) || (e[t] = r);
|
|
6283
|
+
}, IS_UNSIGNED_INTEGER = /^(?:0|[1-9]\d*)$/;
|
|
6284
|
+
function isIndex(e, t = Number.MAX_SAFE_INTEGER) {
|
|
6285
|
+
switch(typeof e){
|
|
6286
|
+
case 'number':
|
|
6287
|
+
return Number.isInteger(e) && e >= 0 && e < t;
|
|
6288
|
+
case 'symbol':
|
|
6289
|
+
return !1;
|
|
6290
|
+
case 'string':
|
|
6291
|
+
return IS_UNSIGNED_INTEGER.test(e);
|
|
6292
|
+
}
|
|
6293
|
+
}
|
|
6294
|
+
function isSymbol(e) {
|
|
6295
|
+
return 'symbol' == typeof e || e instanceof Symbol;
|
|
6296
|
+
}
|
|
6297
|
+
const regexIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, regexIsPlainProp = /^\w*$/;
|
|
6298
|
+
function isKey(e, t) {
|
|
6299
|
+
return !Array.isArray(e) && (!!('number' == typeof e || 'boolean' == typeof e || null == e || isSymbol(e)) || 'string' == typeof e && (regexIsPlainProp.test(e) || !regexIsDeepProp.test(e)) || null != t && Object.hasOwn(t, e));
|
|
6300
|
+
}
|
|
6301
|
+
function isObject_isObject(e) {
|
|
6302
|
+
return null !== e && ('object' == typeof e || 'function' == typeof e);
|
|
6303
|
+
}
|
|
6304
|
+
function updateWith(e, t, r, n) {
|
|
6305
|
+
if (null == e && !isObject_isObject(e)) return e;
|
|
6306
|
+
let i = isKey(t, e) ? [
|
|
6307
|
+
t
|
|
6308
|
+
] : Array.isArray(t) ? t : 'string' == typeof t ? toPath(t) : [
|
|
6309
|
+
t
|
|
6310
|
+
], o = e;
|
|
6311
|
+
for(let t = 0; t < i.length && null != o; t++){
|
|
6312
|
+
let s, a = toKey(i[t]);
|
|
6313
|
+
if (!isUnsafeProperty(a)) {
|
|
6314
|
+
if (t === i.length - 1) s = r(o[a]);
|
|
6315
|
+
else {
|
|
6316
|
+
let r = o[a], l = n?.(r, a, e);
|
|
6317
|
+
s = void 0 !== l ? l : isObject_isObject(r) ? r : isIndex(i[t + 1]) ? [] : {};
|
|
6318
|
+
}
|
|
6319
|
+
assignValue(o, a, s), o = o[a];
|
|
6320
|
+
}
|
|
6321
|
+
}
|
|
6322
|
+
return e;
|
|
6323
|
+
}
|
|
6324
|
+
function set_set(e, t, r) {
|
|
6325
|
+
return updateWith(e, t, ()=>r, ()=>void 0);
|
|
6326
|
+
}
|
|
6327
|
+
const providerConfigSchema = schemas_object({
|
|
6328
|
+
"provider.renren.mode": schemas_enum([
|
|
6329
|
+
"default",
|
|
6330
|
+
"choice"
|
|
6331
|
+
]).catch("default")
|
|
6332
|
+
}).transform((e)=>{
|
|
6333
|
+
let t = {};
|
|
6334
|
+
return Object.entries(e).forEach((e)=>{
|
|
6335
|
+
let [r, n] = e;
|
|
6336
|
+
set_set(t, r, n);
|
|
6337
|
+
}), t.provider;
|
|
6338
|
+
});
|
|
6211
6339
|
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);
|
|
6212
6340
|
function isNil(e) {
|
|
6213
6341
|
return null == e;
|
|
@@ -6398,7 +6526,8 @@ class RenRenScraper extends BaseScraper {
|
|
|
6398
6526
|
})).data;
|
|
6399
6527
|
}
|
|
6400
6528
|
async fetchEpisodeDanmu(e) {
|
|
6401
|
-
|
|
6529
|
+
let t = `https://static-dm.rrmj.plus/v1/produce/danmu/EPISODE/${e}`;
|
|
6530
|
+
return "choice" === this.providerConfig.renren.mode && (t = `https://static-dm.rrmj.plus/v1/produce/danmu/choice/EPISODE/${e}`), (await this.fetch.get(t, {
|
|
6402
6531
|
headers: {
|
|
6403
6532
|
Accept: "application/json"
|
|
6404
6533
|
},
|
|
@@ -7085,13 +7214,19 @@ class scrapers_Scraper {
|
|
|
7085
7214
|
}
|
|
7086
7215
|
return this.getEpisodes(...uniqWith(i, isEqual));
|
|
7087
7216
|
}
|
|
7217
|
+
setProviderConfig(e) {
|
|
7218
|
+
let { success: t, data: r } = providerConfigSchema.safeParse(e);
|
|
7219
|
+
t && this.scrapers.forEach((e)=>{
|
|
7220
|
+
e.providerConfig = r;
|
|
7221
|
+
});
|
|
7222
|
+
}
|
|
7088
7223
|
constructor(){
|
|
7089
7224
|
scrapers_define_property(this, "scrapers", []), scrapers.forEach((e)=>{
|
|
7090
7225
|
this.scrapers.push(new e());
|
|
7091
7226
|
});
|
|
7092
7227
|
}
|
|
7093
7228
|
}
|
|
7094
|
-
const widgetVersion = "0.
|
|
7229
|
+
const widgetVersion = "0.3.0";
|
|
7095
7230
|
WidgetMetadata = {
|
|
7096
7231
|
id: "baranwang.danmu.universe",
|
|
7097
7232
|
title: "\u901A\u7528\u5F39\u5E55",
|
|
@@ -7121,6 +7256,23 @@ WidgetMetadata = {
|
|
|
7121
7256
|
value: "never"
|
|
7122
7257
|
}
|
|
7123
7258
|
]
|
|
7259
|
+
},
|
|
7260
|
+
{
|
|
7261
|
+
title: `[${PROVIDER_NAMES.renren}] \u{5F39}\u{5E55}\u{6A21}\u{5F0F}`,
|
|
7262
|
+
name: "provider.renren.mode",
|
|
7263
|
+
description: "\u5F39\u5E55\u6A21\u5F0F\uFF0C\u7CBE\u9009\u5F39\u5E55\u76F8\u6BD4\u9ED8\u8BA4\u5F39\u5E55\u8D28\u91CF\u66F4\u9AD8",
|
|
7264
|
+
value: "default",
|
|
7265
|
+
type: "enumeration",
|
|
7266
|
+
enumOptions: [
|
|
7267
|
+
{
|
|
7268
|
+
title: "\u9ED8\u8BA4",
|
|
7269
|
+
value: "default"
|
|
7270
|
+
},
|
|
7271
|
+
{
|
|
7272
|
+
title: "\u7CBE\u9009",
|
|
7273
|
+
value: "choice"
|
|
7274
|
+
}
|
|
7275
|
+
]
|
|
7124
7276
|
}
|
|
7125
7277
|
],
|
|
7126
7278
|
modules: [
|
|
@@ -7156,6 +7308,7 @@ WidgetMetadata = {
|
|
|
7156
7308
|
};
|
|
7157
7309
|
const src_scraper = new scrapers_Scraper();
|
|
7158
7310
|
searchDanmu = async (e)=>{
|
|
7311
|
+
src_scraper.setProviderConfig(e);
|
|
7159
7312
|
let { type: t, episode: r, fuzzyMatch: n = "auto" } = e, i = [], o = await getDoubanIds(e);
|
|
7160
7313
|
if (o.length && (i = await src_scraper.getDetailWithDoubanIds(o, t, r)), !(null == i ? void 0 : i.length) && "auto" === n || "always" === n) {
|
|
7161
7314
|
let t = await src_scraper.getDetailWithSearchParams(e);
|
|
@@ -7172,16 +7325,19 @@ searchDanmu = async (e)=>{
|
|
|
7172
7325
|
} : {
|
|
7173
7326
|
animes: [
|
|
7174
7327
|
{
|
|
7175
|
-
animeId:
|
|
7176
|
-
animeTitle:
|
|
7328
|
+
animeId: EMPTY_ANIME_CONFIG.ID,
|
|
7329
|
+
animeTitle: EMPTY_ANIME_CONFIG.ID
|
|
7177
7330
|
}
|
|
7178
7331
|
]
|
|
7179
7332
|
};
|
|
7180
7333
|
}, getDetail = async (e)=>{
|
|
7334
|
+
src_scraper.setProviderConfig(e);
|
|
7181
7335
|
let { animeId: t, type: r, episode: n } = e;
|
|
7182
|
-
return t ? src_scraper.getDetailWithAnimeId(t.toString(), r, n) : null;
|
|
7336
|
+
return t && t !== EMPTY_ANIME_CONFIG.ID ? src_scraper.getDetailWithAnimeId(t.toString(), r, n) : null;
|
|
7183
7337
|
}, getComments = async (e)=>{
|
|
7338
|
+
src_scraper.setProviderConfig(e);
|
|
7184
7339
|
let { animeId: t, commentId: r, segmentTime: n, tmdbId: i, type: o, episode: s } = e, a = null != r ? r : t;
|
|
7340
|
+
if (a === EMPTY_ANIME_CONFIG.ID) return null;
|
|
7185
7341
|
if (!a) {
|
|
7186
7342
|
if (!i) return null;
|
|
7187
7343
|
let t = await getDoubanIds(e);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forward-widget/danmu-universe",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/danmu-universe.js",
|
|
6
6
|
"exports": {
|
|
@@ -13,22 +13,21 @@
|
|
|
13
13
|
"crypto-js": "^4.2.0",
|
|
14
14
|
"es-toolkit": "^1.39.9",
|
|
15
15
|
"fast-xml-parser": "^5.2.5",
|
|
16
|
-
"p-limit": "^6.2.0",
|
|
17
16
|
"protobufjs": "^7.5.4",
|
|
18
17
|
"url-parse": "^1.5.10",
|
|
19
18
|
"zod": "4.0.17"
|
|
20
19
|
},
|
|
21
20
|
"devDependencies": {
|
|
22
|
-
"@forward-widget/libs": "
|
|
23
|
-
"@forward-widget/rslib-plugin": "
|
|
21
|
+
"@forward-widget/libs": "1.8.5",
|
|
22
|
+
"@forward-widget/rslib-plugin": "1.8.5",
|
|
24
23
|
"@rsdoctor/rspack-plugin": "^1.2.3",
|
|
25
24
|
"@rslib/core": "^0.12.4",
|
|
26
25
|
"@rstest/core": "^0.3.1",
|
|
27
26
|
"@types/crypto-js": "^4.2.2",
|
|
28
27
|
"@types/node": "^22.16.0",
|
|
29
28
|
"@types/url-parse": "^1.4.11",
|
|
30
|
-
"protobufjs-cli": "^1.1.3",
|
|
31
29
|
"rsbuild-plugin-protobufjs": "^0.0.0",
|
|
30
|
+
"type-fest": "^4.41.0",
|
|
32
31
|
"typescript": "^5.8.3"
|
|
33
32
|
},
|
|
34
33
|
"repository": {
|