karin-plugin-kkk 2.11.1 → 2.11.3
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/CHANGELOG.md +21 -0
- package/lib/apps/admin.js +3 -3
- package/lib/apps/help.js +3 -3
- package/lib/apps/push.js +3 -3
- package/lib/apps/tools.js +3 -3
- package/lib/apps/update.js +3 -3
- package/lib/build-metadata.json +5 -5
- package/lib/core_chunk/{main-DAXkrkdv.js → main-Cj28ePzx.js} +38 -19
- package/lib/core_chunk/{template-C96NMWLM.d.ts → template-Dq51xu-v.d.ts} +20 -1
- package/lib/core_chunk/{template-DsgAckrG.js → template-Tik4Jw3F.js} +216 -131
- package/lib/core_chunk/template.js +2 -2
- package/lib/core_chunk/{vendor-BjR6OHPI.js → vendor-4CM806JY.js} +62 -47
- package/lib/index.js +3 -3
- package/lib/karin-plugin-kkk.css +30 -8
- package/lib/root.js +1 -1
- package/lib/web.config.js +3 -3
- package/lib/web_chunk/assets/{Combination-CWufCwBk.js → Combination-DtPKUwx2.js} +1 -1
- package/lib/web_chunk/assets/{avatar-Chey9JBE.js → avatar-BBBP690e.js} +1 -1
- package/lib/web_chunk/assets/{core-CJPc7-OY.js → core-B-7utY9l.js} +1 -1
- package/lib/web_chunk/assets/{eye-GveI3wVV.js → eye-cxTA4trG.js} +1 -1
- package/lib/web_chunk/assets/{index-DNsC3V17.js → index-dMRO5klm.js} +6 -6
- package/lib/web_chunk/assets/{jszip.min-D_NubP3F.js → jszip.min-gn2UlVrt.js} +1 -1
- package/lib/web_chunk/assets/{page-WcmBRMfE.js → page-6C-nVlZh.js} +1 -1
- package/lib/web_chunk/assets/{page-BoQkLIdl.js → page-BTfyAvTJ.js} +1 -1
- package/lib/web_chunk/assets/{page-DnYRBWd8.js → page-BUdMcFHS.js} +2 -2
- package/lib/web_chunk/assets/{page-DLwxUyHq.js → page-DfilHwK-.js} +1 -1
- package/lib/web_chunk/assets/{page-Db2VFIJj.js → page-FhtQLah8.js} +4 -4
- package/lib/web_chunk/assets/{parsers-CjnEdSCi.js → parsers-DUp7Qn4t.js} +1 -1
- package/lib/web_chunk/assets/{request-uKt83bs3.js → request-B_PlHZWr.js} +1 -1
- package/lib/web_chunk/assets/{select-y-g1pFjh.js → select-D-QMYw60.js} +1 -1
- package/lib/web_chunk/assets/{separator-CilkSuuT.js → separator-JfZ4Z_-v.js} +1 -1
- package/lib/web_chunk/index.html +1 -1
- package/lib/web_chunk/sw.js +1 -1
- package/package.json +2 -2
- package/resources/image//346/265/201/346/263/252.png +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,27 @@
|
|
|
2
2
|
|
|
3
3
|
# Changelog
|
|
4
4
|
|
|
5
|
+
## [2.11.3](https://github.com/ikenxuan/karin-plugin-kkk/compare/v2.11.2...v2.11.3) (2025-11-13)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### 🐛 错误修复
|
|
9
|
+
|
|
10
|
+
* 提高兼容性 ([c147834](https://github.com/ikenxuan/karin-plugin-kkk/commit/c147834ddd43fd027e5621b689773a15d90b6f36))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### 💄 UI 优化
|
|
14
|
+
|
|
15
|
+
* **error-handler:** Enhance error page with new crying emoji and text refinements ([618e437](https://github.com/ikenxuan/karin-plugin-kkk/commit/618e437f43f73fb456547aff98cfd220a822863d))
|
|
16
|
+
* 更新提示浅色模式下不显示新版本号 ([435a21e](https://github.com/ikenxuan/karin-plugin-kkk/commit/435a21e879677fc6c0d5b22dab02db12e81c1e9e))
|
|
17
|
+
|
|
18
|
+
## [2.11.2](https://github.com/ikenxuan/karin-plugin-kkk/compare/v2.11.1...v2.11.2) (2025-11-11)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### 💄 UI 优化
|
|
22
|
+
|
|
23
|
+
* **bilibili:** 同步评论图头部样式 ([5c808ff](https://github.com/ikenxuan/karin-plugin-kkk/commit/5c808ffed74ef9cde952ce81eeeabc143fbf7c3c))
|
|
24
|
+
* **error-handler:** Enhance error reporting with adapter information and improved UI ([ffbd3e5](https://github.com/ikenxuan/karin-plugin-kkk/commit/ffbd3e5c929e9d6c362312626acccd4332d52058))
|
|
25
|
+
|
|
5
26
|
## [2.11.1](https://github.com/ikenxuan/karin-plugin-kkk/compare/v2.11.0...v2.11.1) (2025-11-11)
|
|
6
27
|
|
|
7
28
|
|
package/lib/apps/admin.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../core_chunk/vendor-
|
|
2
|
-
import { C as removeAllFiles, E as task, S as dylogin, T as setdyck, w as setbilick, x as biLogin } from "../core_chunk/main-
|
|
3
|
-
import "../core_chunk/template-
|
|
1
|
+
import "../core_chunk/vendor-4CM806JY.js";
|
|
2
|
+
import { C as removeAllFiles, E as task, S as dylogin, T as setdyck, w as setbilick, x as biLogin } from "../core_chunk/main-Cj28ePzx.js";
|
|
3
|
+
import "../core_chunk/template-Tik4Jw3F.js";
|
|
4
4
|
export { biLogin, dylogin, removeAllFiles, setbilick, setdyck, task };
|
package/lib/apps/help.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../core_chunk/vendor-
|
|
2
|
-
import { b as version, y as help } from "../core_chunk/main-
|
|
3
|
-
import "../core_chunk/template-
|
|
1
|
+
import "../core_chunk/vendor-4CM806JY.js";
|
|
2
|
+
import { b as version, y as help } from "../core_chunk/main-Cj28ePzx.js";
|
|
3
|
+
import "../core_chunk/template-Tik4Jw3F.js";
|
|
4
4
|
export { help, version };
|
package/lib/apps/push.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../core_chunk/vendor-
|
|
2
|
-
import { _ as setdyPush, d as bilibiliPushList, f as changeBotID, g as setbiliPush, h as forcePush, m as douyinPushList, p as douyinPush, u as bilibiliPush, v as testDouyinPush } from "../core_chunk/main-
|
|
3
|
-
import "../core_chunk/template-
|
|
1
|
+
import "../core_chunk/vendor-4CM806JY.js";
|
|
2
|
+
import { _ as setdyPush, d as bilibiliPushList, f as changeBotID, g as setbiliPush, h as forcePush, m as douyinPushList, p as douyinPush, u as bilibiliPush, v as testDouyinPush } from "../core_chunk/main-Cj28ePzx.js";
|
|
3
|
+
import "../core_chunk/template-Tik4Jw3F.js";
|
|
4
4
|
export { bilibiliPush, bilibiliPushList, changeBotID, douyinPush, douyinPushList, forcePush, setbiliPush, setdyPush, testDouyinPush };
|
package/lib/apps/tools.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../core_chunk/vendor-
|
|
2
|
-
import { a as bilibiliAPP, c as prefix, l as xiaohongshuAPP, o as douyinAPP, s as kuaishouAPP } from "../core_chunk/main-
|
|
3
|
-
import "../core_chunk/template-
|
|
1
|
+
import "../core_chunk/vendor-4CM806JY.js";
|
|
2
|
+
import { a as bilibiliAPP, c as prefix, l as xiaohongshuAPP, o as douyinAPP, s as kuaishouAPP } from "../core_chunk/main-Cj28ePzx.js";
|
|
3
|
+
import "../core_chunk/template-Tik4Jw3F.js";
|
|
4
4
|
export { bilibiliAPP, douyinAPP, kuaishouAPP, prefix, xiaohongshuAPP };
|
package/lib/apps/update.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../core_chunk/vendor-
|
|
2
|
-
import { i as update, n as kkkUpdateCommand, r as kkkUpdateTest, t as kkkUpdate } from "../core_chunk/main-
|
|
3
|
-
import "../core_chunk/template-
|
|
1
|
+
import "../core_chunk/vendor-4CM806JY.js";
|
|
2
|
+
import { i as update, n as kkkUpdateCommand, r as kkkUpdateTest, t as kkkUpdate } from "../core_chunk/main-Cj28ePzx.js";
|
|
3
|
+
import "../core_chunk/template-Tik4Jw3F.js";
|
|
4
4
|
export { kkkUpdate, kkkUpdateCommand, kkkUpdateTest, update };
|
package/lib/build-metadata.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "2.11.
|
|
3
|
-
"buildTime": "2025-11-
|
|
4
|
-
"buildTimestamp":
|
|
2
|
+
"version": "2.11.3",
|
|
3
|
+
"buildTime": "2025-11-13T02:16:05.636Z",
|
|
4
|
+
"buildTimestamp": 1763000165637,
|
|
5
5
|
"name": "karin-plugin-kkk",
|
|
6
6
|
"description": "Karin 的「抖音」「B 站」视频解析/动态推送插件",
|
|
7
7
|
"homepage": "https://github.com/ikenxuan/karin-plugin-kkk",
|
|
8
|
-
"commitHash": "
|
|
9
|
-
"shortCommitHash": "
|
|
8
|
+
"commitHash": "35fd936671f9064ce5990c19a45fb84898cf0d18",
|
|
9
|
+
"shortCommitHash": "35fd9366"
|
|
10
10
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as __esmMin, o as __toESM, r as __export } from "./rolldown-runtime-DWBZqjDW.js";
|
|
2
|
-
import { At as amagi, Bt as wbi_sign, Dt as Client, Et as require_lib, Ft as getBilibiliData, Ht as init_dist, It as getDouyinData, Lt as init_default, Mt as createBilibiliRoutes, Nt as createDouyinRoutes, Ot as DynamicType, Pt as createKuaishouRoutes, Rt as logMiddleware, Tt as require_lib$1, Vt as app$1, jt as bilibiliApiUrls, kt as MajorType, n as require_browser, t as require_heic_convert, wt as require_dist, zt as logger$1 } from "./vendor-
|
|
3
|
-
import { n as init_client, r as reactServerRender } from "./template-
|
|
2
|
+
import { At as amagi, Bt as wbi_sign, Dt as Client, Et as require_lib, Ft as getBilibiliData, Ht as init_dist, It as getDouyinData, Lt as init_default, Mt as createBilibiliRoutes, Nt as createDouyinRoutes, Ot as DynamicType, Pt as createKuaishouRoutes, Rt as logMiddleware, Tt as require_lib$1, Vt as app$1, jt as bilibiliApiUrls, kt as MajorType, n as require_browser, t as require_heic_convert, wt as require_dist, zt as logger$1 } from "./vendor-4CM806JY.js";
|
|
3
|
+
import { n as init_client, r as reactServerRender } from "./template-Tik4Jw3F.js";
|
|
4
4
|
import path, { resolve } from "node:path";
|
|
5
5
|
import fs from "node:fs";
|
|
6
6
|
import { fileURLToPath } from "node:url";
|
|
@@ -247,10 +247,15 @@ var init_build_metadata = __esmMin(() => {
|
|
|
247
247
|
return `${date.getFullYear()}年${String(date.getMonth() + 1).padStart(2, "0")}月${String(date.getDate()).padStart(2, "0")}日 ${String(date.getHours()).padStart(2, "0")}:${String(date.getMinutes()).padStart(2, "0")}`;
|
|
248
248
|
};
|
|
249
249
|
});
|
|
250
|
+
var init_module = __esmMin(async () => {
|
|
251
|
+
init_db();
|
|
252
|
+
init_utils();
|
|
253
|
+
});
|
|
250
254
|
var Tools, Common;
|
|
251
|
-
var init_Common = __esmMin(() => {
|
|
252
|
-
init_Config();
|
|
253
|
-
init_root();
|
|
255
|
+
var init_Common = __esmMin(async () => {
|
|
256
|
+
await init_Config();
|
|
257
|
+
await init_root();
|
|
258
|
+
await init_module();
|
|
254
259
|
Tools = class {
|
|
255
260
|
tempDri;
|
|
256
261
|
constructor() {
|
|
@@ -406,15 +411,20 @@ var init_Common = __esmMin(() => {
|
|
|
406
411
|
return resolvedPath;
|
|
407
412
|
}
|
|
408
413
|
count(num) {
|
|
409
|
-
|
|
410
|
-
|
|
414
|
+
return Count(num);
|
|
415
|
+
}
|
|
416
|
+
formatFileSize(sizeInMB) {
|
|
417
|
+
const size = typeof sizeInMB === "string" ? parseFloat(sizeInMB) : sizeInMB;
|
|
418
|
+
if (size < 1024) return `${size.toFixed(2)}MB`;
|
|
419
|
+
else if (size < 1024 * 1024) return `${(size / 1024).toFixed(2)}GB`;
|
|
420
|
+
else return `${(size / (1024 * 1024)).toFixed(2)}TB`;
|
|
411
421
|
}
|
|
412
422
|
};
|
|
413
423
|
Common = new Tools();
|
|
414
424
|
});
|
|
415
425
|
var mergeFile, FFmpeg;
|
|
416
|
-
var init_FFmpeg = __esmMin(() => {
|
|
417
|
-
init_utils();
|
|
426
|
+
var init_FFmpeg = __esmMin(async () => {
|
|
427
|
+
await init_utils();
|
|
418
428
|
mergeFile = async (type, options) => await new FFmpeg(type).FFmpeg(options);
|
|
419
429
|
FFmpeg = class {
|
|
420
430
|
type;
|
|
@@ -823,10 +833,6 @@ var init_Networks = __esmMin(() => {
|
|
|
823
833
|
}
|
|
824
834
|
};
|
|
825
835
|
});
|
|
826
|
-
var init_module = __esmMin(async () => {
|
|
827
|
-
init_db();
|
|
828
|
-
init_utils();
|
|
829
|
-
});
|
|
830
836
|
var import_browser, createQrCodePlugin;
|
|
831
837
|
var init_plugins = __esmMin(() => {
|
|
832
838
|
import_browser = __toESM(require_browser());
|
|
@@ -4304,9 +4310,10 @@ var Bilibili = class extends Base {
|
|
|
4304
4310
|
CommentLength: Config.bilibili.realCommentCount ? Count(infoData.data.data.stat.reply) : String(commentsdata.length),
|
|
4305
4311
|
share_url: "https://b23.tv/" + infoData.data.data.bvid,
|
|
4306
4312
|
Clarity: Config.bilibili.videoQuality !== 0 && Config.bilibili.videoQuality < 64 ? nockData.data.accept_description[nockData.data.accept_description.length - 1] : playUrlData.data.data.accept_description[0],
|
|
4307
|
-
VideoSize: Config.bilibili.videoQuality !== 0 && Config.bilibili.videoQuality < 64 ? (nockData.data.durl[0].size / (1024 * 1024)).toFixed(2) : videoSize,
|
|
4313
|
+
VideoSize: Config.bilibili.videoQuality !== 0 && Config.bilibili.videoQuality < 64 ? Common.formatFileSize((nockData.data.durl[0].size / (1024 * 1024)).toFixed(2)) : Common.formatFileSize(videoSize),
|
|
4308
4314
|
ImageLength: 0,
|
|
4309
|
-
shareurl: "https://b23.tv/" + infoData.data.data.bvid
|
|
4315
|
+
shareurl: "https://b23.tv/" + infoData.data.data.bvid,
|
|
4316
|
+
Resolution: Config.bilibili.videoQuality !== 0 && Config.bilibili.videoQuality < 64 ? null : `${playUrlData.data.data.dash.video[0].width} x ${playUrlData.data.data.dash.video[0].height}`
|
|
4310
4317
|
});
|
|
4311
4318
|
this.e.reply(img$1);
|
|
4312
4319
|
}
|
|
@@ -4431,7 +4438,8 @@ var Bilibili = class extends Base {
|
|
|
4431
4438
|
CommentLength: String(commentsdata?.length ?? 0),
|
|
4432
4439
|
share_url: "https://t.bilibili.com/" + dynamicInfo.data.data.item.id_str,
|
|
4433
4440
|
ImageLength: dynamicInfo.data.data.item.modules?.module_dynamic?.major?.draw?.items?.length ?? 0,
|
|
4434
|
-
shareurl: "动态分享链接"
|
|
4441
|
+
shareurl: "动态分享链接",
|
|
4442
|
+
Resolution: null
|
|
4435
4443
|
});
|
|
4436
4444
|
if (imgArray.length === 1) this.e.reply(imgArray[0]);
|
|
4437
4445
|
if (imgArray.length > 1) {
|
|
@@ -4585,7 +4593,8 @@ var Bilibili = class extends Base {
|
|
|
4585
4593
|
CommentLength: String(bilibiliComments(commentsData.data, dynamicInfo.data.data.item.modules.module_author.mid.toString())?.length ? bilibiliComments(commentsData.data, dynamicInfo.data.data.item.modules.module_author.mid.toString()).length : 0),
|
|
4586
4594
|
share_url: "https://www.bilibili.com/video/" + bvid,
|
|
4587
4595
|
ImageLength: dynamicInfo.data.data.item.modules?.module_dynamic?.major?.draw?.items?.length ?? 0,
|
|
4588
|
-
shareurl: "动态分享链接"
|
|
4596
|
+
shareurl: "动态分享链接",
|
|
4597
|
+
Resolution: null
|
|
4589
4598
|
}));
|
|
4590
4599
|
img$1 = await Render("bilibili/dynamic/DYNAMIC_TYPE_AV", {
|
|
4591
4600
|
image_url: INFODATA.data.data.pic,
|
|
@@ -6403,7 +6412,9 @@ var DouYin = class extends Base {
|
|
|
6403
6412
|
if (!douyinCommentsRes.CommentsData.length) await this.e.reply("这个作品没有评论 ~");
|
|
6404
6413
|
else {
|
|
6405
6414
|
const suggest = [];
|
|
6406
|
-
|
|
6415
|
+
if (VideoData.data.aweme_detail?.suggest_words?.suggest_words) {
|
|
6416
|
+
for (const item of VideoData.data.aweme_detail.suggest_words.suggest_words) if (item.words && item.scene === "comment_top_rec") for (const v of item.words) v.word && suggest.push(v.word);
|
|
6417
|
+
}
|
|
6407
6418
|
const img$2 = await Render("douyin/comment", {
|
|
6408
6419
|
Type: this.is_mp4 ? "视频" : this.is_slides ? "合辑" : "图集",
|
|
6409
6420
|
CommentsData: douyinCommentsRes.CommentsData,
|
|
@@ -7878,6 +7889,13 @@ var handleBusinessError = async (error, options, logs$1, event) => {
|
|
|
7878
7889
|
logger.debug(`[ErrorHandler] 开始处理业务错误: ${options.businessName}`);
|
|
7879
7890
|
const triggerCommand = event?.msg || "未知命令或处于非消息环境";
|
|
7880
7891
|
const buildMetadata = getBuildMetadata();
|
|
7892
|
+
const adapterInfo = event?.bot?.adapter ? {
|
|
7893
|
+
name: event.bot.adapter.name,
|
|
7894
|
+
version: event.bot.adapter.version,
|
|
7895
|
+
platform: event.bot.adapter.platform,
|
|
7896
|
+
protocol: event.bot.adapter.protocol,
|
|
7897
|
+
standard: event.bot.adapter.standard
|
|
7898
|
+
} : void 0;
|
|
7881
7899
|
logger.debug("[ErrorHandler] 正在渲染错误页面...");
|
|
7882
7900
|
const img$2 = await Render("other/handlerError", {
|
|
7883
7901
|
type: "business_error",
|
|
@@ -7895,7 +7913,8 @@ var handleBusinessError = async (error, options, logs$1, event) => {
|
|
|
7895
7913
|
frameworkVersion: Root.karinVersion,
|
|
7896
7914
|
pluginVersion: Root.pluginVersion,
|
|
7897
7915
|
buildTime: buildMetadata?.buildTime ? formatBuildTime(buildMetadata.buildTime) : void 0,
|
|
7898
|
-
commitHash: buildMetadata?.commitHash
|
|
7916
|
+
commitHash: buildMetadata?.commitHash,
|
|
7917
|
+
adapterInfo
|
|
7899
7918
|
});
|
|
7900
7919
|
logger.debug("[ErrorHandler] 错误页面渲染完成");
|
|
7901
7920
|
if (event && Config.app.errorLogSendTo.some((item) => item === "trigger")) try {
|
|
@@ -526,11 +526,13 @@ interface BilibiliCommentProps extends BaseComponentProps {
|
|
|
526
526
|
shareurl: string;
|
|
527
527
|
/** 分享URL */
|
|
528
528
|
share_url: string;
|
|
529
|
+
/** 视频分辨率 */
|
|
530
|
+
Resolution: string | null;
|
|
529
531
|
/** 评论数据 */
|
|
530
532
|
CommentsData: CommentItem[];
|
|
531
533
|
};
|
|
532
534
|
/** 预生成的二维码数据URL */
|
|
533
|
-
qrCodeDataUrl
|
|
535
|
+
qrCodeDataUrl: string;
|
|
534
536
|
}
|
|
535
537
|
/**
|
|
536
538
|
* 粉丝卡片信息接口
|
|
@@ -1440,6 +1442,21 @@ interface BusinessError {
|
|
|
1440
1442
|
businessName: string;
|
|
1441
1443
|
}
|
|
1442
1444
|
/**
|
|
1445
|
+
* 适配器信息接口
|
|
1446
|
+
*/
|
|
1447
|
+
interface AdapterInfo {
|
|
1448
|
+
/** 适配器名称 */
|
|
1449
|
+
name: string;
|
|
1450
|
+
/** 适配器版本 */
|
|
1451
|
+
version: string;
|
|
1452
|
+
/** 平台名称 */
|
|
1453
|
+
platform: string;
|
|
1454
|
+
/** 协议名称 */
|
|
1455
|
+
protocol: string;
|
|
1456
|
+
/** 标准协议 */
|
|
1457
|
+
standard?: string;
|
|
1458
|
+
}
|
|
1459
|
+
/**
|
|
1443
1460
|
* API错误组件属性接口
|
|
1444
1461
|
*/
|
|
1445
1462
|
interface ApiErrorProps extends BaseComponentProps {
|
|
@@ -1467,6 +1484,8 @@ interface ApiErrorProps extends BaseComponentProps {
|
|
|
1467
1484
|
buildTime?: string;
|
|
1468
1485
|
/** Commit ID */
|
|
1469
1486
|
commitHash?: string;
|
|
1487
|
+
/** 适配器信息 */
|
|
1488
|
+
adapterInfo?: AdapterInfo;
|
|
1470
1489
|
};
|
|
1471
1490
|
/** 分享链接 */
|
|
1472
1491
|
qrCodeDataUrl: string;
|