karin-plugin-kkk 2.27.4 → 2.27.5
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 +9 -0
- package/lib/apps/__ready.js +1 -1
- package/lib/apps/admin.js +1 -1
- package/lib/apps/help.js +1 -1
- package/lib/apps/push.js +1 -1
- package/lib/apps/qrlogin.js +1 -1
- package/lib/apps/statistics.js +1 -1
- package/lib/apps/tools.js +1 -1
- package/lib/apps/update.js +1 -1
- package/lib/build-metadata.json +5 -5
- package/lib/core_chunk/ArticleWork-DAUu405n.js +2 -0
- package/lib/core_chunk/Comment-C4O4BGki.js +2 -0
- package/lib/core_chunk/{Comment-3FcCu8BO.js → Comment-CvirQFYw.js} +1 -1
- package/lib/core_chunk/Comment-DRZJbKCo.js +2 -0
- package/lib/core_chunk/Comment-OVXVG_tK.js +2 -0
- package/lib/core_chunk/{DYNAMIC_TYPE_ARTICLE-DIZ4FpfS.js → DYNAMIC_TYPE_ARTICLE-BWmq2izT.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_AV-5WXLprJ7.js → DYNAMIC_TYPE_AV-DEXvSz0s.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_DRAW-CA3dYbCJ.js → DYNAMIC_TYPE_DRAW-BAoyJ_xj.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_FORWARD-DEna4cpV.js → DYNAMIC_TYPE_FORWARD-BI22-GqJ.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_LIVE_RCMD-BpDR7WHh.js → DYNAMIC_TYPE_LIVE_RCMD-6e6Nxtk5.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_WORD-uj6LDApK.js → DYNAMIC_TYPE_WORD-BTU9phya.js} +1 -1
- package/lib/core_chunk/Dynamic-hjZ0BWR-.js +2 -0
- package/lib/core_chunk/FavoriteList-DUfIRclT.js +2 -0
- package/lib/core_chunk/GlobalStatistics-B3CAQ44M.js +2 -0
- package/lib/core_chunk/GroupStatistics-D4gbZHi3.js +2 -0
- package/lib/core_chunk/Help-Dsw5G3Do.js +2 -0
- package/lib/core_chunk/ImageWork-B9FSN_iw.js +2 -0
- package/lib/core_chunk/Live-KEnoE0UO.js +2 -0
- package/lib/core_chunk/MusicInfo-Ddrg14eN.js +2 -0
- package/lib/core_chunk/RecommendList-D1l_s0TC.js +2 -0
- package/lib/core_chunk/UserList-BApDU1lF.js +2 -0
- package/lib/core_chunk/UserList-H1AY3_uj.js +2 -0
- package/lib/core_chunk/UserVideoList-CMMgbIYt.js +2 -0
- package/lib/core_chunk/VersionWarning-BW24eFU4.js +2 -0
- package/lib/core_chunk/VideoWork-BiIIbFeI.js +2 -0
- package/lib/core_chunk/amagiClient-ZfZHbiuk.js +2 -0
- package/lib/core_chunk/bangumi-Dp7MOjzD.js +2 -0
- package/lib/core_chunk/changelog-C8dAS9l4.js +2 -0
- package/lib/core_chunk/db-BejzAO0s.js +2 -0
- package/lib/core_chunk/dist-BAaLyQpB.js +2 -0
- package/lib/core_chunk/handlerError-BOPnE0Gh.js +2 -0
- package/lib/core_chunk/{main-6Y7nyjx4.js → main-DmN-B2b6.js} +620 -357
- package/lib/core_chunk/{noteInfo-ceSqTSrs.js → noteInfo-srWUKzIA.js} +1 -1
- package/lib/core_chunk/qrcodeImg-DSrE-i8P.js +2 -0
- package/lib/core_chunk/qrcodeImg-p3e0i2PO.js +2 -0
- package/lib/core_chunk/qrlogin-B_Yo4Job.js +2 -0
- package/lib/core_chunk/setup-B-ut9uDP.js +2 -0
- package/lib/core_chunk/template.d.mts +351 -15
- package/lib/core_chunk/template.js +1 -1
- package/lib/core_chunk/{vendor-C2bazYnS.js → vendor-BVonRw7I.js} +6444 -180
- package/lib/core_chunk/videoInfo-Bhn9Z9tk.js +2 -0
- package/lib/core_chunk/videoInfo-DQEHVJxc.js +2 -0
- package/lib/index.js +1 -1
- package/lib/karin-plugin-kkk.css +41 -2
- package/lib/root.js +1 -1
- package/lib/web.config.js +1 -1
- package/package.json +2 -2
- package/resources/image/other/handlerError/Milky.png +0 -0
- package/resources/image/other/handlerError/onebot.png +0 -0
- package/resources/image/other/handlerError/satori.png +0 -0
- package/lib/core_chunk/ArticleWork-B_N5AkIO.js +0 -2
- package/lib/core_chunk/Comment-B114EV7_.js +0 -2
- package/lib/core_chunk/Comment-DnBi7suz.js +0 -2
- package/lib/core_chunk/Comment-jN3Jrbqy.js +0 -2
- package/lib/core_chunk/Dynamic-CjBqyS5b.js +0 -2
- package/lib/core_chunk/FavoriteList-DqEIdIRs.js +0 -2
- package/lib/core_chunk/GlobalStatistics-CjRmAre5.js +0 -2
- package/lib/core_chunk/GroupStatistics-B1KiWL8O.js +0 -2
- package/lib/core_chunk/Help-cUrYFfcV.js +0 -2
- package/lib/core_chunk/ImageWork-Q04TjdP2.js +0 -2
- package/lib/core_chunk/Live-9Ap-uSUG.js +0 -2
- package/lib/core_chunk/MusicInfo-DTgkPZdV.js +0 -2
- package/lib/core_chunk/RecommendList-zmL3tGkI.js +0 -2
- package/lib/core_chunk/UserList-DXZAtRSu.js +0 -2
- package/lib/core_chunk/UserList-DpZY5fHU.js +0 -2
- package/lib/core_chunk/UserVideoList-BjL0jy7v.js +0 -2
- package/lib/core_chunk/VersionWarning-Brat9oYa.js +0 -2
- package/lib/core_chunk/VideoWork-BNvQCKg2.js +0 -2
- package/lib/core_chunk/amagiClient-ATxzS7iY.js +0 -2
- package/lib/core_chunk/bangumi-Dn8bqGCx.js +0 -2
- package/lib/core_chunk/changelog-BEPsRL3p.js +0 -2
- package/lib/core_chunk/db-UHhoG96T.js +0 -2
- package/lib/core_chunk/dist-BN09jDjE.js +0 -2
- package/lib/core_chunk/handlerError-BdKMBVs1.js +0 -2
- package/lib/core_chunk/qrcodeImg-8IjCL_dz.js +0 -2
- package/lib/core_chunk/qrcodeImg-DYsRwngE.js +0 -2
- package/lib/core_chunk/qrlogin-zLF4JsCE.js +0 -2
- package/lib/core_chunk/setup-9JCJqKat.js +0 -2
- package/lib/core_chunk/videoInfo-C6b97ZWx.js +0 -2
- package/lib/core_chunk/videoInfo-JeaHNtaa.js +0 -2
- package/resources/image/other/handlerError/cxk.png +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { o as __toESM } from "./rolldown-runtime-8i3BgXHp.js";
|
|
2
|
-
import { $ as
|
|
2
|
+
import { $ as RiThumbUpFill, $t as format, A as RiArrowRightFill, At as FileText, B as RiListCheck2, Bt as CircleAlert, C as AiFillStar, Ct as MessageCircle, D as Markdown, Dt as Hash, E as IoSearch, Et as Heart, F as RiHeart2Line, Ft as Coins, G as RiQuestionFill, Gt as Bell, H as RiLoginCircleFill, Ht as Calendar, I as RiHeart3Fill, It as Clock, J as RiSendPlaneFill, K as RiRefreshLine, Kt as require_dist, L as RiHeart3Line, Lt as CircleFadingArrowUp, M as RiBellFill, Mt as ExternalLink, N as RiGroupLine, Nt as Crown, O as SiBilibili, Ot as Gift, P as RiHashtag, Pt as CornerDownLeft, Q as RiStarLine, Qt as formatDistanceToNow, R as RiLineChartFill, Rt as CircleEllipsis, S as AiFillPushpin, Sn as zod_default, St as Music, T as IoExtensionPuzzleOutline, Tt as Info, U as RiMessage3Fill, Ut as Bookmark, V as RiLiveLine, Vt as ChartColumn, W as RiPieChart2Fill, Wt as BookOpen, X as RiSparkling2Fill, Xt as parse, Y as RiShareForwardFill, Yt as zhCN, Z as RiStarFill, Zt as fromUnixTime, _ as FaMusic, _n as require_protobufjs, _t as ScanLine, a as VictoryLine, an as code_default, at as Zap, b as BsImage, bn as axios$1, bt as QrCode, c as VictoryLabel, cn as HeroUIProvider, ct as UserPlus, d as HiOutlineMenuAlt2, dn as require_react, dt as Terminal, en as differenceInSeconds, et as RiTiktokFill, f as MdAccessTime, fn as require_png, ft as Star, g as FaCommentDots, gn as require_express, gt as Share2, h as FaCodeBranch, hn as require_heic_decode, ht as ShieldCheck, i as VictoryPie, in as require_server_node, it as RiVideoLine, j as RiBarChartFill, jt as Eye, k as LuFullscreen, kt as Gamepad2, l as VictoryTheme, ln as require_jsx_runtime, lt as TriangleAlert, m as MdOutlineLightbulb, mn as require_jpeg_js, mt as Shield, n as rehypeHighlight, nn as Window, nt as RiUserFollowLine, o as VictoryChart, on as chip_default, ot as Users, p as MdLocationOn, pn as require_jsQR, pt as Smartphone, q as RiRobot2Fill, qt as require_lib, r as VictoryScatter, rn as purify, rt as RiVerifiedBadgeFill, s as VictoryAxis, sn as button_default, st as User, t as require_lodash, tn as require_qr_code_styling, tt as RiTrophyFill, u as TbScan, un as clsx, ut as ThumbsUp, v as FaTiktok, vn as Chalk, vt as Radio, w as AiOutlineVideoCamera, wt as MapPin, x as AiFillHeart, xn as Xhshow, xt as Play, y as FaUserGroup, yn as AxiosError$1, yt as Quote, z as RiLinkM, zt as CircleCheckBig } from "./vendor-BVonRw7I.js";
|
|
3
3
|
import "node:module";
|
|
4
4
|
import fs from "node:fs";
|
|
5
5
|
import path, { resolve } from "node:path";
|
|
6
6
|
import URL$1, { fileURLToPath } from "node:url";
|
|
7
7
|
import os, { platform } from "node:os";
|
|
8
|
-
import karin$1, { BOT_CONNECT, app, authMiddleware, checkPkgUpdate, checkPort, common, components, config, copyConfigSync, createBadRequestResponse, createNotFoundResponse, createServerErrorResponse, createSuccessResponse, db, defineConfig, ffmpeg, ffprobe, filesByExt, getBot, hooks, karin, karinPathHtml, karinPathTemp, logger, logger as logger$1, logs, mkdirSync, range, render, requireFileSync, restart, segment, updatePkg, watch } from "node-karin";
|
|
8
|
+
import karin$1, { BOT_CONNECT, app, authMiddleware, checkPkgUpdate, checkPort, common, components, config, copyConfigSync, createBadRequestResponse, createNotFoundResponse, createServerErrorResponse, createSuccessResponse, db, defineConfig, ffmpeg, ffprobe, filesByExt, getBot, hooks, karin, karinPathHtml, karinPathTemp, logger, logger as logger$1, logs, mkdirSync, parseChangelog, range, render, requireFileSync, restart, segment, updatePkg, watch } from "node-karin";
|
|
9
9
|
import _ from "node-karin/lodash";
|
|
10
10
|
import { EventEmitter } from "node:events";
|
|
11
11
|
import crypto from "node:crypto";
|
|
@@ -21,7 +21,7 @@ import { snapka } from "@snapka/puppeteer";
|
|
|
21
21
|
import { newInjectedPage } from "fingerprint-injector";
|
|
22
22
|
import express from "node-karin/express";
|
|
23
23
|
globalThis.__kkkLoadStart ??= process.hrtime.bigint();
|
|
24
|
-
import("./setup-
|
|
24
|
+
import("./setup-B-ut9uDP.js");
|
|
25
25
|
var resolvePluginRoot = (startUrl) => {
|
|
26
26
|
let dir = path.dirname(startUrl);
|
|
27
27
|
for (let i = 0; i < 8; i++) {
|
|
@@ -5213,7 +5213,7 @@ var Cfg = class {
|
|
|
5213
5213
|
const fileName = path.basename(file, ".yaml");
|
|
5214
5214
|
if (fileName === "cookies" || fileName === "request") {
|
|
5215
5215
|
logger.debug(`[Config] 检测到 ${fileName} 配置变化,正在重载 Amagi Client...`);
|
|
5216
|
-
import("./amagiClient-
|
|
5216
|
+
import("./amagiClient-ZfZHbiuk.js").then(({ reloadAmagiConfig }) => {
|
|
5217
5217
|
reloadAmagiConfig();
|
|
5218
5218
|
}).catch((error) => {
|
|
5219
5219
|
logger.error(`[Config] 重载 Amagi Client 失败: ${error}`);
|
|
@@ -5232,7 +5232,7 @@ var Cfg = class {
|
|
|
5232
5232
|
};
|
|
5233
5233
|
}
|
|
5234
5234
|
async All() {
|
|
5235
|
-
const { getDouyinDB, getBilibiliDB } = await import("./db-
|
|
5235
|
+
const { getDouyinDB, getBilibiliDB } = await import("./db-BejzAO0s.js");
|
|
5236
5236
|
const douyinDB = await getDouyinDB();
|
|
5237
5237
|
const bilibiliDB = await getBilibiliDB();
|
|
5238
5238
|
const allConfig = {};
|
|
@@ -5274,7 +5274,7 @@ var Cfg = class {
|
|
|
5274
5274
|
fs.writeFileSync(path, yamlData.toString({ lineWidth: -1 }), "utf8");
|
|
5275
5275
|
}
|
|
5276
5276
|
async ModifyPro(name, config, type = "config") {
|
|
5277
|
-
const { getDouyinDB, getBilibiliDB } = await import("./db-
|
|
5277
|
+
const { getDouyinDB, getBilibiliDB } = await import("./db-BejzAO0s.js");
|
|
5278
5278
|
const douyinDB = await getDouyinDB();
|
|
5279
5279
|
const bilibiliDB = await getBilibiliDB();
|
|
5280
5280
|
const filePath = type === "config" ? `${this.dirCfgPath}/${name}.yaml` : `${this.defCfgPath}/${name}.yaml`;
|
|
@@ -5379,7 +5379,7 @@ var Cfg = class {
|
|
|
5379
5379
|
}
|
|
5380
5380
|
async syncConfigToDatabase() {
|
|
5381
5381
|
try {
|
|
5382
|
-
const { getDouyinDB, getBilibiliDB } = await import("./db-
|
|
5382
|
+
const { getDouyinDB, getBilibiliDB } = await import("./db-BejzAO0s.js");
|
|
5383
5383
|
const douyinDB = await getDouyinDB();
|
|
5384
5384
|
const bilibiliDB = await getBilibiliDB();
|
|
5385
5385
|
const pushCfg = this.getYaml("config", "pushlist");
|
|
@@ -8030,47 +8030,47 @@ var componentConfigs = baseComponentConfigs.map((basePlatform) => {
|
|
|
8030
8030
|
switch (baseComponent.id) {
|
|
8031
8031
|
case "comment": return createComponentConfig(baseComponent, {
|
|
8032
8032
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8033
|
-
lazyComponent: () => import("./Comment-
|
|
8033
|
+
lazyComponent: () => import("./Comment-C4O4BGki.js").then((module) => ({ default: module.DouyinComment }))
|
|
8034
8034
|
});
|
|
8035
8035
|
case "dynamic": return createComponentConfig(baseComponent, {
|
|
8036
8036
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8037
|
-
lazyComponent: () => import("./Dynamic-
|
|
8037
|
+
lazyComponent: () => import("./Dynamic-hjZ0BWR-.js").then((module) => ({ default: module.DouyinDynamic }))
|
|
8038
8038
|
});
|
|
8039
8039
|
case "video-work": return createComponentConfig(baseComponent, {
|
|
8040
8040
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8041
|
-
lazyComponent: () => import("./VideoWork-
|
|
8041
|
+
lazyComponent: () => import("./VideoWork-BiIIbFeI.js").then((module) => ({ default: module.DouyinVideoWork }))
|
|
8042
8042
|
});
|
|
8043
8043
|
case "image-work": return createComponentConfig(baseComponent, {
|
|
8044
8044
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8045
|
-
lazyComponent: () => import("./ImageWork-
|
|
8045
|
+
lazyComponent: () => import("./ImageWork-B9FSN_iw.js").then((module) => ({ default: module.DouyinImageWork }))
|
|
8046
8046
|
});
|
|
8047
8047
|
case "article-work": return createComponentConfig(baseComponent, {
|
|
8048
8048
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8049
|
-
lazyComponent: () => import("./ArticleWork-
|
|
8049
|
+
lazyComponent: () => import("./ArticleWork-DAUu405n.js").then((module) => ({ default: module.DouyinArticleWork }))
|
|
8050
8050
|
});
|
|
8051
8051
|
case "favorite-list": return createComponentConfig(baseComponent, {
|
|
8052
8052
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8053
|
-
lazyComponent: () => import("./FavoriteList-
|
|
8053
|
+
lazyComponent: () => import("./FavoriteList-DUfIRclT.js").then((module) => ({ default: module.DouyinFavoriteList }))
|
|
8054
8054
|
});
|
|
8055
8055
|
case "recommend-list": return createComponentConfig(baseComponent, {
|
|
8056
8056
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8057
|
-
lazyComponent: () => import("./RecommendList-
|
|
8057
|
+
lazyComponent: () => import("./RecommendList-D1l_s0TC.js").then((module) => ({ default: module.DouyinRecommendList }))
|
|
8058
8058
|
});
|
|
8059
8059
|
case "live": return createComponentConfig(baseComponent, {
|
|
8060
8060
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8061
|
-
lazyComponent: () => import("./Live-
|
|
8061
|
+
lazyComponent: () => import("./Live-KEnoE0UO.js").then((module) => ({ default: module.DouyinLive }))
|
|
8062
8062
|
});
|
|
8063
8063
|
case "musicinfo": return createComponentConfig(baseComponent, {
|
|
8064
8064
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8065
|
-
lazyComponent: () => import("./MusicInfo-
|
|
8065
|
+
lazyComponent: () => import("./MusicInfo-Ddrg14eN.js").then((module) => ({ default: module.DouyinMusicInfo }))
|
|
8066
8066
|
});
|
|
8067
|
-
case "user_profile": return createComponentConfig(baseComponent, { lazyComponent: () => import("./UserVideoList-
|
|
8067
|
+
case "user_profile": return createComponentConfig(baseComponent, { lazyComponent: () => import("./UserVideoList-CMMgbIYt.js").then((module) => ({ default: module.DouyinUserVideoList })) });
|
|
8068
8068
|
case "userlist": return createComponentConfig(baseComponent, {
|
|
8069
8069
|
validateData: (data) => data && Array.isArray(data.renderOpt),
|
|
8070
|
-
lazyComponent: () => import("./UserList-
|
|
8070
|
+
lazyComponent: () => import("./UserList-BApDU1lF.js").then((module) => ({ default: module.default }))
|
|
8071
8071
|
});
|
|
8072
|
-
case "videoInfo": return createComponentConfig(baseComponent, { lazyComponent: () => import("./videoInfo-
|
|
8073
|
-
case "qrcodeImg": return createComponentConfig(baseComponent, { lazyComponent: () => import("./qrcodeImg-
|
|
8072
|
+
case "videoInfo": return createComponentConfig(baseComponent, { lazyComponent: () => import("./videoInfo-Bhn9Z9tk.js").then((module) => ({ default: module.DouyinVideoInfo })) });
|
|
8073
|
+
case "qrcodeImg": return createComponentConfig(baseComponent, { lazyComponent: () => import("./qrcodeImg-p3e0i2PO.js").then((module) => ({ default: module.DouyinQrcodeImg })) });
|
|
8074
8074
|
default: return createComponentConfig(baseComponent);
|
|
8075
8075
|
}
|
|
8076
8076
|
});
|
|
@@ -8080,42 +8080,42 @@ var componentConfigs = baseComponentConfigs.map((basePlatform) => {
|
|
|
8080
8080
|
switch (baseComponent.id) {
|
|
8081
8081
|
case "comment": return createComponentConfig(baseComponent, {
|
|
8082
8082
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8083
|
-
lazyComponent: () => import("./Comment-
|
|
8083
|
+
lazyComponent: () => import("./Comment-OVXVG_tK.js").then((module) => ({ default: module.BilibiliComment }))
|
|
8084
8084
|
});
|
|
8085
8085
|
case "userlist": return createComponentConfig(baseComponent, {
|
|
8086
8086
|
validateData: (data) => data && Array.isArray(data.renderOpt),
|
|
8087
|
-
lazyComponent: () => import("./UserList-
|
|
8087
|
+
lazyComponent: () => import("./UserList-H1AY3_uj.js").then((module) => ({ default: module.default }))
|
|
8088
8088
|
});
|
|
8089
|
-
case "bangumi": return createComponentConfig(baseComponent, { lazyComponent: () => import("./bangumi-
|
|
8089
|
+
case "bangumi": return createComponentConfig(baseComponent, { lazyComponent: () => import("./bangumi-Dp7MOjzD.js").then((module) => ({ default: module.default })) });
|
|
8090
8090
|
case "dynamic/DYNAMIC_TYPE_DRAW": return createComponentConfig(baseComponent, {
|
|
8091
8091
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8092
|
-
lazyComponent: () => import("./DYNAMIC_TYPE_DRAW-
|
|
8092
|
+
lazyComponent: () => import("./DYNAMIC_TYPE_DRAW-BAoyJ_xj.js").then((module) => ({ default: module.BilibiliDrawDynamic }))
|
|
8093
8093
|
});
|
|
8094
8094
|
case "dynamic/DYNAMIC_TYPE_WORD": return createComponentConfig(baseComponent, {
|
|
8095
8095
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8096
|
-
lazyComponent: () => import("./DYNAMIC_TYPE_WORD-
|
|
8096
|
+
lazyComponent: () => import("./DYNAMIC_TYPE_WORD-BTU9phya.js").then((module) => ({ default: module.BilibiliWordDynamic }))
|
|
8097
8097
|
});
|
|
8098
8098
|
case "dynamic/DYNAMIC_TYPE_AV": return createComponentConfig(baseComponent, {
|
|
8099
8099
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8100
|
-
lazyComponent: () => import("./DYNAMIC_TYPE_AV-
|
|
8100
|
+
lazyComponent: () => import("./DYNAMIC_TYPE_AV-DEXvSz0s.js").then((module) => ({ default: module.BilibiliVideoDynamic }))
|
|
8101
8101
|
});
|
|
8102
8102
|
case "dynamic/DYNAMIC_TYPE_FORWARD": return createComponentConfig(baseComponent, {
|
|
8103
8103
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8104
|
-
lazyComponent: () => import("./DYNAMIC_TYPE_FORWARD-
|
|
8104
|
+
lazyComponent: () => import("./DYNAMIC_TYPE_FORWARD-BI22-GqJ.js").then((module) => ({ default: module.BilibiliForwardDynamic }))
|
|
8105
8105
|
});
|
|
8106
8106
|
case "dynamic/DYNAMIC_TYPE_LIVE_RCMD": return createComponentConfig(baseComponent, {
|
|
8107
8107
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8108
|
-
lazyComponent: () => import("./DYNAMIC_TYPE_LIVE_RCMD-
|
|
8108
|
+
lazyComponent: () => import("./DYNAMIC_TYPE_LIVE_RCMD-6e6Nxtk5.js").then((module) => ({ default: module.BilibiliLiveDynamic }))
|
|
8109
8109
|
});
|
|
8110
8110
|
case "dynamic/DYNAMIC_TYPE_WORD": return createComponentConfig(baseComponent, { validateData: (data) => data && typeof data.share_url === "string" });
|
|
8111
|
-
case "dynamic/DYNAMIC_TYPE_ARTICLE": return createComponentConfig(baseComponent, { lazyComponent: () => import("./DYNAMIC_TYPE_ARTICLE-
|
|
8111
|
+
case "dynamic/DYNAMIC_TYPE_ARTICLE": return createComponentConfig(baseComponent, { lazyComponent: () => import("./DYNAMIC_TYPE_ARTICLE-BWmq2izT.js").then((module) => ({ default: module.BilibiliArticleDynamic })) });
|
|
8112
8112
|
case "videoInfo": return createComponentConfig(baseComponent, {
|
|
8113
8113
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8114
|
-
lazyComponent: () => import("./videoInfo-
|
|
8114
|
+
lazyComponent: () => import("./videoInfo-DQEHVJxc.js").then((module) => ({ default: module.BilibiliVideoInfo }))
|
|
8115
8115
|
});
|
|
8116
8116
|
case "qrcodeImg": return createComponentConfig(baseComponent, {
|
|
8117
8117
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8118
|
-
lazyComponent: () => import("./qrcodeImg-
|
|
8118
|
+
lazyComponent: () => import("./qrcodeImg-DSrE-i8P.js").then((module) => ({ default: module.BilibiliQrcodeImg }))
|
|
8119
8119
|
});
|
|
8120
8120
|
default: return createComponentConfig(baseComponent);
|
|
8121
8121
|
}
|
|
@@ -8126,7 +8126,7 @@ var componentConfigs = baseComponentConfigs.map((basePlatform) => {
|
|
|
8126
8126
|
switch (baseComponent.id) {
|
|
8127
8127
|
case "comment": return createComponentConfig(baseComponent, {
|
|
8128
8128
|
validateData: (data) => data && typeof data.share_url === "string",
|
|
8129
|
-
lazyComponent: () => import("./Comment-
|
|
8129
|
+
lazyComponent: () => import("./Comment-DRZJbKCo.js").then((module) => ({ default: module.KuaishouComment }))
|
|
8130
8130
|
});
|
|
8131
8131
|
default: return createComponentConfig(baseComponent);
|
|
8132
8132
|
}
|
|
@@ -8135,8 +8135,8 @@ var componentConfigs = baseComponentConfigs.map((basePlatform) => {
|
|
|
8135
8135
|
case PlatformType.XIAOHONGSHU:
|
|
8136
8136
|
platform.components = basePlatform.components.map((baseComponent) => {
|
|
8137
8137
|
switch (baseComponent.id) {
|
|
8138
|
-
case "noteInfo": return createComponentConfig(baseComponent, { lazyComponent: () => import("./noteInfo-
|
|
8139
|
-
case "comment": return createComponentConfig(baseComponent, { lazyComponent: () => import("./Comment-
|
|
8138
|
+
case "noteInfo": return createComponentConfig(baseComponent, { lazyComponent: () => import("./noteInfo-srWUKzIA.js").then((module) => ({ default: module.XiaohongshuNoteInfo })) });
|
|
8139
|
+
case "comment": return createComponentConfig(baseComponent, { lazyComponent: () => import("./Comment-CvirQFYw.js").then((module) => ({ default: module.XiaohongshuComment })) });
|
|
8140
8140
|
default: return createComponentConfig(baseComponent);
|
|
8141
8141
|
}
|
|
8142
8142
|
});
|
|
@@ -8144,11 +8144,11 @@ var componentConfigs = baseComponentConfigs.map((basePlatform) => {
|
|
|
8144
8144
|
case PlatformType.OTHER:
|
|
8145
8145
|
platform.components = basePlatform.components.map((baseComponent) => {
|
|
8146
8146
|
switch (baseComponent.id) {
|
|
8147
|
-
case "help": return createComponentConfig(baseComponent, { lazyComponent: () => import("./Help-
|
|
8148
|
-
case "handlerError": return createComponentConfig(baseComponent, { lazyComponent: () => import("./handlerError-
|
|
8149
|
-
case "changelog": return createComponentConfig(baseComponent, { lazyComponent: () => import("./changelog-
|
|
8150
|
-
case "version_warning": return createComponentConfig(baseComponent, { lazyComponent: () => import("./VersionWarning-
|
|
8151
|
-
case "qrlogin": return createComponentConfig(baseComponent, { lazyComponent: () => import("./qrlogin-
|
|
8147
|
+
case "help": return createComponentConfig(baseComponent, { lazyComponent: () => import("./Help-Dsw5G3Do.js").then((module) => ({ default: module.default })) });
|
|
8148
|
+
case "handlerError": return createComponentConfig(baseComponent, { lazyComponent: () => import("./handlerError-BOPnE0Gh.js").then((module) => ({ default: module.handlerError })) });
|
|
8149
|
+
case "changelog": return createComponentConfig(baseComponent, { lazyComponent: () => import("./changelog-C8dAS9l4.js").then((module) => ({ default: module.Changelog })) });
|
|
8150
|
+
case "version_warning": return createComponentConfig(baseComponent, { lazyComponent: () => import("./VersionWarning-BW24eFU4.js").then((module) => ({ default: module.VersionWarning })) });
|
|
8151
|
+
case "qrlogin": return createComponentConfig(baseComponent, { lazyComponent: () => import("./qrlogin-B_Yo4Job.js").then((module) => ({ default: module.QrLogin })) });
|
|
8152
8152
|
default: return createComponentConfig(baseComponent);
|
|
8153
8153
|
}
|
|
8154
8154
|
});
|
|
@@ -8156,8 +8156,8 @@ var componentConfigs = baseComponentConfigs.map((basePlatform) => {
|
|
|
8156
8156
|
case PlatformType.STATISTICS:
|
|
8157
8157
|
platform.components = basePlatform.components.map((baseComponent) => {
|
|
8158
8158
|
switch (baseComponent.id) {
|
|
8159
|
-
case "group": return createComponentConfig(baseComponent, { lazyComponent: () => import("./GroupStatistics-
|
|
8160
|
-
case "global": return createComponentConfig(baseComponent, { lazyComponent: () => import("./GlobalStatistics-
|
|
8159
|
+
case "group": return createComponentConfig(baseComponent, { lazyComponent: () => import("./GroupStatistics-D4gbZHi3.js").then((module) => ({ default: module.GroupStatistics })) });
|
|
8160
|
+
case "global": return createComponentConfig(baseComponent, { lazyComponent: () => import("./GlobalStatistics-B3CAQ44M.js").then((module) => ({ default: module.GlobalStatistics })) });
|
|
8161
8161
|
default: return createComponentConfig(baseComponent);
|
|
8162
8162
|
}
|
|
8163
8163
|
});
|
|
@@ -12421,7 +12421,6 @@ var renderErrorImage = async (ctx, opts = {}) => {
|
|
|
12421
12421
|
buildTime: buildMetadata?.buildTime ? formatBuildTime(buildMetadata.buildTime) : void 0,
|
|
12422
12422
|
commitHash: buildMetadata?.commitHash,
|
|
12423
12423
|
adapterInfo,
|
|
12424
|
-
amagiVersion: Client.version,
|
|
12425
12424
|
isVerification: opts.isVerification,
|
|
12426
12425
|
verificationUrl: opts.verificationUrl,
|
|
12427
12426
|
share_url: opts.share_url
|
|
@@ -12601,13 +12600,7 @@ var handleBusinessError = async (error, options, logs, event) => {
|
|
|
12601
12600
|
logs,
|
|
12602
12601
|
event,
|
|
12603
12602
|
buildMetadata: getBuildMetadata(),
|
|
12604
|
-
adapterInfo: event.bot?.adapter ?
|
|
12605
|
-
name: event.bot.adapter.name,
|
|
12606
|
-
version: event.bot.adapter.version,
|
|
12607
|
-
platform: event.bot.adapter.platform,
|
|
12608
|
-
protocol: event.bot.adapter.protocol,
|
|
12609
|
-
standard: event.bot.adapter.standard
|
|
12610
|
-
} : void 0
|
|
12603
|
+
adapterInfo: event.bot?.adapter ? event.bot.adapter : void 0
|
|
12611
12604
|
};
|
|
12612
12605
|
for (const strategy of getStrategies()) if (strategy.match(ctx)) {
|
|
12613
12606
|
logger.debug(`[ErrorHandler] 匹配策略: ${strategy.name}`);
|
|
@@ -15523,6 +15516,7 @@ registerErrorStrategy({
|
|
|
15523
15516
|
await sendErrorToMaster(ctx, img);
|
|
15524
15517
|
await sendErrorToAllMasters(ctx, img);
|
|
15525
15518
|
const resultCtx = await karin$1.ctx(event);
|
|
15519
|
+
if (!resultCtx) return "continue";
|
|
15526
15520
|
const params = new URLSearchParams(resultCtx.msg);
|
|
15527
15521
|
const validate = params.get("validate");
|
|
15528
15522
|
const seccode = params.get("seccode");
|
|
@@ -19758,6 +19752,17 @@ var versionCore = (v) => {
|
|
|
19758
19752
|
const [core] = preBuild.split("-", 2);
|
|
19759
19753
|
return core;
|
|
19760
19754
|
};
|
|
19755
|
+
var getLagVersionCount = (changelog, localVersion, remoteVersion) => {
|
|
19756
|
+
const local = versionCore(localVersion);
|
|
19757
|
+
const remote = versionCore(remoteVersion);
|
|
19758
|
+
if (!local || !remote || !isSemverGreater(remote, local)) return 0;
|
|
19759
|
+
const versions = Object.keys(parseChangelog(changelog)).map(versionCore).filter(Boolean);
|
|
19760
|
+
return [...new Set(versions)].filter((version) => {
|
|
19761
|
+
const afterLocal = isSemverGreater(version, local);
|
|
19762
|
+
const notAfterRemote = !isSemverGreater(version, remote);
|
|
19763
|
+
return afterLocal && notAfterRemote;
|
|
19764
|
+
}).length;
|
|
19765
|
+
};
|
|
19761
19766
|
var getRemoteBuildMetadata = async (version) => {
|
|
19762
19767
|
const requests = [
|
|
19763
19768
|
`https://jsd.onmicrosoft.cn/npm/${Root.pluginName}@${version}/lib/build-metadata.json`,
|
|
@@ -19781,6 +19786,7 @@ var getRemoteBuildMetadata = async (version) => {
|
|
|
19781
19786
|
var getChangelogImage = async (ctx, props) => {
|
|
19782
19787
|
let changelog = "";
|
|
19783
19788
|
let buildTime;
|
|
19789
|
+
let lagVersionCount = 0;
|
|
19784
19790
|
const event = "bot" in ctx ? ctx : { bot: ctx };
|
|
19785
19791
|
if (props.Tip || props.isRemote) {
|
|
19786
19792
|
const requests = [
|
|
@@ -19814,6 +19820,7 @@ var getChangelogImage = async (ctx, props) => {
|
|
|
19814
19820
|
return null;
|
|
19815
19821
|
}
|
|
19816
19822
|
if (!changelog) return null;
|
|
19823
|
+
lagVersionCount = getLagVersionCount(changelog, props.localVersion, props.remoteVersion);
|
|
19817
19824
|
const remoteMeta = await getRemoteBuildMetadata(props.remoteVersion);
|
|
19818
19825
|
if (remoteMeta?.buildTime) buildTime = formatBuildTime(remoteMeta.buildTime);
|
|
19819
19826
|
changelog = range({
|
|
@@ -19825,6 +19832,7 @@ var getChangelogImage = async (ctx, props) => {
|
|
|
19825
19832
|
} else {
|
|
19826
19833
|
try {
|
|
19827
19834
|
changelog = fs.readFileSync(Root.pluginPath + "/CHANGELOG.md", "utf8");
|
|
19835
|
+
lagVersionCount = getLagVersionCount(changelog, props.localVersion, props.remoteVersion);
|
|
19828
19836
|
changelog = range({
|
|
19829
19837
|
data: changelog,
|
|
19830
19838
|
startVersion: props.localVersion,
|
|
@@ -19842,6 +19850,7 @@ var getChangelogImage = async (ctx, props) => {
|
|
|
19842
19850
|
Tip: props.Tip,
|
|
19843
19851
|
localVersion: props.localVersion,
|
|
19844
19852
|
remoteVersion: props.remoteVersion,
|
|
19853
|
+
lagVersionCount,
|
|
19845
19854
|
buildTime
|
|
19846
19855
|
}) || null;
|
|
19847
19856
|
};
|
|
@@ -33433,148 +33442,237 @@ var VersionWarning = (props) => {
|
|
|
33433
33442
|
}),
|
|
33434
33443
|
(0, import_jsx_runtime.jsxs)("div", {
|
|
33435
33444
|
className: "space-y-20",
|
|
33436
|
-
children: [
|
|
33437
|
-
|
|
33438
|
-
|
|
33439
|
-
|
|
33440
|
-
|
|
33441
|
-
|
|
33442
|
-
|
|
33443
|
-
|
|
33444
|
-
|
|
33445
|
-
|
|
33445
|
+
children: [
|
|
33446
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
33447
|
+
className: "flex items-center space-x-4 mb-6",
|
|
33448
|
+
children: [
|
|
33449
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33450
|
+
className: "flex items-center justify-center w-10 h-10 rounded-lg",
|
|
33451
|
+
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
33452
|
+
children: (0, import_jsx_runtime.jsx)("span", {
|
|
33453
|
+
className: "text-[28px] font-black",
|
|
33454
|
+
style: { color: accentColor },
|
|
33455
|
+
children: "1"
|
|
33456
|
+
})
|
|
33457
|
+
}),
|
|
33458
|
+
(0, import_jsx_runtime.jsxs)("svg", {
|
|
33459
|
+
className: "w-8 h-8",
|
|
33460
|
+
viewBox: "0 0 24 24",
|
|
33461
|
+
fill: "none",
|
|
33462
|
+
stroke: mutedColor,
|
|
33463
|
+
strokeWidth: "2",
|
|
33464
|
+
children: [(0, import_jsx_runtime.jsx)("rect", {
|
|
33465
|
+
x: "3",
|
|
33466
|
+
y: "3",
|
|
33467
|
+
width: "18",
|
|
33468
|
+
height: "18",
|
|
33469
|
+
rx: "2",
|
|
33470
|
+
strokeLinecap: "round",
|
|
33471
|
+
strokeLinejoin: "round"
|
|
33472
|
+
}), (0, import_jsx_runtime.jsx)("path", {
|
|
33473
|
+
d: "M9 3v18M3 9h18M3 15h18",
|
|
33474
|
+
strokeLinecap: "round",
|
|
33475
|
+
strokeLinejoin: "round"
|
|
33476
|
+
})]
|
|
33477
|
+
}),
|
|
33478
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33479
|
+
className: "text-[32px] font-bold",
|
|
33480
|
+
style: { color: mutedColor },
|
|
33481
|
+
children: "Web 控制台更新"
|
|
33482
|
+
}),
|
|
33483
|
+
(0, import_jsx_runtime.jsx)(chip_default, {
|
|
33484
|
+
className: "text-[20px] font-semibold px-4",
|
|
33485
|
+
style: {
|
|
33486
|
+
backgroundColor: isDark ? "rgba(251,146,60,0.2)" : "rgba(194,65,12,0.15)",
|
|
33487
|
+
color: accentColor
|
|
33488
|
+
},
|
|
33489
|
+
size: "lg",
|
|
33490
|
+
children: "推荐"
|
|
33446
33491
|
})
|
|
33447
|
-
|
|
33448
|
-
|
|
33449
|
-
|
|
33450
|
-
|
|
33451
|
-
|
|
33452
|
-
|
|
33453
|
-
|
|
33454
|
-
|
|
33455
|
-
|
|
33456
|
-
|
|
33457
|
-
|
|
33458
|
-
|
|
33459
|
-
|
|
33460
|
-
|
|
33461
|
-
|
|
33462
|
-
|
|
33463
|
-
|
|
33464
|
-
|
|
33465
|
-
|
|
33466
|
-
|
|
33467
|
-
|
|
33468
|
-
|
|
33469
|
-
|
|
33470
|
-
|
|
33471
|
-
|
|
33472
|
-
|
|
33473
|
-
|
|
33474
|
-
|
|
33475
|
-
|
|
33476
|
-
|
|
33477
|
-
|
|
33478
|
-
|
|
33479
|
-
|
|
33480
|
-
|
|
33481
|
-
|
|
33482
|
-
|
|
33483
|
-
|
|
33484
|
-
|
|
33485
|
-
|
|
33486
|
-
|
|
33487
|
-
|
|
33488
|
-
|
|
33489
|
-
|
|
33490
|
-
style: { backgroundColor: mutedColor }
|
|
33491
|
-
}), (0, import_jsx_runtime.jsx)("span", {
|
|
33492
|
-
className: "text-[28px] leading-relaxed",
|
|
33493
|
-
style: { color: secondaryColor },
|
|
33494
|
-
children: "访问 Karin Web 控制台首页,查看 Karin 版本信息"
|
|
33495
|
-
})]
|
|
33496
|
-
}),
|
|
33497
|
-
(0, import_jsx_runtime.jsxs)("div", {
|
|
33498
|
-
className: "flex items-start space-x-4",
|
|
33499
|
-
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33500
|
-
className: "w-3 h-3 rounded-full mt-3 flex-shrink-0",
|
|
33501
|
-
style: { backgroundColor: mutedColor }
|
|
33502
|
-
}), (0, import_jsx_runtime.jsx)("span", {
|
|
33503
|
-
className: "text-[28px] leading-relaxed",
|
|
33504
|
-
style: { color: secondaryColor },
|
|
33505
|
-
children: "当有新版本时会高亮提示,点击查看更新日志"
|
|
33506
|
-
})]
|
|
33507
|
-
}),
|
|
33508
|
-
(0, import_jsx_runtime.jsxs)("div", {
|
|
33509
|
-
className: "flex items-start space-x-4",
|
|
33510
|
-
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33511
|
-
className: "w-3 h-3 rounded-full mt-3 flex-shrink-0",
|
|
33512
|
-
style: { backgroundColor: mutedColor }
|
|
33513
|
-
}), (0, import_jsx_runtime.jsx)("span", {
|
|
33514
|
-
className: "text-[28px] leading-relaxed",
|
|
33515
|
-
style: { color: secondaryColor },
|
|
33516
|
-
children: "点击「更新」按钮,系统将自动完成更新并重启"
|
|
33517
|
-
})]
|
|
33518
|
-
})
|
|
33519
|
-
]
|
|
33520
|
-
})] }), (0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
33521
|
-
className: "flex items-center space-x-4 mb-6",
|
|
33522
|
-
children: [
|
|
33523
|
-
(0, import_jsx_runtime.jsx)("div", {
|
|
33524
|
-
className: "flex items-center justify-center w-10 h-10 rounded-lg",
|
|
33525
|
-
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
33526
|
-
children: (0, import_jsx_runtime.jsx)("span", {
|
|
33527
|
-
className: "text-[28px] font-black",
|
|
33528
|
-
style: { color: accentColor },
|
|
33529
|
-
children: "2"
|
|
33492
|
+
]
|
|
33493
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
33494
|
+
className: "ml-14 space-y-4",
|
|
33495
|
+
children: [
|
|
33496
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33497
|
+
className: "flex items-start space-x-4",
|
|
33498
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33499
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33500
|
+
style: { backgroundColor: mutedColor }
|
|
33501
|
+
}), (0, import_jsx_runtime.jsx)("span", {
|
|
33502
|
+
className: "text-[28px] leading-relaxed",
|
|
33503
|
+
style: { color: secondaryColor },
|
|
33504
|
+
children: "访问 Karin Web 控制台首页,查看 Karin 版本信息"
|
|
33505
|
+
})]
|
|
33506
|
+
}),
|
|
33507
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33508
|
+
className: "flex items-start space-x-4",
|
|
33509
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33510
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33511
|
+
style: { backgroundColor: mutedColor }
|
|
33512
|
+
}), (0, import_jsx_runtime.jsx)("span", {
|
|
33513
|
+
className: "text-[28px] leading-relaxed",
|
|
33514
|
+
style: { color: secondaryColor },
|
|
33515
|
+
children: "当有新版本时会高亮提示,点击查看更新日志"
|
|
33516
|
+
})]
|
|
33517
|
+
}),
|
|
33518
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33519
|
+
className: "flex items-start space-x-4",
|
|
33520
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33521
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33522
|
+
style: { backgroundColor: mutedColor }
|
|
33523
|
+
}), (0, import_jsx_runtime.jsxs)("span", {
|
|
33524
|
+
className: "text-[28px] leading-relaxed",
|
|
33525
|
+
style: { color: secondaryColor },
|
|
33526
|
+
children: [
|
|
33527
|
+
"点击",
|
|
33528
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33529
|
+
className: "font-mono font-black",
|
|
33530
|
+
children: "「更新」"
|
|
33531
|
+
}),
|
|
33532
|
+
"按钮,系统将自动完成更新并重启"
|
|
33533
|
+
]
|
|
33534
|
+
})]
|
|
33530
33535
|
})
|
|
33531
|
-
|
|
33532
|
-
|
|
33533
|
-
|
|
33534
|
-
|
|
33535
|
-
|
|
33536
|
-
|
|
33537
|
-
|
|
33538
|
-
|
|
33539
|
-
|
|
33540
|
-
|
|
33541
|
-
|
|
33536
|
+
]
|
|
33537
|
+
})] }),
|
|
33538
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
33539
|
+
className: "flex items-center space-x-4 mb-6",
|
|
33540
|
+
children: [
|
|
33541
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33542
|
+
className: "flex items-center justify-center w-10 h-10 rounded-lg",
|
|
33543
|
+
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
33544
|
+
children: (0, import_jsx_runtime.jsx)("span", {
|
|
33545
|
+
className: "text-[28px] font-black",
|
|
33546
|
+
style: { color: accentColor },
|
|
33547
|
+
children: "2"
|
|
33548
|
+
})
|
|
33549
|
+
}),
|
|
33550
|
+
(0, import_jsx_runtime.jsx)(IoExtensionPuzzleOutline, {
|
|
33551
|
+
className: clsx("w-10 h-auto"),
|
|
33552
|
+
style: { color: mutedColor }
|
|
33553
|
+
}),
|
|
33554
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33555
|
+
className: "text-[32px] font-bold",
|
|
33556
|
+
style: { color: mutedColor },
|
|
33557
|
+
children: "使用 basic 插件命令更新"
|
|
33558
|
+
}),
|
|
33559
|
+
(0, import_jsx_runtime.jsx)(chip_default, {
|
|
33560
|
+
className: "text-[20px] font-semibold px-4",
|
|
33561
|
+
style: {
|
|
33562
|
+
backgroundColor: isDark ? "rgba(251,146,60,0.2)" : "rgba(194,65,12,0.15)",
|
|
33563
|
+
color: accentColor
|
|
33564
|
+
},
|
|
33565
|
+
size: "lg",
|
|
33566
|
+
children: "推荐"
|
|
33542
33567
|
})
|
|
33543
|
-
|
|
33544
|
-
|
|
33545
|
-
|
|
33546
|
-
|
|
33547
|
-
|
|
33548
|
-
|
|
33549
|
-
|
|
33550
|
-
|
|
33551
|
-
|
|
33552
|
-
|
|
33553
|
-
|
|
33554
|
-
|
|
33555
|
-
|
|
33556
|
-
|
|
33557
|
-
|
|
33558
|
-
|
|
33559
|
-
|
|
33560
|
-
|
|
33561
|
-
|
|
33562
|
-
|
|
33563
|
-
|
|
33564
|
-
|
|
33565
|
-
|
|
33566
|
-
|
|
33567
|
-
|
|
33568
|
-
|
|
33568
|
+
]
|
|
33569
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
33570
|
+
className: "ml-14 space-y-4",
|
|
33571
|
+
children: [
|
|
33572
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33573
|
+
className: "flex items-start space-x-4",
|
|
33574
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33575
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33576
|
+
style: { backgroundColor: mutedColor }
|
|
33577
|
+
}), (0, import_jsx_runtime.jsxs)("span", {
|
|
33578
|
+
className: "text-[28px] leading-relaxed",
|
|
33579
|
+
style: { color: secondaryColor },
|
|
33580
|
+
children: [
|
|
33581
|
+
"插件市场搜索",
|
|
33582
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33583
|
+
className: "font-mono font-black",
|
|
33584
|
+
children: "「karin-plugin-basic」"
|
|
33585
|
+
}),
|
|
33586
|
+
"插件并安装"
|
|
33587
|
+
]
|
|
33588
|
+
})]
|
|
33589
|
+
}),
|
|
33590
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33591
|
+
className: "flex items-start space-x-4",
|
|
33592
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33593
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33594
|
+
style: { backgroundColor: mutedColor }
|
|
33595
|
+
}), (0, import_jsx_runtime.jsxs)("span", {
|
|
33596
|
+
className: "text-[28px] leading-relaxed",
|
|
33597
|
+
style: { color: secondaryColor },
|
|
33598
|
+
children: ["安装完成后发送 ", (0, import_jsx_runtime.jsx)("span", {
|
|
33599
|
+
className: "font-mono font-black",
|
|
33600
|
+
children: "「#更新」"
|
|
33601
|
+
})]
|
|
33602
|
+
})]
|
|
33603
|
+
}),
|
|
33604
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33605
|
+
className: "flex items-start space-x-4",
|
|
33606
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33607
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33608
|
+
style: { backgroundColor: mutedColor }
|
|
33609
|
+
}), (0, import_jsx_runtime.jsx)("span", {
|
|
33610
|
+
className: "text-[28px] leading-relaxed",
|
|
33611
|
+
style: { color: secondaryColor },
|
|
33612
|
+
children: "插件会自动执行更新流程"
|
|
33613
|
+
})]
|
|
33569
33614
|
})
|
|
33570
|
-
|
|
33571
|
-
|
|
33572
|
-
|
|
33573
|
-
|
|
33574
|
-
|
|
33575
|
-
|
|
33576
|
-
|
|
33577
|
-
|
|
33615
|
+
]
|
|
33616
|
+
})] }),
|
|
33617
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
33618
|
+
className: "flex items-center space-x-4 mb-6",
|
|
33619
|
+
children: [
|
|
33620
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33621
|
+
className: "flex items-center justify-center w-10 h-10 rounded-lg",
|
|
33622
|
+
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
33623
|
+
children: (0, import_jsx_runtime.jsx)("span", {
|
|
33624
|
+
className: "text-[28px] font-black",
|
|
33625
|
+
style: { color: accentColor },
|
|
33626
|
+
children: "3"
|
|
33627
|
+
})
|
|
33628
|
+
}),
|
|
33629
|
+
(0, import_jsx_runtime.jsx)("svg", {
|
|
33630
|
+
className: "w-8 h-8",
|
|
33631
|
+
viewBox: "0 0 24 24",
|
|
33632
|
+
fill: "none",
|
|
33633
|
+
stroke: mutedColor,
|
|
33634
|
+
strokeWidth: "2",
|
|
33635
|
+
children: (0, import_jsx_runtime.jsx)("path", {
|
|
33636
|
+
d: "M4 17l6-6-6-6M12 19h8",
|
|
33637
|
+
strokeLinecap: "round",
|
|
33638
|
+
strokeLinejoin: "round"
|
|
33639
|
+
})
|
|
33640
|
+
}),
|
|
33641
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33642
|
+
className: "text-[32px] font-bold",
|
|
33643
|
+
style: { color: mutedColor },
|
|
33644
|
+
children: "命令行手动更新"
|
|
33645
|
+
})
|
|
33646
|
+
]
|
|
33647
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
33648
|
+
className: "ml-14 space-y-4",
|
|
33649
|
+
children: [
|
|
33650
|
+
(0, import_jsx_runtime.jsx)("p", {
|
|
33651
|
+
className: "text-[28px]",
|
|
33652
|
+
style: { color: secondaryColor },
|
|
33653
|
+
children: "在 Karin 根目录下执行以下命令"
|
|
33654
|
+
}),
|
|
33655
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33656
|
+
className: "rounded-xl p-6",
|
|
33657
|
+
style: { backgroundColor: isDark ? "rgba(0,0,0,0.4)" : "rgba(255,255,255,0.7)" },
|
|
33658
|
+
children: (0, import_jsx_runtime.jsxs)("code", {
|
|
33659
|
+
className: "text-[40px] font-mono font-bold block",
|
|
33660
|
+
style: { color: accentColor },
|
|
33661
|
+
children: [
|
|
33662
|
+
"pnpm add node-karin@",
|
|
33663
|
+
props.data.requireVersion,
|
|
33664
|
+
" -w"
|
|
33665
|
+
]
|
|
33666
|
+
})
|
|
33667
|
+
}),
|
|
33668
|
+
(0, import_jsx_runtime.jsx)("p", {
|
|
33669
|
+
className: "text-[28px] opacity-80",
|
|
33670
|
+
style: { color: secondaryColor },
|
|
33671
|
+
children: "更新完成后手动重启 Karin 即可"
|
|
33672
|
+
})
|
|
33673
|
+
]
|
|
33674
|
+
})] })
|
|
33675
|
+
]
|
|
33578
33676
|
}),
|
|
33579
33677
|
(0, import_jsx_runtime.jsx)("div", {
|
|
33580
33678
|
className: "h-0.5 rounded-full my-10",
|
|
@@ -33584,7 +33682,7 @@ var VersionWarning = (props) => {
|
|
|
33584
33682
|
className: "rounded-2xl p-6 flex items-start space-x-5",
|
|
33585
33683
|
style: { backgroundColor: isDark ? "rgba(251,146,60,0.08)" : "rgba(194,65,12,0.08)" },
|
|
33586
33684
|
children: [(0, import_jsx_runtime.jsxs)("svg", {
|
|
33587
|
-
className: "w-10 h-10 mt-1
|
|
33685
|
+
className: "w-10 h-10 mt-1 shrink-0",
|
|
33588
33686
|
viewBox: "0 0 24 24",
|
|
33589
33687
|
fill: accentColor,
|
|
33590
33688
|
children: [(0, import_jsx_runtime.jsx)("path", { d: "M12 2L22 20H2L12 2Z" }), (0, import_jsx_runtime.jsx)("path", {
|
|
@@ -33817,81 +33915,97 @@ var Changelog = import_react.memo((props) => {
|
|
|
33817
33915
|
children: [
|
|
33818
33916
|
props.data.Tip === true ? (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: (0, import_jsx_runtime.jsxs)("div", {
|
|
33819
33917
|
className: "pt-32",
|
|
33820
|
-
children: [
|
|
33821
|
-
|
|
33822
|
-
|
|
33823
|
-
|
|
33824
|
-
|
|
33825
|
-
|
|
33826
|
-
|
|
33827
|
-
|
|
33828
|
-
children: [
|
|
33829
|
-
|
|
33830
|
-
|
|
33831
|
-
|
|
33832
|
-
|
|
33833
|
-
|
|
33834
|
-
|
|
33835
|
-
|
|
33836
|
-
|
|
33837
|
-
|
|
33838
|
-
|
|
33839
|
-
|
|
33840
|
-
|
|
33841
|
-
|
|
33842
|
-
|
|
33843
|
-
|
|
33844
|
-
|
|
33845
|
-
|
|
33846
|
-
|
|
33847
|
-
|
|
33848
|
-
|
|
33849
|
-
|
|
33850
|
-
|
|
33851
|
-
|
|
33852
|
-
|
|
33853
|
-
children: "
|
|
33854
|
-
|
|
33855
|
-
|
|
33856
|
-
|
|
33857
|
-
|
|
33858
|
-
|
|
33859
|
-
|
|
33860
|
-
|
|
33861
|
-
|
|
33862
|
-
|
|
33863
|
-
|
|
33864
|
-
|
|
33865
|
-
|
|
33866
|
-
|
|
33867
|
-
|
|
33868
|
-
|
|
33869
|
-
|
|
33870
|
-
|
|
33871
|
-
|
|
33872
|
-
|
|
33873
|
-
|
|
33874
|
-
|
|
33875
|
-
|
|
33876
|
-
|
|
33877
|
-
|
|
33878
|
-
|
|
33879
|
-
|
|
33880
|
-
|
|
33881
|
-
|
|
33882
|
-
|
|
33883
|
-
|
|
33884
|
-
|
|
33885
|
-
children:
|
|
33886
|
-
|
|
33887
|
-
|
|
33888
|
-
|
|
33889
|
-
|
|
33890
|
-
|
|
33891
|
-
|
|
33892
|
-
|
|
33893
|
-
|
|
33894
|
-
|
|
33918
|
+
children: [
|
|
33919
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33920
|
+
className: "text-5xl leading-relaxed text-center mb-8 opacity-50 text-default-600",
|
|
33921
|
+
children: "以下任意方式均可更新"
|
|
33922
|
+
}),
|
|
33923
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33924
|
+
className: "mb-10 px-8 py-5 rounded-2xl border border-default-300/70 bg-default-50/50 text-default-700 text-[2.2em] flex items-center justify-center gap-6",
|
|
33925
|
+
children: [
|
|
33926
|
+
(0, import_jsx_runtime.jsxs)("span", { children: ["当前版本: v", props.data.localVersion] }),
|
|
33927
|
+
(0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
33928
|
+
(0, import_jsx_runtime.jsxs)("span", { children: ["最新版本: v", props.data.remoteVersion] }),
|
|
33929
|
+
(0, import_jsx_runtime.jsxs)("span", { children: [
|
|
33930
|
+
",共落后 ",
|
|
33931
|
+
props.data.lagVersionCount ?? 0,
|
|
33932
|
+
" 个版本"
|
|
33933
|
+
] })
|
|
33934
|
+
]
|
|
33935
|
+
}),
|
|
33936
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33937
|
+
className: "flex flex-col gap-6 text-[2.8em] leading-relaxed text-default-700",
|
|
33938
|
+
children: [
|
|
33939
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33940
|
+
className: "flex items-center gap-5",
|
|
33941
|
+
children: [
|
|
33942
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33943
|
+
className: "text-default-500 text-[1.2em]",
|
|
33944
|
+
children: "•"
|
|
33945
|
+
}),
|
|
33946
|
+
(0, import_jsx_runtime.jsx)("span", { children: "回复" }),
|
|
33947
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33948
|
+
className: "inline-block text-[1.15em] font-bold text-default-900",
|
|
33949
|
+
children: "更新"
|
|
33950
|
+
}),
|
|
33951
|
+
(0, import_jsx_runtime.jsx)("span", { children: "立刻开始" })
|
|
33952
|
+
]
|
|
33953
|
+
}),
|
|
33954
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33955
|
+
className: "flex items-center gap-5",
|
|
33956
|
+
children: [
|
|
33957
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33958
|
+
className: "text-default-500 text-[1.2em]",
|
|
33959
|
+
children: "•"
|
|
33960
|
+
}),
|
|
33961
|
+
(0, import_jsx_runtime.jsx)("span", { children: "进入" }),
|
|
33962
|
+
(0, import_jsx_runtime.jsx)(code_default, {
|
|
33963
|
+
radius: "lg",
|
|
33964
|
+
color: "success",
|
|
33965
|
+
className: "text-[0.9em]",
|
|
33966
|
+
children: "Karin WebUI"
|
|
33967
|
+
}),
|
|
33968
|
+
(0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
33969
|
+
(0, import_jsx_runtime.jsx)(code_default, {
|
|
33970
|
+
radius: "lg",
|
|
33971
|
+
color: "success",
|
|
33972
|
+
className: "text-[0.9em]",
|
|
33973
|
+
children: "插件管理"
|
|
33974
|
+
}),
|
|
33975
|
+
(0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
33976
|
+
(0, import_jsx_runtime.jsx)(code_default, {
|
|
33977
|
+
radius: "lg",
|
|
33978
|
+
color: "success",
|
|
33979
|
+
className: "text-[0.9em]",
|
|
33980
|
+
children: "已安装"
|
|
33981
|
+
}),
|
|
33982
|
+
(0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
33983
|
+
(0, import_jsx_runtime.jsx)("span", { children: "一览更新" })
|
|
33984
|
+
]
|
|
33985
|
+
}),
|
|
33986
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33987
|
+
className: "flex items-center gap-5",
|
|
33988
|
+
children: [
|
|
33989
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33990
|
+
className: "text-default-500 text-[1.2em]",
|
|
33991
|
+
children: "•"
|
|
33992
|
+
}),
|
|
33993
|
+
(0, import_jsx_runtime.jsx)("span", { children: "Karin 根目录运行" }),
|
|
33994
|
+
(0, import_jsx_runtime.jsxs)(code_default, {
|
|
33995
|
+
radius: "lg",
|
|
33996
|
+
color: "success",
|
|
33997
|
+
className: "text-[0.85em] whitespace-nowrap",
|
|
33998
|
+
children: [
|
|
33999
|
+
"pnpm add karin-plugin-kkk@",
|
|
34000
|
+
props.data.remoteVersion,
|
|
34001
|
+
" -w"
|
|
34002
|
+
]
|
|
34003
|
+
})
|
|
34004
|
+
]
|
|
34005
|
+
})
|
|
34006
|
+
]
|
|
34007
|
+
})
|
|
34008
|
+
]
|
|
33895
34009
|
}) }) : null,
|
|
33896
34010
|
(0, import_jsx_runtime.jsx)("div", {
|
|
33897
34011
|
className: "changelog-content",
|
|
@@ -34226,6 +34340,7 @@ var ERROR_TITLES = [
|
|
|
34226
34340
|
"猝不及防"
|
|
34227
34341
|
];
|
|
34228
34342
|
var getRandomErrorTitle = () => ERROR_TITLES[Math.floor(Math.random() * ERROR_TITLES.length)];
|
|
34343
|
+
var import_lodash = __toESM(require_lodash(), 1);
|
|
34229
34344
|
var ansiColorMap = {
|
|
34230
34345
|
30: "text-default-900",
|
|
34231
34346
|
31: "text-danger",
|
|
@@ -34380,11 +34495,26 @@ var getAdapterLogo = (adapterName) => {
|
|
|
34380
34495
|
const nameLower = adapterName.toLowerCase();
|
|
34381
34496
|
for (const [key, logoPath] of Object.entries(ADAPTER_LOGO_MAP)) if (nameLower.includes(key)) return (0, import_jsx_runtime.jsx)("img", {
|
|
34382
34497
|
src: logoPath,
|
|
34383
|
-
className: "h-
|
|
34498
|
+
className: "h-20 w-auto",
|
|
34384
34499
|
alt: adapterName
|
|
34385
34500
|
});
|
|
34386
|
-
return (0, import_jsx_runtime.jsx)(
|
|
34387
|
-
};
|
|
34501
|
+
return (0, import_jsx_runtime.jsx)(IoExtensionPuzzleOutline, { className: "w-16 h-auto text-danger-700/80" });
|
|
34502
|
+
};
|
|
34503
|
+
var SectionTitle = ({ icon, en, zh, color }) => (0, import_jsx_runtime.jsxs)("div", {
|
|
34504
|
+
className: "flex items-center gap-5 mb-6",
|
|
34505
|
+
children: [icon, (0, import_jsx_runtime.jsxs)("div", {
|
|
34506
|
+
className: "flex flex-col leading-tight",
|
|
34507
|
+
children: [(0, import_jsx_runtime.jsx)("span", {
|
|
34508
|
+
className: "text-xl font-semibold tracking-[0.2em] uppercase",
|
|
34509
|
+
style: { color },
|
|
34510
|
+
children: en
|
|
34511
|
+
}), (0, import_jsx_runtime.jsx)("span", {
|
|
34512
|
+
className: "text-base font-medium tracking-[0.08em] opacity-80",
|
|
34513
|
+
style: { color },
|
|
34514
|
+
children: zh
|
|
34515
|
+
})]
|
|
34516
|
+
})]
|
|
34517
|
+
});
|
|
34388
34518
|
var handlerError = (props) => {
|
|
34389
34519
|
const { data, qrCodeDataUrl } = props;
|
|
34390
34520
|
const isDark = data.useDarkTheme === true;
|
|
@@ -34398,7 +34528,6 @@ var handlerError = (props) => {
|
|
|
34398
34528
|
const accentColor = isDark ? "#fecaca" : "#7f1d1d";
|
|
34399
34529
|
return (0, import_jsx_runtime.jsxs)(DefaultLayout, {
|
|
34400
34530
|
...props,
|
|
34401
|
-
version: void 0,
|
|
34402
34531
|
className: "relative overflow-hidden",
|
|
34403
34532
|
style: {
|
|
34404
34533
|
backgroundColor: bgColor,
|
|
@@ -34638,12 +34767,13 @@ var handlerError = (props) => {
|
|
|
34638
34767
|
style: { color: mutedColor },
|
|
34639
34768
|
children: "Date"
|
|
34640
34769
|
}), (0, import_jsx_runtime.jsx)("div", {
|
|
34641
|
-
className: "font-mono text-3xl font-bold tracking-
|
|
34770
|
+
className: "font-mono text-3xl font-bold tracking-[0.2em]",
|
|
34642
34771
|
style: { color: secondaryColor },
|
|
34643
|
-
children: new Date(data.timestamp).toLocaleDateString("
|
|
34644
|
-
|
|
34645
|
-
month: "2-digit"
|
|
34646
|
-
|
|
34772
|
+
children: new Date(data.timestamp).toLocaleDateString("zh-CN", {
|
|
34773
|
+
year: "numeric",
|
|
34774
|
+
month: "2-digit",
|
|
34775
|
+
day: "2-digit"
|
|
34776
|
+
}).replaceAll("/", "-")
|
|
34647
34777
|
})]
|
|
34648
34778
|
})
|
|
34649
34779
|
]
|
|
@@ -34705,16 +34835,14 @@ var handlerError = (props) => {
|
|
|
34705
34835
|
}),
|
|
34706
34836
|
data.triggerCommand && (0, import_jsx_runtime.jsxs)("div", {
|
|
34707
34837
|
className: "mb-14",
|
|
34708
|
-
children: [(0, import_jsx_runtime.
|
|
34709
|
-
|
|
34710
|
-
children: [(0, import_jsx_runtime.jsx)(Terminal, {
|
|
34838
|
+
children: [(0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
34839
|
+
icon: (0, import_jsx_runtime.jsx)(Terminal, {
|
|
34711
34840
|
className: "w-9 h-9",
|
|
34712
34841
|
style: { color: mutedColor }
|
|
34713
|
-
}),
|
|
34714
|
-
|
|
34715
|
-
|
|
34716
|
-
|
|
34717
|
-
})]
|
|
34842
|
+
}),
|
|
34843
|
+
en: "Trigger Command",
|
|
34844
|
+
zh: "触发命令",
|
|
34845
|
+
color: mutedColor
|
|
34718
34846
|
}), (0, import_jsx_runtime.jsx)("div", {
|
|
34719
34847
|
className: "p-10 rounded-[36px]",
|
|
34720
34848
|
style: { backgroundColor: isDark ? "rgba(0,0,0,0.2)" : "rgba(255,255,255,0.5)" },
|
|
@@ -34727,16 +34855,14 @@ var handlerError = (props) => {
|
|
|
34727
34855
|
}),
|
|
34728
34856
|
(0, import_jsx_runtime.jsxs)("div", {
|
|
34729
34857
|
className: "mb-14",
|
|
34730
|
-
children: [(0, import_jsx_runtime.
|
|
34731
|
-
|
|
34732
|
-
children: [(0, import_jsx_runtime.jsx)(CircleAlert, {
|
|
34858
|
+
children: [(0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
34859
|
+
icon: (0, import_jsx_runtime.jsx)(CircleAlert, {
|
|
34733
34860
|
className: "w-9 h-9",
|
|
34734
34861
|
style: { color: primaryColor }
|
|
34735
|
-
}),
|
|
34736
|
-
|
|
34737
|
-
|
|
34738
|
-
|
|
34739
|
-
})]
|
|
34862
|
+
}),
|
|
34863
|
+
en: "Stack Trace",
|
|
34864
|
+
zh: "错误堆栈",
|
|
34865
|
+
color: mutedColor
|
|
34740
34866
|
}), (0, import_jsx_runtime.jsx)("div", {
|
|
34741
34867
|
className: "p-10 rounded-[36px]",
|
|
34742
34868
|
style: {
|
|
@@ -34752,16 +34878,14 @@ var handlerError = (props) => {
|
|
|
34752
34878
|
}),
|
|
34753
34879
|
data.logs && data.logs.length > 0 && (0, import_jsx_runtime.jsxs)("div", {
|
|
34754
34880
|
className: "mb-14",
|
|
34755
|
-
children: [(0, import_jsx_runtime.
|
|
34756
|
-
|
|
34757
|
-
children: [(0, import_jsx_runtime.jsx)(FileText, {
|
|
34881
|
+
children: [(0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
34882
|
+
icon: (0, import_jsx_runtime.jsx)(FileText, {
|
|
34758
34883
|
className: "w-9 h-9",
|
|
34759
34884
|
style: { color: mutedColor }
|
|
34760
|
-
}),
|
|
34761
|
-
|
|
34762
|
-
|
|
34763
|
-
|
|
34764
|
-
})]
|
|
34885
|
+
}),
|
|
34886
|
+
en: "Execution Logs",
|
|
34887
|
+
zh: "执行日志",
|
|
34888
|
+
color: mutedColor
|
|
34765
34889
|
}), (0, import_jsx_runtime.jsx)("div", {
|
|
34766
34890
|
className: "space-y-6",
|
|
34767
34891
|
children: data.logs.map((log, index) => {
|
|
@@ -34829,7 +34953,7 @@ var handlerError = (props) => {
|
|
|
34829
34953
|
}), (0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
34830
34954
|
className: "text-xl",
|
|
34831
34955
|
style: { color: mutedColor },
|
|
34832
|
-
children: "Framework"
|
|
34956
|
+
children: "Framework / 框架版本"
|
|
34833
34957
|
}), (0, import_jsx_runtime.jsx)("p", {
|
|
34834
34958
|
className: "text-3xl font-bold",
|
|
34835
34959
|
style: { color: accentColor },
|
|
@@ -34860,48 +34984,141 @@ var handlerError = (props) => {
|
|
|
34860
34984
|
}), (0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
34861
34985
|
className: "text-xl",
|
|
34862
34986
|
style: { color: mutedColor },
|
|
34863
|
-
children: "Plugin"
|
|
34987
|
+
children: "Plugin / 插件版本"
|
|
34864
34988
|
}), (0, import_jsx_runtime.jsx)("p", {
|
|
34865
34989
|
className: "text-3xl font-bold",
|
|
34866
34990
|
style: { color: accentColor },
|
|
34867
34991
|
children: data.pluginVersion
|
|
34868
34992
|
})] })]
|
|
34869
34993
|
}),
|
|
34870
|
-
data.amagiVersion && (0, import_jsx_runtime.jsxs)("div", {
|
|
34871
|
-
className: "flex items-center gap-6",
|
|
34872
|
-
children: [(0, import_jsx_runtime.jsx)("img", {
|
|
34873
|
-
src: "/image/other/handlerError/cxk.png",
|
|
34874
|
-
alt: "Amagi",
|
|
34875
|
-
className: "w-16 h-16"
|
|
34876
|
-
}), (0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
34877
|
-
className: "text-xl",
|
|
34878
|
-
style: { color: mutedColor },
|
|
34879
|
-
children: "API Library"
|
|
34880
|
-
}), (0, import_jsx_runtime.jsx)("p", {
|
|
34881
|
-
className: "text-3xl font-bold",
|
|
34882
|
-
style: { color: accentColor },
|
|
34883
|
-
children: data.amagiVersion
|
|
34884
|
-
})] })]
|
|
34885
|
-
}),
|
|
34886
34994
|
data.adapterInfo && (0, import_jsx_runtime.jsxs)("div", {
|
|
34887
|
-
className: "
|
|
34888
|
-
|
|
34889
|
-
|
|
34890
|
-
|
|
34891
|
-
|
|
34892
|
-
|
|
34893
|
-
className: "flex items-
|
|
34894
|
-
children: [(0, import_jsx_runtime.
|
|
34895
|
-
className: "
|
|
34896
|
-
|
|
34897
|
-
|
|
34898
|
-
|
|
34899
|
-
|
|
34900
|
-
|
|
34901
|
-
|
|
34902
|
-
|
|
34995
|
+
className: "col-span-2 p-8 rounded-3xl",
|
|
34996
|
+
style: {
|
|
34997
|
+
backgroundColor: isDark ? "rgba(0,0,0,0.18)" : "rgba(255,255,255,0.52)",
|
|
34998
|
+
border: `1px solid ${isDark ? "rgba(248,113,113,0.22)" : "rgba(220,38,38,0.14)"}`
|
|
34999
|
+
},
|
|
35000
|
+
children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
35001
|
+
className: "flex items-start justify-between gap-8 mb-6",
|
|
35002
|
+
children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
35003
|
+
className: "flex items-center gap-6 min-w-0",
|
|
35004
|
+
children: [getAdapterLogo(data.adapterInfo.name), (0, import_jsx_runtime.jsxs)("div", {
|
|
35005
|
+
className: "min-w-0",
|
|
35006
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35007
|
+
className: "text-xl mb-1",
|
|
35008
|
+
style: { color: mutedColor },
|
|
35009
|
+
children: "Adapter / 适配器"
|
|
35010
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
35011
|
+
className: "flex items-center gap-4 flex-wrap",
|
|
35012
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35013
|
+
className: "text-3xl font-bold truncate",
|
|
35014
|
+
style: { color: accentColor },
|
|
35015
|
+
children: data.adapterInfo.name
|
|
35016
|
+
}), (0, import_jsx_runtime.jsx)(chip_default, {
|
|
35017
|
+
size: "lg",
|
|
35018
|
+
variant: "flat",
|
|
35019
|
+
color: "danger",
|
|
35020
|
+
className: "h-8 text-lg",
|
|
35021
|
+
children: data.adapterInfo.version.startsWith("v") ? data.adapterInfo.version : `v${data.adapterInfo.version}`
|
|
35022
|
+
})]
|
|
35023
|
+
})]
|
|
35024
|
+
})]
|
|
35025
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35026
|
+
className: "text-xl font-medium mb-4",
|
|
35027
|
+
style: { color: mutedColor },
|
|
35028
|
+
children: "事件信息来源"
|
|
34903
35029
|
})]
|
|
34904
|
-
})
|
|
35030
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
35031
|
+
className: "grid grid-cols-4 gap-4 text-lg",
|
|
35032
|
+
style: { color: secondaryColor },
|
|
35033
|
+
children: [
|
|
35034
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35035
|
+
className: "rounded-2xl px-4 py-3",
|
|
35036
|
+
style: { backgroundColor: isDark ? "rgba(248,113,113,0.08)" : "rgba(220,38,38,0.05)" },
|
|
35037
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35038
|
+
className: "text-sm mb-1 opacity-75",
|
|
35039
|
+
children: "Platform / 对接平台"
|
|
35040
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35041
|
+
className: "font-semibold break-all text-2xl",
|
|
35042
|
+
children: String(data.adapterInfo.platform)
|
|
35043
|
+
})]
|
|
35044
|
+
}),
|
|
35045
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35046
|
+
className: "rounded-2xl px-4 py-3 relative overflow-hidden",
|
|
35047
|
+
style: { backgroundColor: isDark ? "rgba(248,113,113,0.08)" : "rgba(220,38,38,0.05)" },
|
|
35048
|
+
children: [
|
|
35049
|
+
(0, import_jsx_runtime.jsx)("p", {
|
|
35050
|
+
className: "text-sm mb-1 opacity-75",
|
|
35051
|
+
children: "Standard / 协议标准"
|
|
35052
|
+
}),
|
|
35053
|
+
(0, import_jsx_runtime.jsx)("p", {
|
|
35054
|
+
className: "font-semibold break-all text-2xl",
|
|
35055
|
+
children: import_lodash.default.upperFirst(import_lodash.default.camelCase(String(data.adapterInfo.standard)))
|
|
35056
|
+
}),
|
|
35057
|
+
String(data.adapterInfo.standard).toLowerCase() === "milky" && (0, import_jsx_runtime.jsx)("div", {
|
|
35058
|
+
className: "absolute inset-0 pointer-events-none",
|
|
35059
|
+
children: (0, import_jsx_runtime.jsx)("img", {
|
|
35060
|
+
src: "/image/other/handlerError/Milky.png",
|
|
35061
|
+
alt: "Milky",
|
|
35062
|
+
className: "absolute -right-2 -bottom-3 w-24 h-24 object-contain",
|
|
35063
|
+
style: {
|
|
35064
|
+
WebkitMaskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35065
|
+
maskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35066
|
+
opacity: 1
|
|
35067
|
+
}
|
|
35068
|
+
})
|
|
35069
|
+
}),
|
|
35070
|
+
String(data.adapterInfo.standard).toLowerCase() === "satori" && (0, import_jsx_runtime.jsx)("div", {
|
|
35071
|
+
className: "absolute inset-0 pointer-events-none",
|
|
35072
|
+
children: (0, import_jsx_runtime.jsx)("img", {
|
|
35073
|
+
src: "/image/other/handlerError/satori.png",
|
|
35074
|
+
alt: "Satori",
|
|
35075
|
+
className: "absolute -right-2 -bottom-3 w-24 h-24 object-contain",
|
|
35076
|
+
style: {
|
|
35077
|
+
WebkitMaskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35078
|
+
maskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35079
|
+
opacity: 1
|
|
35080
|
+
}
|
|
35081
|
+
})
|
|
35082
|
+
}),
|
|
35083
|
+
String(data.adapterInfo.standard).includes("onebot") && (0, import_jsx_runtime.jsx)("div", {
|
|
35084
|
+
className: "absolute inset-0 pointer-events-none",
|
|
35085
|
+
children: (0, import_jsx_runtime.jsx)("img", {
|
|
35086
|
+
src: "/image/other/handlerError/onebot.png",
|
|
35087
|
+
alt: "OneBot",
|
|
35088
|
+
className: "absolute -right-2 -bottom-3 w-24 h-24 object-contain",
|
|
35089
|
+
style: {
|
|
35090
|
+
WebkitMaskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35091
|
+
maskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35092
|
+
opacity: 1
|
|
35093
|
+
}
|
|
35094
|
+
})
|
|
35095
|
+
})
|
|
35096
|
+
]
|
|
35097
|
+
}),
|
|
35098
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35099
|
+
className: "rounded-2xl px-4 py-3",
|
|
35100
|
+
style: { backgroundColor: isDark ? "rgba(248,113,113,0.08)" : "rgba(220,38,38,0.05)" },
|
|
35101
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35102
|
+
className: "text-sm mb-1 opacity-75",
|
|
35103
|
+
children: "Protocol / 协议实现"
|
|
35104
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35105
|
+
className: "font-semibold break-all text-2xl",
|
|
35106
|
+
children: String(data.adapterInfo.protocol)
|
|
35107
|
+
})]
|
|
35108
|
+
}),
|
|
35109
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35110
|
+
className: "rounded-2xl px-4 py-3",
|
|
35111
|
+
style: { backgroundColor: isDark ? "rgba(248,113,113,0.08)" : "rgba(220,38,38,0.05)" },
|
|
35112
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35113
|
+
className: "text-sm mb-1 opacity-75",
|
|
35114
|
+
children: "Communication / 通信方式"
|
|
35115
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35116
|
+
className: "font-semibold break-all text-2xl",
|
|
35117
|
+
children: String(data.adapterInfo.communication)
|
|
35118
|
+
})]
|
|
35119
|
+
})
|
|
35120
|
+
]
|
|
35121
|
+
})]
|
|
34905
35122
|
})
|
|
34906
35123
|
]
|
|
34907
35124
|
}),
|
|
@@ -34910,46 +35127,92 @@ var handlerError = (props) => {
|
|
|
34910
35127
|
style: { color: mutedColor },
|
|
34911
35128
|
children: [data.buildTime && (0, import_jsx_runtime.jsxs)("div", {
|
|
34912
35129
|
className: "flex items-center gap-3",
|
|
34913
|
-
children: [(0, import_jsx_runtime.jsx)(MdAccessTime, { className: "w-6 h-6" }), (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
35130
|
+
children: [(0, import_jsx_runtime.jsx)(MdAccessTime, { className: "w-6 h-6" }), (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
35131
|
+
"Built Time: ",
|
|
35132
|
+
data.buildTime,
|
|
35133
|
+
" 距离 ",
|
|
35134
|
+
formatDistanceToNow(parse(data.buildTime, "yyyy年MM月dd日 HH:mm", /* @__PURE__ */ new Date()), { locale: zhCN })
|
|
35135
|
+
] })]
|
|
34914
35136
|
}), data.commitHash && (0, import_jsx_runtime.jsxs)("div", {
|
|
34915
35137
|
className: "flex items-center gap-3",
|
|
34916
|
-
children: [(0, import_jsx_runtime.jsx)(FaCodeBranch, { className: "w-6 h-6" }), (0, import_jsx_runtime.jsxs)("span", { children: ["Commit ", data.commitHash] })]
|
|
35138
|
+
children: [(0, import_jsx_runtime.jsx)(FaCodeBranch, { className: "w-6 h-6" }), (0, import_jsx_runtime.jsxs)("span", { children: ["Commit Hash: ", data.commitHash] })]
|
|
34917
35139
|
})]
|
|
34918
35140
|
}),
|
|
34919
35141
|
(0, import_jsx_runtime.jsxs)("div", {
|
|
34920
35142
|
className: "p-10 rounded-[36px]",
|
|
34921
35143
|
style: { backgroundColor: isDark ? "rgba(0,0,0,0.2)" : "rgba(255,255,255,0.5)" },
|
|
34922
35144
|
children: [
|
|
34923
|
-
(0, import_jsx_runtime.
|
|
34924
|
-
className: "
|
|
34925
|
-
|
|
34926
|
-
|
|
34927
|
-
|
|
34928
|
-
|
|
34929
|
-
|
|
34930
|
-
|
|
34931
|
-
|
|
35145
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35146
|
+
className: "flex items-end justify-between mb-6",
|
|
35147
|
+
children: [(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35148
|
+
className: "text-3xl font-semibold mb-2",
|
|
35149
|
+
style: { color: accentColor },
|
|
35150
|
+
children: "Need Help? / 需要帮助?"
|
|
35151
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35152
|
+
className: "text-2xl",
|
|
35153
|
+
style: { color: secondaryColor },
|
|
35154
|
+
children: "提交问题时请附上完整报错截图、复现步骤和环境版本信息。"
|
|
35155
|
+
})] }), (0, import_jsx_runtime.jsx)("span", {
|
|
35156
|
+
className: "text-xs font-black tracking-[0.2em] uppercase px-3 py-1 rounded-full",
|
|
35157
|
+
style: {
|
|
35158
|
+
color: primaryColor,
|
|
35159
|
+
backgroundColor: isDark ? "rgba(248,113,113,0.12)" : "rgba(220,38,38,0.08)"
|
|
35160
|
+
},
|
|
35161
|
+
children: "Support"
|
|
35162
|
+
})]
|
|
34932
35163
|
}),
|
|
34933
35164
|
(0, import_jsx_runtime.jsxs)("div", {
|
|
34934
|
-
className: "
|
|
35165
|
+
className: "grid grid-cols-2 gap-x-6 gap-y-6 text-2xl leading-relaxed py-6",
|
|
35166
|
+
style: {
|
|
35167
|
+
borderTop: `1px solid ${isDark ? "rgba(248,113,113,0.2)" : "rgba(220,38,38,0.12)"}`,
|
|
35168
|
+
borderBottom: `1px solid ${isDark ? "rgba(248,113,113,0.2)" : "rgba(220,38,38,0.12)"}`
|
|
35169
|
+
},
|
|
34935
35170
|
children: [
|
|
34936
|
-
(0, import_jsx_runtime.jsx)("
|
|
35171
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35172
|
+
className: "font-semibold mb-1",
|
|
35173
|
+
style: { color: accentColor },
|
|
35174
|
+
children: "GitHub Issue"
|
|
35175
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35176
|
+
className: "text-xl break-all",
|
|
34937
35177
|
style: { color: secondaryColor },
|
|
34938
|
-
children: "
|
|
34939
|
-
}),
|
|
34940
|
-
(0, import_jsx_runtime.jsx)("
|
|
34941
|
-
|
|
34942
|
-
|
|
34943
|
-
|
|
34944
|
-
(0, import_jsx_runtime.
|
|
35178
|
+
children: "https://github.com/ikenxuan/karin-plugin-kkk/issues/new/choose"
|
|
35179
|
+
})] }),
|
|
35180
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35181
|
+
className: "font-semibold mb-1",
|
|
35182
|
+
style: { color: accentColor },
|
|
35183
|
+
children: "GitHub Repository"
|
|
35184
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35185
|
+
className: "text-xl break-all",
|
|
34945
35186
|
style: { color: secondaryColor },
|
|
34946
|
-
children:
|
|
34947
|
-
|
|
34948
|
-
|
|
34949
|
-
|
|
34950
|
-
}
|
|
34951
|
-
|
|
35187
|
+
children: "https://github.com/ikenxuan/karin-plugin-kkk"
|
|
35188
|
+
})] }),
|
|
35189
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35190
|
+
className: "font-semibold mb-1",
|
|
35191
|
+
style: { color: accentColor },
|
|
35192
|
+
children: "QQ 群"
|
|
35193
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35194
|
+
className: "text-xl",
|
|
35195
|
+
style: { color: secondaryColor },
|
|
35196
|
+
children: "795874649"
|
|
35197
|
+
})] }),
|
|
35198
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35199
|
+
className: "font-semibold mb-1",
|
|
35200
|
+
style: { color: accentColor },
|
|
35201
|
+
children: "附带信息"
|
|
35202
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35203
|
+
className: "text-xl",
|
|
35204
|
+
style: { color: secondaryColor },
|
|
35205
|
+
children: "此图片 + 触发命令"
|
|
35206
|
+
})] })
|
|
34952
35207
|
]
|
|
35208
|
+
}),
|
|
35209
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35210
|
+
className: "flex items-center gap-4 mt-6 text-xl",
|
|
35211
|
+
style: { color: mutedColor },
|
|
35212
|
+
children: [(0, import_jsx_runtime.jsx)("span", {
|
|
35213
|
+
className: "font-mono",
|
|
35214
|
+
children: "Tips:"
|
|
35215
|
+
}), (0, import_jsx_runtime.jsx)("span", { children: "信息越完整,定位越快。" })]
|
|
34953
35216
|
})
|
|
34954
35217
|
]
|
|
34955
35218
|
})
|