karin-plugin-kkk 2.36.2 → 2.36.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 +17 -0
- package/lib/build-metadata.json +5 -5
- package/lib/core_chunk/main.js +18 -13
- package/lib/core_chunk/template.d.mts +1 -1
- package/lib/core_chunk/vendor.js +155 -155
- package/lib/web/assets/{CronEditor-BrSMQ7Wt.js → CronEditor-rHmpAxFj.js} +1 -1
- package/lib/web/assets/{DesktopLayout-D42mvBB3.js → DesktopLayout-Cr5ZibGs.js} +1 -1
- package/lib/web/assets/{MobileLayout-CsGZCHOX.js → MobileLayout-WN2r3MCa.js} +1 -1
- package/lib/web/assets/{ThemeSwitch-CehenZXq.js → ThemeSwitch-DMmlpRk7.js} +1 -1
- package/lib/web/assets/{index-xT9tCQxI.js → index-DU0mjeqO.js} +3 -3
- package/lib/web/assets/{separator-0i510i92.js → separator-DSAWGreF.js} +1 -1
- package/lib/web/index.html +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,23 @@
|
|
|
2
2
|
|
|
3
3
|
# Changelog
|
|
4
4
|
|
|
5
|
+
## [2.36.3](https://github.com/ikenxuan/karin-plugin-kkk/compare/v2.36.2...v2.36.3) (2026-07-07)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### 🐛 错误修复
|
|
9
|
+
|
|
10
|
+
* 1 ([b33a64f](https://github.com/ikenxuan/karin-plugin-kkk/commit/b33a64fda635534e194e78cfad779506a4063875))
|
|
11
|
+
* **core:** 优化本地开发环境判断 ([#328](https://github.com/ikenxuan/karin-plugin-kkk/issues/328)) ([3a4ba32](https://github.com/ikenxuan/karin-plugin-kkk/commit/3a4ba32a649e7bbf9e146136d705425606f9ac14))
|
|
12
|
+
* **douyin:** 移除部分错误捕获 ([2a924d1](https://github.com/ikenxuan/karin-plugin-kkk/commit/2a924d1e32111d2db71271e3bb457bea379f47c7))
|
|
13
|
+
* 主动消息默认重试次数改为0 ([e0779bf](https://github.com/ikenxuan/karin-plugin-kkk/commit/e0779bf6b118ef0ca8c201c4ca821793b9abc102))
|
|
14
|
+
* 依赖缺失 ([0e7fd57](https://github.com/ikenxuan/karin-plugin-kkk/commit/0e7fd5719355c084f753b06aee2b1638cebd2da2))
|
|
15
|
+
* 更新 @ikenxuan/qrcode 依赖至 1.4.0,并使用同步方法解析二维码 ([edf1db5](https://github.com/ikenxuan/karin-plugin-kkk/commit/edf1db5d0e0245358fa1daac132a5a19ae023caf))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### 📦 依赖更新
|
|
19
|
+
|
|
20
|
+
* update ([6458627](https://github.com/ikenxuan/karin-plugin-kkk/commit/64586271d96f71c6b45444a3bae59ea180cabe49))
|
|
21
|
+
|
|
5
22
|
## [2.36.2](https://github.com/ikenxuan/karin-plugin-kkk/compare/v2.36.1...v2.36.2) (2026-06-30)
|
|
6
23
|
|
|
7
24
|
|
package/lib/build-metadata.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "2.36.
|
|
3
|
-
"buildTime": "2026-
|
|
4
|
-
"buildTimestamp":
|
|
2
|
+
"version": "2.36.3",
|
|
3
|
+
"buildTime": "2026-07-07T09:21:01.284Z",
|
|
4
|
+
"buildTimestamp": 1783416061284,
|
|
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": "713f028bd0432595508092edf1427f661f820279",
|
|
9
|
+
"shortCommitHash": "713f028b"
|
|
10
10
|
}
|
package/lib/core_chunk/main.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as __toESM } from "./rolldown-runtime.js";
|
|
2
|
-
import { $ as SiXiaomi, $n as
|
|
2
|
+
import { $ as SiXiaomi, $n as CircleCheck, $t as Quote, A as AiFillHeart, An as Copy, At as X, B as RiHeartLine, Bn as Box, Bt as Square, C as MdLocationOn, Cn as EyeOff, Ct as parse, D as FaTiktok, Dn as Crown, Dt as differenceInSeconds, E as FaMusic, En as Download, Et as format, F as RiArrowRightFill, Fn as CircleFadingArrowUp, Ft as Upload, G as RiStarFill, Gn as WandSparkles, Gt as Share2, H as RiMessage3Fill, Hn as Bookmark, Ht as ShoppingBag, I as RiGroupLine, In as CircleEllipsis, It as Trash2, J as RiTiktokFill, Jn as SquarePen, Jt as ScanLine, K as RiStarLine, Kn as UsersRound, Kt as Settings2, L as RiHashtag, Ln as Check, Lt as Terminal, M as AiFillStar, Mn as Clock, Mt as Users, N as AiOutlineVideoCamera, Nn as Clock3, Nt as User, O as FaUserGroup, On as Cpu, Ot as twMerge, P as Markdown, Pn as Clapperboard, Pt as UserPlus, Q as RiVideoLine, Qn as CircleQuestionMark, Qt as Radio, R as RiHeart3Fill, Rn as Camera, Rt as Sun, S as MdLightbulbOutline, Sn as FileText, St as zhCN, T as FaCommentDots, Tn as ExternalLink, Tt as formatDistanceToNow, U as RiPieChart2Fill, Un as BellRing, Ut as Shield, V as RiLiveLine, Vn as Bot, Vt as Smartphone, W as RiShareForwardFill, Wn as ArrowDownToLine, Wt as ShieldCheck, X as RiUserFollowLine, Xn as LoaderCircle, Xt as RotateCcw, Y as RiTrophyFill, Yn as Sparkles, Yt as Save, Z as RiVerifiedBadgeFill, Zn as FilePlay, Zt as RefreshCw, _ as tailwind_css, _n as Heart, _t as n, a as VictoryScatter, an as Palette, ar as clsx, at as SiHonor, b as MdFitScreen, bn as Gift, bt as o$1, c as VictoryChart, cn as Monitor, cr as require_react, ct as SiBilibili, d as VictoryTheme, dn as Maximize, dr as CryptoConfig, dt as o$2, en as QrCode, er as CircleCheckBig, et as SiVivo, f as rehypeHighlight, fn as MapPin, fr as FingerprintGenerator, ft as r, g as tsdown, gn as Image$1, gt as a, h as typescript, hn as Info, ht as m, i as require_heic_decode, in as Pencil, ir as Button, it as SiHuawei, j as AiFillPushpin, jn as Code, jt as Video, k as BiImage, kn as CornerDownLeft, kt as Zap, l as VictoryAxis, ln as MessageCircle, lr as require_protobufjs, lt as SiApple, m as vite, mn as LayoutTemplate, mr as zod_default, mt as o$3, n as require_lib, nn as Plus, nr as ChartColumn, nt as SiOppo, o as VictoryPie, on as Music, or as require_jsx_runtime, ot as SiGooglephotos, p as webassembly, pn as Link, pr as Xhshow, pt as o, q as RiThumbUpFill, qn as TriangleAlert, qt as Search, r as require_jpeg_js, rn as Play, rr as Chip, rt as SiOneplus, s as VictoryLine, sn as Moon, sr as require_server_node, st as SiGithub, t as createProxyMiddleware, tn as Puzzle, tr as CircleAlert, tt as SiSamsung, u as VictoryLabel, un as Menu, ur as Chalk, ut as SiAnthropic, v as sqlite, vn as Hash, vt as e, w as MdSchedule, wn as Eye, wt as fromUnixTime, x as MdInfoOutline, xn as Gamepad2, xt as c, y as react, yn as GitBranch, yt as a$1, z as RiHeart3Line, zn as Calendar, zt as Star } from "./vendor.js";
|
|
3
3
|
import "node:module";
|
|
4
4
|
import fs from "node:fs";
|
|
5
5
|
import path, { resolve } from "node:path";
|
|
@@ -14,7 +14,7 @@ import { karinPathBase, karinPathTemp as karinPathTemp$1 } from "node-karin/root
|
|
|
14
14
|
import sqlite3 from "node-karin/sqlite3";
|
|
15
15
|
import YAML from "node-karin/yaml";
|
|
16
16
|
import util from "node:util";
|
|
17
|
-
import {
|
|
17
|
+
import { generateSync, scanSync } from "@ikenxuan/qrcode";
|
|
18
18
|
import { Transform } from "node:stream";
|
|
19
19
|
import { pipeline } from "node:stream/promises";
|
|
20
20
|
import _ from "node-karin/lodash";
|
|
@@ -10926,7 +10926,7 @@ var uploadFile = async (event, file, videoUrl, options) => {
|
|
|
10926
10926
|
await bot.uploadFile(contact, File, file.originTitle ? `${file.originTitle}.mp4` : `${File.split("/").pop()}`);
|
|
10927
10927
|
} else {
|
|
10928
10928
|
logger.mark(`${logger.blue("主动消息:")} 视频大小: ${newFileSize.toFixed(1)}MB 正在通过${logger.yellow("karin.sendMsg")}回复...`);
|
|
10929
|
-
sendStatus = (await karin.sendMsg(selfId, contact, [segment.video(File)])).messageId ? true : false;
|
|
10929
|
+
sendStatus = (await karin.sendMsg(selfId, contact, [segment.video(File)], { retryCount: 0 })).messageId ? true : false;
|
|
10930
10930
|
}
|
|
10931
10931
|
else if (options?.useGroupFile) {
|
|
10932
10932
|
logger.mark(`${logger.blue("被动消息:")} 视频大小: ${newFileSize.toFixed(1)}MB 正在通过${logger.yellow("e.bot.uploadFile")}回复...`);
|
|
@@ -11123,7 +11123,7 @@ var Common = new class Tools {
|
|
|
11123
11123
|
try {
|
|
11124
11124
|
logger.debug(`检测到${source}为图片,尝试识别二维码...`);
|
|
11125
11125
|
const response = await axios.get(imageUrl, { responseType: "arraybuffer" });
|
|
11126
|
-
const qrContent =
|
|
11126
|
+
const qrContent = scanSync(Buffer.from(response.data));
|
|
11127
11127
|
if (qrContent && [
|
|
11128
11128
|
/(https?:\/\/)?(www|v|jx|m|jingxuan)\.(douyin|iesdouyin)\.com/i,
|
|
11129
11129
|
/https:\/\/aweme\.snssdk\.com\/aweme\/v1\/play/i,
|
|
@@ -15546,7 +15546,7 @@ var renderRichTextToReact = (document, options = {}) => {
|
|
|
15546
15546
|
* @return {string} The base64-encoded QR code image.
|
|
15547
15547
|
*/
|
|
15548
15548
|
var generateQRCode = (text, useDarkTheme = false) => {
|
|
15549
|
-
return `data:image/webp;base64,${
|
|
15549
|
+
return `data:image/webp;base64,${generateSync({
|
|
15550
15550
|
data: text,
|
|
15551
15551
|
size: 1e3,
|
|
15552
15552
|
dotsOptions: {
|
|
@@ -32917,6 +32917,14 @@ var cleanOldDynamicCache = async (platform, days = 7) => {
|
|
|
32917
32917
|
};
|
|
32918
32918
|
//#endregion
|
|
32919
32919
|
//#region src/web.config.ts
|
|
32920
|
+
var resolveRealPath = (value) => {
|
|
32921
|
+
try {
|
|
32922
|
+
return fs.realpathSync.native(value);
|
|
32923
|
+
} catch {
|
|
32924
|
+
return path.resolve(value);
|
|
32925
|
+
}
|
|
32926
|
+
};
|
|
32927
|
+
var isLocalDevelopment = process.env.NODE_ENV === "development" && resolveRealPath(Root.pluginPath) === resolveRealPath(process.cwd());
|
|
32920
32928
|
var webConfig = defineConfig({
|
|
32921
32929
|
info: {
|
|
32922
32930
|
id: "karin-plugin-kkk",
|
|
@@ -32938,7 +32946,7 @@ var webConfig = defineConfig({
|
|
|
32938
32946
|
}]
|
|
32939
32947
|
},
|
|
32940
32948
|
page: {
|
|
32941
|
-
url:
|
|
32949
|
+
url: isLocalDevelopment ? "http://localhost:5176/kkk/assets/karin-config" : "/kkk/assets/karin-config",
|
|
32942
32950
|
title: "kkk插件配置管理",
|
|
32943
32951
|
description: "使用 kkk 插件自带的配置管理页面"
|
|
32944
32952
|
}
|
|
@@ -39996,7 +40004,7 @@ var DouYinpush = class extends Base {
|
|
|
39996
40004
|
if (Config.douyin.push.parsedynamic && status.message_id) {
|
|
39997
40005
|
const workTypeInfo = getWorkTypeInfo(Detail_Data);
|
|
39998
40006
|
logger.debug(`开始解析作品,类型为:${getWorkTypeDisplayName(workTypeInfo)}`);
|
|
39999
|
-
if (workTypeInfo.isVideo)
|
|
40007
|
+
if (workTypeInfo.isVideo) {
|
|
40000
40008
|
/** 默认视频下载地址 */
|
|
40001
40009
|
let downloadUrl = `https://aweme.snssdk.com/aweme/v1/play/?video_id=${Detail_Data.video.play_addr.uri}&ratio=1080p&line=0`;
|
|
40002
40010
|
logger.debug(`开始排除不符合条件的视频分辨率;\n
|
|
@@ -40023,10 +40031,7 @@ var DouYinpush = class extends Base {
|
|
|
40023
40031
|
group_id: groupId
|
|
40024
40032
|
}
|
|
40025
40033
|
});
|
|
40026
|
-
}
|
|
40027
|
-
throw new Error(`下载视频失败: ${error}`);
|
|
40028
|
-
}
|
|
40029
|
-
else if (workTypeInfo.isImage && iddata.type === "one_work") {
|
|
40034
|
+
} else if (workTypeInfo.isImage && iddata.type === "one_work") {
|
|
40030
40035
|
if (Detail_Data.is_slides === true && Detail_Data.images) {
|
|
40031
40036
|
const images = [];
|
|
40032
40037
|
const temp = [];
|
|
@@ -41724,7 +41729,7 @@ var waitQrcode = async (page) => {
|
|
|
41724
41729
|
const response = await fetch(originalImage);
|
|
41725
41730
|
imageBuffer = Buffer.from(await response.arrayBuffer());
|
|
41726
41731
|
}
|
|
41727
|
-
const qrContent =
|
|
41732
|
+
const qrContent = scanSync(imageBuffer);
|
|
41728
41733
|
if (qrContent) {
|
|
41729
41734
|
logger.mark("二维码解码成功:", qrContent);
|
|
41730
41735
|
return {
|
|
@@ -43608,7 +43613,7 @@ app$1.use(ASSETS_PREFIX, staticRouter);
|
|
|
43608
43613
|
app.use(KKK_PREFIX, app$1);
|
|
43609
43614
|
//#endregion
|
|
43610
43615
|
//#region src/setup.ts
|
|
43611
|
-
var requireVersion = "1.16.
|
|
43616
|
+
var requireVersion = "1.16.2";
|
|
43612
43617
|
if (process.env.NODE_ENV !== "development" && isSemverGreater(requireVersion, Root.karinVersion)) {
|
|
43613
43618
|
const msg = `[karin-plugin-kkk] 插件构建时的 karin 版本 (${requireVersion}) 高于当前运行版本 (${Root.karinVersion}),可能会出现兼容性问题!`;
|
|
43614
43619
|
logger.warn(msg);
|
|
@@ -1810,7 +1810,7 @@ declare namespace WebSocket {
|
|
|
1810
1810
|
}
|
|
1811
1811
|
}
|
|
1812
1812
|
//#endregion
|
|
1813
|
-
//#region ../../node_modules/.pnpm/node-karin@1.16.
|
|
1813
|
+
//#region ../../node_modules/.pnpm/node-karin@1.16.2/node_modules/node-karin/dist/index.d.ts
|
|
1814
1814
|
//#endregion
|
|
1815
1815
|
//#region src/types/adapter/info.d.ts
|
|
1816
1816
|
/**
|