karin-plugin-kkk 2.27.4 → 2.27.6
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 +22 -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-DM-2P7yk.js +2 -0
- package/lib/core_chunk/Comment-C7DipcGk.js +2 -0
- package/lib/core_chunk/Comment-DyzgsNH4.js +2 -0
- package/lib/core_chunk/Comment-_ehzzbCT.js +2 -0
- package/lib/core_chunk/{Comment-3FcCu8BO.js → Comment-vmLpukdO.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_ARTICLE-DIZ4FpfS.js → DYNAMIC_TYPE_ARTICLE-RG5B0GYl.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_AV-5WXLprJ7.js → DYNAMIC_TYPE_AV-BFmgJoig.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_DRAW-CA3dYbCJ.js → DYNAMIC_TYPE_DRAW-Be8d7lCg.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_FORWARD-DEna4cpV.js → DYNAMIC_TYPE_FORWARD-SRgseEdb.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_LIVE_RCMD-BpDR7WHh.js → DYNAMIC_TYPE_LIVE_RCMD-CDBDKK4u.js} +1 -1
- package/lib/core_chunk/{DYNAMIC_TYPE_WORD-uj6LDApK.js → DYNAMIC_TYPE_WORD-D_qb-nmj.js} +1 -1
- package/lib/core_chunk/Dynamic-C7sZ7_VA.js +2 -0
- package/lib/core_chunk/FavoriteList-BKRXkpgr.js +2 -0
- package/lib/core_chunk/GlobalStatistics-D5SYUMFx.js +2 -0
- package/lib/core_chunk/GroupStatistics-Mkeip-kD.js +2 -0
- package/lib/core_chunk/Help-CSQsl-iG.js +2 -0
- package/lib/core_chunk/ImageWork-BjlkvEZl.js +2 -0
- package/lib/core_chunk/Live-CBi-Jg5R.js +2 -0
- package/lib/core_chunk/MusicInfo-CgN5WBVO.js +2 -0
- package/lib/core_chunk/RecommendList-CVmqCepV.js +2 -0
- package/lib/core_chunk/UserList-BvG2QasY.js +2 -0
- package/lib/core_chunk/UserList-CTZhILez.js +2 -0
- package/lib/core_chunk/UserVideoList-B7KG12MD.js +2 -0
- package/lib/core_chunk/VersionWarning--dZBxhCO.js +2 -0
- package/lib/core_chunk/VideoWork-CLCN8U6n.js +2 -0
- package/lib/core_chunk/amagiClient-DutWjgMV.js +2 -0
- package/lib/core_chunk/bangumi-U94Tg-9H.js +2 -0
- package/lib/core_chunk/changelog-COLIz9yq.js +2 -0
- package/lib/core_chunk/db-DQ021gxp.js +2 -0
- package/lib/core_chunk/dist-BAaLyQpB.js +2 -0
- package/lib/core_chunk/handlerError-CZimBCI0.js +2 -0
- package/lib/core_chunk/{main-6Y7nyjx4.js → main-CH1PySBD.js} +627 -363
- package/lib/core_chunk/{noteInfo-ceSqTSrs.js → noteInfo-Cc0CdOh6.js} +1 -1
- package/lib/core_chunk/qrcodeImg-Cwm5rWx0.js +2 -0
- package/lib/core_chunk/qrcodeImg-DLK0ebMK.js +2 -0
- package/lib/core_chunk/qrlogin-V7NbxsLi.js +2 -0
- package/lib/core_chunk/setup-R3MsfOHe.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-BsvVR1g1.js +2 -0
- package/lib/core_chunk/videoInfo-CZIF1cOh.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-R3MsfOHe.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-DutWjgMV.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-DQ021gxp.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-DQ021gxp.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-DQ021gxp.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-C7DipcGk.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-C7sZ7_VA.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-CLCN8U6n.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-BjlkvEZl.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-DM-2P7yk.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-BKRXkpgr.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-CVmqCepV.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-CBi-Jg5R.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-CgN5WBVO.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-B7KG12MD.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-CTZhILez.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-BsvVR1g1.js").then((module) => ({ default: module.DouyinVideoInfo })) });
|
|
8073
|
+
case "qrcodeImg": return createComponentConfig(baseComponent, { lazyComponent: () => import("./qrcodeImg-Cwm5rWx0.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-_ehzzbCT.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-BvG2QasY.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-U94Tg-9H.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-Be8d7lCg.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-D_qb-nmj.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-BFmgJoig.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-SRgseEdb.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-CDBDKK4u.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-RG5B0GYl.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-CZIF1cOh.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-DLK0ebMK.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-DyzgsNH4.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-Cc0CdOh6.js").then((module) => ({ default: module.XiaohongshuNoteInfo })) });
|
|
8139
|
+
case "comment": return createComponentConfig(baseComponent, { lazyComponent: () => import("./Comment-vmLpukdO.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-CSQsl-iG.js").then((module) => ({ default: module.default })) });
|
|
8148
|
+
case "handlerError": return createComponentConfig(baseComponent, { lazyComponent: () => import("./handlerError-CZimBCI0.js").then((module) => ({ default: module.handlerError })) });
|
|
8149
|
+
case "changelog": return createComponentConfig(baseComponent, { lazyComponent: () => import("./changelog-COLIz9yq.js").then((module) => ({ default: module.Changelog })) });
|
|
8150
|
+
case "version_warning": return createComponentConfig(baseComponent, { lazyComponent: () => import("./VersionWarning--dZBxhCO.js").then((module) => ({ default: module.VersionWarning })) });
|
|
8151
|
+
case "qrlogin": return createComponentConfig(baseComponent, { lazyComponent: () => import("./qrlogin-V7NbxsLi.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-Mkeip-kD.js").then((module) => ({ default: module.GroupStatistics })) });
|
|
8160
|
+
case "global": return createComponentConfig(baseComponent, { lazyComponent: () => import("./GlobalStatistics-D5SYUMFx.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");
|
|
@@ -16093,6 +16087,7 @@ var DouYin = class DouYin extends Base {
|
|
|
16093
16087
|
aweme_id: data.aweme_id,
|
|
16094
16088
|
typeMode: "strict"
|
|
16095
16089
|
});
|
|
16090
|
+
if (VideoData.data.aweme_detail === null) throw new Error("获取作品详情失败,可能是因为该作品已被删除或设置为私密。");
|
|
16096
16091
|
const aweme_type = VideoData.data.aweme_detail.aweme_type;
|
|
16097
16092
|
const isArticle = aweme_type === 163;
|
|
16098
16093
|
const isVideo = aweme_type === 0 || aweme_type === 55;
|
|
@@ -17820,7 +17815,7 @@ var DouYinpush = class extends Base {
|
|
|
17820
17815
|
listName = "作品列表";
|
|
17821
17816
|
contentList = (await this.amagi.douyin.fetcher.fetchUserVideoList({
|
|
17822
17817
|
sec_uid,
|
|
17823
|
-
number:
|
|
17818
|
+
number: 15,
|
|
17824
17819
|
typeMode: "strict"
|
|
17825
17820
|
})).data.aweme_list || [];
|
|
17826
17821
|
break;
|
|
@@ -17828,7 +17823,7 @@ var DouYinpush = class extends Base {
|
|
|
17828
17823
|
listName = "喜欢列表";
|
|
17829
17824
|
const favoritelist = await this.amagi.douyin.fetcher.fetchUserFavoriteList({
|
|
17830
17825
|
sec_uid,
|
|
17831
|
-
number:
|
|
17826
|
+
number: 15,
|
|
17832
17827
|
typeMode: "strict"
|
|
17833
17828
|
});
|
|
17834
17829
|
if (favoritelist.data.aweme_list.length === 0) logger.warn(`${item.remark}(${item.short_id}) 获取到的喜欢列表数量为零!此博主可能未公开他/她的喜欢列表`);
|
|
@@ -17838,7 +17833,7 @@ var DouYinpush = class extends Base {
|
|
|
17838
17833
|
listName = "推荐列表";
|
|
17839
17834
|
const recommendlist = await this.amagi.douyin.fetcher.fetchUserRecommendList({
|
|
17840
17835
|
sec_uid,
|
|
17841
|
-
number:
|
|
17836
|
+
number: 15,
|
|
17842
17837
|
typeMode: "strict"
|
|
17843
17838
|
});
|
|
17844
17839
|
if (recommendlist.data.aweme_list.length === 0) logger.warn(`${item.remark}(${item.short_id}) 获取到的推荐列表数量为零!此博主可能未公开他/她的推荐列表`);
|
|
@@ -18548,13 +18543,13 @@ var waitQrcode = async (page) => {
|
|
|
18548
18543
|
var handleCacheCleanup = wrapWithErrorHandler(async () => {
|
|
18549
18544
|
const twoHoursAgo = Date.now() - 7200 * 1e3;
|
|
18550
18545
|
const videoDeleted = removeOldFiles(Common.tempDri.video, twoHoursAgo);
|
|
18551
|
-
logger.
|
|
18546
|
+
logger.debug(`${Common.tempDri.video} 目录下已删除 ${videoDeleted} 个文件`);
|
|
18552
18547
|
if (Config.upload.imageSendMode === "file") {
|
|
18553
18548
|
const imageDeleted = removeOldFiles(Common.tempDri.images, twoHoursAgo);
|
|
18554
|
-
logger.
|
|
18549
|
+
logger.debug(`${Common.tempDri.images} 目录下已删除 ${imageDeleted} 个文件`);
|
|
18555
18550
|
}
|
|
18556
18551
|
}, { businessName: "缓存自动删除" });
|
|
18557
|
-
var task = Config.app.removeCache && karin$1.task("[kkk-缓存自动删除]", "*/30 * * * *", handleCacheCleanup);
|
|
18552
|
+
var task = Config.app.removeCache && karin$1.task("[kkk-缓存自动删除]", "*/30 * * * *", handleCacheCleanup, { log: false });
|
|
18558
18553
|
var handleBilibiliLogin = wrapWithErrorHandler(async (e) => {
|
|
18559
18554
|
await bilibiliLogin(e);
|
|
18560
18555
|
return true;
|
|
@@ -19758,6 +19753,17 @@ var versionCore = (v) => {
|
|
|
19758
19753
|
const [core] = preBuild.split("-", 2);
|
|
19759
19754
|
return core;
|
|
19760
19755
|
};
|
|
19756
|
+
var getLagVersionCount = (changelog, localVersion, remoteVersion) => {
|
|
19757
|
+
const local = versionCore(localVersion);
|
|
19758
|
+
const remote = versionCore(remoteVersion);
|
|
19759
|
+
if (!local || !remote || !isSemverGreater(remote, local)) return 0;
|
|
19760
|
+
const versions = Object.keys(parseChangelog(changelog)).map(versionCore).filter(Boolean);
|
|
19761
|
+
return [...new Set(versions)].filter((version) => {
|
|
19762
|
+
const afterLocal = isSemverGreater(version, local);
|
|
19763
|
+
const notAfterRemote = !isSemverGreater(version, remote);
|
|
19764
|
+
return afterLocal && notAfterRemote;
|
|
19765
|
+
}).length;
|
|
19766
|
+
};
|
|
19761
19767
|
var getRemoteBuildMetadata = async (version) => {
|
|
19762
19768
|
const requests = [
|
|
19763
19769
|
`https://jsd.onmicrosoft.cn/npm/${Root.pluginName}@${version}/lib/build-metadata.json`,
|
|
@@ -19781,6 +19787,7 @@ var getRemoteBuildMetadata = async (version) => {
|
|
|
19781
19787
|
var getChangelogImage = async (ctx, props) => {
|
|
19782
19788
|
let changelog = "";
|
|
19783
19789
|
let buildTime;
|
|
19790
|
+
let lagVersionCount = 0;
|
|
19784
19791
|
const event = "bot" in ctx ? ctx : { bot: ctx };
|
|
19785
19792
|
if (props.Tip || props.isRemote) {
|
|
19786
19793
|
const requests = [
|
|
@@ -19814,6 +19821,7 @@ var getChangelogImage = async (ctx, props) => {
|
|
|
19814
19821
|
return null;
|
|
19815
19822
|
}
|
|
19816
19823
|
if (!changelog) return null;
|
|
19824
|
+
lagVersionCount = getLagVersionCount(changelog, props.localVersion, props.remoteVersion);
|
|
19817
19825
|
const remoteMeta = await getRemoteBuildMetadata(props.remoteVersion);
|
|
19818
19826
|
if (remoteMeta?.buildTime) buildTime = formatBuildTime(remoteMeta.buildTime);
|
|
19819
19827
|
changelog = range({
|
|
@@ -19825,6 +19833,7 @@ var getChangelogImage = async (ctx, props) => {
|
|
|
19825
19833
|
} else {
|
|
19826
19834
|
try {
|
|
19827
19835
|
changelog = fs.readFileSync(Root.pluginPath + "/CHANGELOG.md", "utf8");
|
|
19836
|
+
lagVersionCount = getLagVersionCount(changelog, props.localVersion, props.remoteVersion);
|
|
19828
19837
|
changelog = range({
|
|
19829
19838
|
data: changelog,
|
|
19830
19839
|
startVersion: props.localVersion,
|
|
@@ -19842,6 +19851,7 @@ var getChangelogImage = async (ctx, props) => {
|
|
|
19842
19851
|
Tip: props.Tip,
|
|
19843
19852
|
localVersion: props.localVersion,
|
|
19844
19853
|
remoteVersion: props.remoteVersion,
|
|
19854
|
+
lagVersionCount,
|
|
19845
19855
|
buildTime
|
|
19846
19856
|
}) || null;
|
|
19847
19857
|
};
|
|
@@ -33433,148 +33443,237 @@ var VersionWarning = (props) => {
|
|
|
33433
33443
|
}),
|
|
33434
33444
|
(0, import_jsx_runtime.jsxs)("div", {
|
|
33435
33445
|
className: "space-y-20",
|
|
33436
|
-
children: [
|
|
33437
|
-
|
|
33438
|
-
|
|
33439
|
-
|
|
33440
|
-
|
|
33441
|
-
|
|
33442
|
-
|
|
33443
|
-
|
|
33444
|
-
|
|
33445
|
-
|
|
33446
|
+
children: [
|
|
33447
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
33448
|
+
className: "flex items-center space-x-4 mb-6",
|
|
33449
|
+
children: [
|
|
33450
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33451
|
+
className: "flex items-center justify-center w-10 h-10 rounded-lg",
|
|
33452
|
+
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
33453
|
+
children: (0, import_jsx_runtime.jsx)("span", {
|
|
33454
|
+
className: "text-[28px] font-black",
|
|
33455
|
+
style: { color: accentColor },
|
|
33456
|
+
children: "1"
|
|
33457
|
+
})
|
|
33458
|
+
}),
|
|
33459
|
+
(0, import_jsx_runtime.jsxs)("svg", {
|
|
33460
|
+
className: "w-8 h-8",
|
|
33461
|
+
viewBox: "0 0 24 24",
|
|
33462
|
+
fill: "none",
|
|
33463
|
+
stroke: mutedColor,
|
|
33464
|
+
strokeWidth: "2",
|
|
33465
|
+
children: [(0, import_jsx_runtime.jsx)("rect", {
|
|
33466
|
+
x: "3",
|
|
33467
|
+
y: "3",
|
|
33468
|
+
width: "18",
|
|
33469
|
+
height: "18",
|
|
33470
|
+
rx: "2",
|
|
33471
|
+
strokeLinecap: "round",
|
|
33472
|
+
strokeLinejoin: "round"
|
|
33473
|
+
}), (0, import_jsx_runtime.jsx)("path", {
|
|
33474
|
+
d: "M9 3v18M3 9h18M3 15h18",
|
|
33475
|
+
strokeLinecap: "round",
|
|
33476
|
+
strokeLinejoin: "round"
|
|
33477
|
+
})]
|
|
33478
|
+
}),
|
|
33479
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33480
|
+
className: "text-[32px] font-bold",
|
|
33481
|
+
style: { color: mutedColor },
|
|
33482
|
+
children: "Web 控制台更新"
|
|
33483
|
+
}),
|
|
33484
|
+
(0, import_jsx_runtime.jsx)(chip_default, {
|
|
33485
|
+
className: "text-[20px] font-semibold px-4",
|
|
33486
|
+
style: {
|
|
33487
|
+
backgroundColor: isDark ? "rgba(251,146,60,0.2)" : "rgba(194,65,12,0.15)",
|
|
33488
|
+
color: accentColor
|
|
33489
|
+
},
|
|
33490
|
+
size: "lg",
|
|
33491
|
+
children: "推荐"
|
|
33446
33492
|
})
|
|
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"
|
|
33493
|
+
]
|
|
33494
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
33495
|
+
className: "ml-14 space-y-4",
|
|
33496
|
+
children: [
|
|
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 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: "访问 Karin Web 控制台首页,查看 Karin 版本信息"
|
|
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 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
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33520
|
+
className: "flex items-start space-x-4",
|
|
33521
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33522
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33523
|
+
style: { backgroundColor: mutedColor }
|
|
33524
|
+
}), (0, import_jsx_runtime.jsxs)("span", {
|
|
33525
|
+
className: "text-[28px] leading-relaxed",
|
|
33526
|
+
style: { color: secondaryColor },
|
|
33527
|
+
children: [
|
|
33528
|
+
"点击",
|
|
33529
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33530
|
+
className: "font-mono font-black",
|
|
33531
|
+
children: "「更新」"
|
|
33532
|
+
}),
|
|
33533
|
+
"按钮,系统将自动完成更新并重启"
|
|
33534
|
+
]
|
|
33535
|
+
})]
|
|
33530
33536
|
})
|
|
33531
|
-
|
|
33532
|
-
|
|
33533
|
-
|
|
33534
|
-
|
|
33535
|
-
|
|
33536
|
-
|
|
33537
|
-
|
|
33538
|
-
|
|
33539
|
-
|
|
33540
|
-
|
|
33541
|
-
|
|
33537
|
+
]
|
|
33538
|
+
})] }),
|
|
33539
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
33540
|
+
className: "flex items-center space-x-4 mb-6",
|
|
33541
|
+
children: [
|
|
33542
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33543
|
+
className: "flex items-center justify-center w-10 h-10 rounded-lg",
|
|
33544
|
+
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
33545
|
+
children: (0, import_jsx_runtime.jsx)("span", {
|
|
33546
|
+
className: "text-[28px] font-black",
|
|
33547
|
+
style: { color: accentColor },
|
|
33548
|
+
children: "2"
|
|
33549
|
+
})
|
|
33550
|
+
}),
|
|
33551
|
+
(0, import_jsx_runtime.jsx)(IoExtensionPuzzleOutline, {
|
|
33552
|
+
className: clsx("w-10 h-auto"),
|
|
33553
|
+
style: { color: mutedColor }
|
|
33554
|
+
}),
|
|
33555
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33556
|
+
className: "text-[32px] font-bold",
|
|
33557
|
+
style: { color: mutedColor },
|
|
33558
|
+
children: "使用 basic 插件命令更新"
|
|
33559
|
+
}),
|
|
33560
|
+
(0, import_jsx_runtime.jsx)(chip_default, {
|
|
33561
|
+
className: "text-[20px] font-semibold px-4",
|
|
33562
|
+
style: {
|
|
33563
|
+
backgroundColor: isDark ? "rgba(251,146,60,0.2)" : "rgba(194,65,12,0.15)",
|
|
33564
|
+
color: accentColor
|
|
33565
|
+
},
|
|
33566
|
+
size: "lg",
|
|
33567
|
+
children: "推荐"
|
|
33542
33568
|
})
|
|
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
|
-
|
|
33569
|
+
]
|
|
33570
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
33571
|
+
className: "ml-14 space-y-4",
|
|
33572
|
+
children: [
|
|
33573
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33574
|
+
className: "flex items-start space-x-4",
|
|
33575
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33576
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33577
|
+
style: { backgroundColor: mutedColor }
|
|
33578
|
+
}), (0, import_jsx_runtime.jsxs)("span", {
|
|
33579
|
+
className: "text-[28px] leading-relaxed",
|
|
33580
|
+
style: { color: secondaryColor },
|
|
33581
|
+
children: [
|
|
33582
|
+
"插件市场搜索",
|
|
33583
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33584
|
+
className: "font-mono font-black",
|
|
33585
|
+
children: "「karin-plugin-basic」"
|
|
33586
|
+
}),
|
|
33587
|
+
"插件并安装"
|
|
33588
|
+
]
|
|
33589
|
+
})]
|
|
33590
|
+
}),
|
|
33591
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33592
|
+
className: "flex items-start space-x-4",
|
|
33593
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33594
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33595
|
+
style: { backgroundColor: mutedColor }
|
|
33596
|
+
}), (0, import_jsx_runtime.jsxs)("span", {
|
|
33597
|
+
className: "text-[28px] leading-relaxed",
|
|
33598
|
+
style: { color: secondaryColor },
|
|
33599
|
+
children: ["安装完成后发送 ", (0, import_jsx_runtime.jsx)("span", {
|
|
33600
|
+
className: "font-mono font-black",
|
|
33601
|
+
children: "「#更新」"
|
|
33602
|
+
})]
|
|
33603
|
+
})]
|
|
33604
|
+
}),
|
|
33605
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33606
|
+
className: "flex items-start space-x-4",
|
|
33607
|
+
children: [(0, import_jsx_runtime.jsx)("div", {
|
|
33608
|
+
className: "w-3 h-3 rounded-full mt-3 shrink-0",
|
|
33609
|
+
style: { backgroundColor: mutedColor }
|
|
33610
|
+
}), (0, import_jsx_runtime.jsx)("span", {
|
|
33611
|
+
className: "text-[28px] leading-relaxed",
|
|
33612
|
+
style: { color: secondaryColor },
|
|
33613
|
+
children: "插件会自动执行更新流程"
|
|
33614
|
+
})]
|
|
33569
33615
|
})
|
|
33570
|
-
|
|
33571
|
-
|
|
33572
|
-
|
|
33573
|
-
|
|
33574
|
-
|
|
33575
|
-
|
|
33576
|
-
|
|
33577
|
-
|
|
33616
|
+
]
|
|
33617
|
+
})] }),
|
|
33618
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
33619
|
+
className: "flex items-center space-x-4 mb-6",
|
|
33620
|
+
children: [
|
|
33621
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33622
|
+
className: "flex items-center justify-center w-10 h-10 rounded-lg",
|
|
33623
|
+
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
33624
|
+
children: (0, import_jsx_runtime.jsx)("span", {
|
|
33625
|
+
className: "text-[28px] font-black",
|
|
33626
|
+
style: { color: accentColor },
|
|
33627
|
+
children: "3"
|
|
33628
|
+
})
|
|
33629
|
+
}),
|
|
33630
|
+
(0, import_jsx_runtime.jsx)("svg", {
|
|
33631
|
+
className: "w-8 h-8",
|
|
33632
|
+
viewBox: "0 0 24 24",
|
|
33633
|
+
fill: "none",
|
|
33634
|
+
stroke: mutedColor,
|
|
33635
|
+
strokeWidth: "2",
|
|
33636
|
+
children: (0, import_jsx_runtime.jsx)("path", {
|
|
33637
|
+
d: "M4 17l6-6-6-6M12 19h8",
|
|
33638
|
+
strokeLinecap: "round",
|
|
33639
|
+
strokeLinejoin: "round"
|
|
33640
|
+
})
|
|
33641
|
+
}),
|
|
33642
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33643
|
+
className: "text-[32px] font-bold",
|
|
33644
|
+
style: { color: mutedColor },
|
|
33645
|
+
children: "命令行手动更新"
|
|
33646
|
+
})
|
|
33647
|
+
]
|
|
33648
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
33649
|
+
className: "ml-14 space-y-4",
|
|
33650
|
+
children: [
|
|
33651
|
+
(0, import_jsx_runtime.jsx)("p", {
|
|
33652
|
+
className: "text-[28px]",
|
|
33653
|
+
style: { color: secondaryColor },
|
|
33654
|
+
children: "在 Karin 根目录下执行以下命令"
|
|
33655
|
+
}),
|
|
33656
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33657
|
+
className: "rounded-xl p-6",
|
|
33658
|
+
style: { backgroundColor: isDark ? "rgba(0,0,0,0.4)" : "rgba(255,255,255,0.7)" },
|
|
33659
|
+
children: (0, import_jsx_runtime.jsxs)("code", {
|
|
33660
|
+
className: "text-[40px] font-mono font-bold block",
|
|
33661
|
+
style: { color: accentColor },
|
|
33662
|
+
children: [
|
|
33663
|
+
"pnpm add node-karin@",
|
|
33664
|
+
props.data.requireVersion,
|
|
33665
|
+
" -w"
|
|
33666
|
+
]
|
|
33667
|
+
})
|
|
33668
|
+
}),
|
|
33669
|
+
(0, import_jsx_runtime.jsx)("p", {
|
|
33670
|
+
className: "text-[28px] opacity-80",
|
|
33671
|
+
style: { color: secondaryColor },
|
|
33672
|
+
children: "更新完成后手动重启 Karin 即可"
|
|
33673
|
+
})
|
|
33674
|
+
]
|
|
33675
|
+
})] })
|
|
33676
|
+
]
|
|
33578
33677
|
}),
|
|
33579
33678
|
(0, import_jsx_runtime.jsx)("div", {
|
|
33580
33679
|
className: "h-0.5 rounded-full my-10",
|
|
@@ -33584,7 +33683,7 @@ var VersionWarning = (props) => {
|
|
|
33584
33683
|
className: "rounded-2xl p-6 flex items-start space-x-5",
|
|
33585
33684
|
style: { backgroundColor: isDark ? "rgba(251,146,60,0.08)" : "rgba(194,65,12,0.08)" },
|
|
33586
33685
|
children: [(0, import_jsx_runtime.jsxs)("svg", {
|
|
33587
|
-
className: "w-10 h-10 mt-1
|
|
33686
|
+
className: "w-10 h-10 mt-1 shrink-0",
|
|
33588
33687
|
viewBox: "0 0 24 24",
|
|
33589
33688
|
fill: accentColor,
|
|
33590
33689
|
children: [(0, import_jsx_runtime.jsx)("path", { d: "M12 2L22 20H2L12 2Z" }), (0, import_jsx_runtime.jsx)("path", {
|
|
@@ -33817,81 +33916,97 @@ var Changelog = import_react.memo((props) => {
|
|
|
33817
33916
|
children: [
|
|
33818
33917
|
props.data.Tip === true ? (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: (0, import_jsx_runtime.jsxs)("div", {
|
|
33819
33918
|
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
|
-
|
|
33919
|
+
children: [
|
|
33920
|
+
(0, import_jsx_runtime.jsx)("div", {
|
|
33921
|
+
className: "text-5xl leading-relaxed text-center mb-8 opacity-50 text-default-600",
|
|
33922
|
+
children: "以下任意方式均可更新"
|
|
33923
|
+
}),
|
|
33924
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33925
|
+
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",
|
|
33926
|
+
children: [
|
|
33927
|
+
(0, import_jsx_runtime.jsxs)("span", { children: ["当前版本: v", props.data.localVersion] }),
|
|
33928
|
+
(0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
33929
|
+
(0, import_jsx_runtime.jsxs)("span", { children: ["最新版本: v", props.data.remoteVersion] }),
|
|
33930
|
+
(0, import_jsx_runtime.jsxs)("span", { children: [
|
|
33931
|
+
",共落后 ",
|
|
33932
|
+
props.data.lagVersionCount ?? 0,
|
|
33933
|
+
" 个版本"
|
|
33934
|
+
] })
|
|
33935
|
+
]
|
|
33936
|
+
}),
|
|
33937
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33938
|
+
className: "flex flex-col gap-6 text-[2.8em] leading-relaxed text-default-700",
|
|
33939
|
+
children: [
|
|
33940
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33941
|
+
className: "flex items-center gap-5",
|
|
33942
|
+
children: [
|
|
33943
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33944
|
+
className: "text-default-500 text-[1.2em]",
|
|
33945
|
+
children: "•"
|
|
33946
|
+
}),
|
|
33947
|
+
(0, import_jsx_runtime.jsx)("span", { children: "回复" }),
|
|
33948
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33949
|
+
className: "inline-block text-[1.15em] font-bold text-default-900",
|
|
33950
|
+
children: "更新"
|
|
33951
|
+
}),
|
|
33952
|
+
(0, import_jsx_runtime.jsx)("span", { children: "立刻开始" })
|
|
33953
|
+
]
|
|
33954
|
+
}),
|
|
33955
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33956
|
+
className: "flex items-center gap-5",
|
|
33957
|
+
children: [
|
|
33958
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33959
|
+
className: "text-default-500 text-[1.2em]",
|
|
33960
|
+
children: "•"
|
|
33961
|
+
}),
|
|
33962
|
+
(0, import_jsx_runtime.jsx)("span", { children: "进入" }),
|
|
33963
|
+
(0, import_jsx_runtime.jsx)(code_default, {
|
|
33964
|
+
radius: "lg",
|
|
33965
|
+
color: "success",
|
|
33966
|
+
className: "text-[0.9em]",
|
|
33967
|
+
children: "Karin WebUI"
|
|
33968
|
+
}),
|
|
33969
|
+
(0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
33970
|
+
(0, import_jsx_runtime.jsx)(code_default, {
|
|
33971
|
+
radius: "lg",
|
|
33972
|
+
color: "success",
|
|
33973
|
+
className: "text-[0.9em]",
|
|
33974
|
+
children: "插件管理"
|
|
33975
|
+
}),
|
|
33976
|
+
(0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
33977
|
+
(0, import_jsx_runtime.jsx)(code_default, {
|
|
33978
|
+
radius: "lg",
|
|
33979
|
+
color: "success",
|
|
33980
|
+
className: "text-[0.9em]",
|
|
33981
|
+
children: "已安装"
|
|
33982
|
+
}),
|
|
33983
|
+
(0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
33984
|
+
(0, import_jsx_runtime.jsx)("span", { children: "一览更新" })
|
|
33985
|
+
]
|
|
33986
|
+
}),
|
|
33987
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
33988
|
+
className: "flex items-center gap-5",
|
|
33989
|
+
children: [
|
|
33990
|
+
(0, import_jsx_runtime.jsx)("span", {
|
|
33991
|
+
className: "text-default-500 text-[1.2em]",
|
|
33992
|
+
children: "•"
|
|
33993
|
+
}),
|
|
33994
|
+
(0, import_jsx_runtime.jsx)("span", { children: "Karin 根目录运行" }),
|
|
33995
|
+
(0, import_jsx_runtime.jsxs)(code_default, {
|
|
33996
|
+
radius: "lg",
|
|
33997
|
+
color: "success",
|
|
33998
|
+
className: "text-[0.85em] whitespace-nowrap",
|
|
33999
|
+
children: [
|
|
34000
|
+
"pnpm add karin-plugin-kkk@",
|
|
34001
|
+
props.data.remoteVersion,
|
|
34002
|
+
" -w"
|
|
34003
|
+
]
|
|
34004
|
+
})
|
|
34005
|
+
]
|
|
34006
|
+
})
|
|
34007
|
+
]
|
|
34008
|
+
})
|
|
34009
|
+
]
|
|
33895
34010
|
}) }) : null,
|
|
33896
34011
|
(0, import_jsx_runtime.jsx)("div", {
|
|
33897
34012
|
className: "changelog-content",
|
|
@@ -34226,6 +34341,7 @@ var ERROR_TITLES = [
|
|
|
34226
34341
|
"猝不及防"
|
|
34227
34342
|
];
|
|
34228
34343
|
var getRandomErrorTitle = () => ERROR_TITLES[Math.floor(Math.random() * ERROR_TITLES.length)];
|
|
34344
|
+
var import_lodash = __toESM(require_lodash(), 1);
|
|
34229
34345
|
var ansiColorMap = {
|
|
34230
34346
|
30: "text-default-900",
|
|
34231
34347
|
31: "text-danger",
|
|
@@ -34380,11 +34496,26 @@ var getAdapterLogo = (adapterName) => {
|
|
|
34380
34496
|
const nameLower = adapterName.toLowerCase();
|
|
34381
34497
|
for (const [key, logoPath] of Object.entries(ADAPTER_LOGO_MAP)) if (nameLower.includes(key)) return (0, import_jsx_runtime.jsx)("img", {
|
|
34382
34498
|
src: logoPath,
|
|
34383
|
-
className: "h-
|
|
34499
|
+
className: "h-20 w-auto",
|
|
34384
34500
|
alt: adapterName
|
|
34385
34501
|
});
|
|
34386
|
-
return (0, import_jsx_runtime.jsx)(
|
|
34387
|
-
};
|
|
34502
|
+
return (0, import_jsx_runtime.jsx)(IoExtensionPuzzleOutline, { className: "w-16 h-auto text-danger-700/80" });
|
|
34503
|
+
};
|
|
34504
|
+
var SectionTitle = ({ icon, en, zh, color }) => (0, import_jsx_runtime.jsxs)("div", {
|
|
34505
|
+
className: "flex items-center gap-5 mb-6",
|
|
34506
|
+
children: [icon, (0, import_jsx_runtime.jsxs)("div", {
|
|
34507
|
+
className: "flex flex-col leading-tight",
|
|
34508
|
+
children: [(0, import_jsx_runtime.jsx)("span", {
|
|
34509
|
+
className: "text-xl font-semibold tracking-[0.2em] uppercase",
|
|
34510
|
+
style: { color },
|
|
34511
|
+
children: en
|
|
34512
|
+
}), (0, import_jsx_runtime.jsx)("span", {
|
|
34513
|
+
className: "text-base font-medium tracking-[0.08em] opacity-80",
|
|
34514
|
+
style: { color },
|
|
34515
|
+
children: zh
|
|
34516
|
+
})]
|
|
34517
|
+
})]
|
|
34518
|
+
});
|
|
34388
34519
|
var handlerError = (props) => {
|
|
34389
34520
|
const { data, qrCodeDataUrl } = props;
|
|
34390
34521
|
const isDark = data.useDarkTheme === true;
|
|
@@ -34398,7 +34529,6 @@ var handlerError = (props) => {
|
|
|
34398
34529
|
const accentColor = isDark ? "#fecaca" : "#7f1d1d";
|
|
34399
34530
|
return (0, import_jsx_runtime.jsxs)(DefaultLayout, {
|
|
34400
34531
|
...props,
|
|
34401
|
-
version: void 0,
|
|
34402
34532
|
className: "relative overflow-hidden",
|
|
34403
34533
|
style: {
|
|
34404
34534
|
backgroundColor: bgColor,
|
|
@@ -34638,12 +34768,13 @@ var handlerError = (props) => {
|
|
|
34638
34768
|
style: { color: mutedColor },
|
|
34639
34769
|
children: "Date"
|
|
34640
34770
|
}), (0, import_jsx_runtime.jsx)("div", {
|
|
34641
|
-
className: "font-mono text-3xl font-bold tracking-
|
|
34771
|
+
className: "font-mono text-3xl font-bold tracking-[0.2em]",
|
|
34642
34772
|
style: { color: secondaryColor },
|
|
34643
|
-
children: new Date(data.timestamp).toLocaleDateString("
|
|
34644
|
-
|
|
34645
|
-
month: "2-digit"
|
|
34646
|
-
|
|
34773
|
+
children: new Date(data.timestamp).toLocaleDateString("zh-CN", {
|
|
34774
|
+
year: "numeric",
|
|
34775
|
+
month: "2-digit",
|
|
34776
|
+
day: "2-digit"
|
|
34777
|
+
}).replaceAll("/", "-")
|
|
34647
34778
|
})]
|
|
34648
34779
|
})
|
|
34649
34780
|
]
|
|
@@ -34705,16 +34836,14 @@ var handlerError = (props) => {
|
|
|
34705
34836
|
}),
|
|
34706
34837
|
data.triggerCommand && (0, import_jsx_runtime.jsxs)("div", {
|
|
34707
34838
|
className: "mb-14",
|
|
34708
|
-
children: [(0, import_jsx_runtime.
|
|
34709
|
-
|
|
34710
|
-
children: [(0, import_jsx_runtime.jsx)(Terminal, {
|
|
34839
|
+
children: [(0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
34840
|
+
icon: (0, import_jsx_runtime.jsx)(Terminal, {
|
|
34711
34841
|
className: "w-9 h-9",
|
|
34712
34842
|
style: { color: mutedColor }
|
|
34713
|
-
}),
|
|
34714
|
-
|
|
34715
|
-
|
|
34716
|
-
|
|
34717
|
-
})]
|
|
34843
|
+
}),
|
|
34844
|
+
en: "Trigger Command",
|
|
34845
|
+
zh: "触发命令",
|
|
34846
|
+
color: mutedColor
|
|
34718
34847
|
}), (0, import_jsx_runtime.jsx)("div", {
|
|
34719
34848
|
className: "p-10 rounded-[36px]",
|
|
34720
34849
|
style: { backgroundColor: isDark ? "rgba(0,0,0,0.2)" : "rgba(255,255,255,0.5)" },
|
|
@@ -34727,16 +34856,14 @@ var handlerError = (props) => {
|
|
|
34727
34856
|
}),
|
|
34728
34857
|
(0, import_jsx_runtime.jsxs)("div", {
|
|
34729
34858
|
className: "mb-14",
|
|
34730
|
-
children: [(0, import_jsx_runtime.
|
|
34731
|
-
|
|
34732
|
-
children: [(0, import_jsx_runtime.jsx)(CircleAlert, {
|
|
34859
|
+
children: [(0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
34860
|
+
icon: (0, import_jsx_runtime.jsx)(CircleAlert, {
|
|
34733
34861
|
className: "w-9 h-9",
|
|
34734
34862
|
style: { color: primaryColor }
|
|
34735
|
-
}),
|
|
34736
|
-
|
|
34737
|
-
|
|
34738
|
-
|
|
34739
|
-
})]
|
|
34863
|
+
}),
|
|
34864
|
+
en: "Stack Trace",
|
|
34865
|
+
zh: "错误堆栈",
|
|
34866
|
+
color: mutedColor
|
|
34740
34867
|
}), (0, import_jsx_runtime.jsx)("div", {
|
|
34741
34868
|
className: "p-10 rounded-[36px]",
|
|
34742
34869
|
style: {
|
|
@@ -34752,16 +34879,14 @@ var handlerError = (props) => {
|
|
|
34752
34879
|
}),
|
|
34753
34880
|
data.logs && data.logs.length > 0 && (0, import_jsx_runtime.jsxs)("div", {
|
|
34754
34881
|
className: "mb-14",
|
|
34755
|
-
children: [(0, import_jsx_runtime.
|
|
34756
|
-
|
|
34757
|
-
children: [(0, import_jsx_runtime.jsx)(FileText, {
|
|
34882
|
+
children: [(0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
34883
|
+
icon: (0, import_jsx_runtime.jsx)(FileText, {
|
|
34758
34884
|
className: "w-9 h-9",
|
|
34759
34885
|
style: { color: mutedColor }
|
|
34760
|
-
}),
|
|
34761
|
-
|
|
34762
|
-
|
|
34763
|
-
|
|
34764
|
-
})]
|
|
34886
|
+
}),
|
|
34887
|
+
en: "Execution Logs",
|
|
34888
|
+
zh: "执行日志",
|
|
34889
|
+
color: mutedColor
|
|
34765
34890
|
}), (0, import_jsx_runtime.jsx)("div", {
|
|
34766
34891
|
className: "space-y-6",
|
|
34767
34892
|
children: data.logs.map((log, index) => {
|
|
@@ -34829,7 +34954,7 @@ var handlerError = (props) => {
|
|
|
34829
34954
|
}), (0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
34830
34955
|
className: "text-xl",
|
|
34831
34956
|
style: { color: mutedColor },
|
|
34832
|
-
children: "Framework"
|
|
34957
|
+
children: "Framework / 框架版本"
|
|
34833
34958
|
}), (0, import_jsx_runtime.jsx)("p", {
|
|
34834
34959
|
className: "text-3xl font-bold",
|
|
34835
34960
|
style: { color: accentColor },
|
|
@@ -34860,48 +34985,141 @@ var handlerError = (props) => {
|
|
|
34860
34985
|
}), (0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
34861
34986
|
className: "text-xl",
|
|
34862
34987
|
style: { color: mutedColor },
|
|
34863
|
-
children: "Plugin"
|
|
34988
|
+
children: "Plugin / 插件版本"
|
|
34864
34989
|
}), (0, import_jsx_runtime.jsx)("p", {
|
|
34865
34990
|
className: "text-3xl font-bold",
|
|
34866
34991
|
style: { color: accentColor },
|
|
34867
34992
|
children: data.pluginVersion
|
|
34868
34993
|
})] })]
|
|
34869
34994
|
}),
|
|
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
34995
|
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
|
-
|
|
34996
|
+
className: "col-span-2 p-8 rounded-3xl",
|
|
34997
|
+
style: {
|
|
34998
|
+
backgroundColor: isDark ? "rgba(0,0,0,0.18)" : "rgba(255,255,255,0.52)",
|
|
34999
|
+
border: `1px solid ${isDark ? "rgba(248,113,113,0.22)" : "rgba(220,38,38,0.14)"}`
|
|
35000
|
+
},
|
|
35001
|
+
children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
35002
|
+
className: "flex items-start justify-between gap-8 mb-6",
|
|
35003
|
+
children: [(0, import_jsx_runtime.jsxs)("div", {
|
|
35004
|
+
className: "flex items-center gap-6 min-w-0",
|
|
35005
|
+
children: [getAdapterLogo(data.adapterInfo.name), (0, import_jsx_runtime.jsxs)("div", {
|
|
35006
|
+
className: "min-w-0",
|
|
35007
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35008
|
+
className: "text-xl mb-1",
|
|
35009
|
+
style: { color: mutedColor },
|
|
35010
|
+
children: "Adapter / 适配器"
|
|
35011
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
35012
|
+
className: "flex items-center gap-4 flex-wrap",
|
|
35013
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35014
|
+
className: "text-3xl font-bold truncate",
|
|
35015
|
+
style: { color: accentColor },
|
|
35016
|
+
children: data.adapterInfo.name
|
|
35017
|
+
}), (0, import_jsx_runtime.jsx)(chip_default, {
|
|
35018
|
+
size: "lg",
|
|
35019
|
+
variant: "flat",
|
|
35020
|
+
color: "danger",
|
|
35021
|
+
className: "h-8 text-lg",
|
|
35022
|
+
children: data.adapterInfo.version.startsWith("v") ? data.adapterInfo.version : `v${data.adapterInfo.version}`
|
|
35023
|
+
})]
|
|
35024
|
+
})]
|
|
35025
|
+
})]
|
|
35026
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35027
|
+
className: "text-xl font-medium mb-4",
|
|
35028
|
+
style: { color: mutedColor },
|
|
35029
|
+
children: "事件信息来源"
|
|
34903
35030
|
})]
|
|
34904
|
-
})
|
|
35031
|
+
}), (0, import_jsx_runtime.jsxs)("div", {
|
|
35032
|
+
className: "grid grid-cols-4 gap-4 text-lg",
|
|
35033
|
+
style: { color: secondaryColor },
|
|
35034
|
+
children: [
|
|
35035
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35036
|
+
className: "rounded-2xl px-4 py-3",
|
|
35037
|
+
style: { backgroundColor: isDark ? "rgba(248,113,113,0.08)" : "rgba(220,38,38,0.05)" },
|
|
35038
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35039
|
+
className: "text-sm mb-1 opacity-75",
|
|
35040
|
+
children: "Platform / 对接平台"
|
|
35041
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35042
|
+
className: "font-semibold break-all text-2xl",
|
|
35043
|
+
children: String(data.adapterInfo.platform)
|
|
35044
|
+
})]
|
|
35045
|
+
}),
|
|
35046
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35047
|
+
className: "rounded-2xl px-4 py-3 relative overflow-hidden",
|
|
35048
|
+
style: { backgroundColor: isDark ? "rgba(248,113,113,0.08)" : "rgba(220,38,38,0.05)" },
|
|
35049
|
+
children: [
|
|
35050
|
+
(0, import_jsx_runtime.jsx)("p", {
|
|
35051
|
+
className: "text-sm mb-1 opacity-75",
|
|
35052
|
+
children: "Standard / 协议标准"
|
|
35053
|
+
}),
|
|
35054
|
+
(0, import_jsx_runtime.jsx)("p", {
|
|
35055
|
+
className: "font-semibold break-all text-2xl",
|
|
35056
|
+
children: import_lodash.default.upperFirst(import_lodash.default.camelCase(String(data.adapterInfo.standard)))
|
|
35057
|
+
}),
|
|
35058
|
+
String(data.adapterInfo.standard).toLowerCase() === "milky" && (0, import_jsx_runtime.jsx)("div", {
|
|
35059
|
+
className: "absolute inset-0 pointer-events-none",
|
|
35060
|
+
children: (0, import_jsx_runtime.jsx)("img", {
|
|
35061
|
+
src: "/image/other/handlerError/Milky.png",
|
|
35062
|
+
alt: "Milky",
|
|
35063
|
+
className: "absolute -right-2 -bottom-3 w-24 h-24 object-contain",
|
|
35064
|
+
style: {
|
|
35065
|
+
WebkitMaskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35066
|
+
maskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35067
|
+
opacity: 1
|
|
35068
|
+
}
|
|
35069
|
+
})
|
|
35070
|
+
}),
|
|
35071
|
+
String(data.adapterInfo.standard).toLowerCase() === "satori" && (0, import_jsx_runtime.jsx)("div", {
|
|
35072
|
+
className: "absolute inset-0 pointer-events-none",
|
|
35073
|
+
children: (0, import_jsx_runtime.jsx)("img", {
|
|
35074
|
+
src: "/image/other/handlerError/satori.png",
|
|
35075
|
+
alt: "Satori",
|
|
35076
|
+
className: "absolute -right-2 -bottom-3 w-24 h-24 object-contain",
|
|
35077
|
+
style: {
|
|
35078
|
+
WebkitMaskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35079
|
+
maskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35080
|
+
opacity: 1
|
|
35081
|
+
}
|
|
35082
|
+
})
|
|
35083
|
+
}),
|
|
35084
|
+
String(data.adapterInfo.standard).includes("onebot") && (0, import_jsx_runtime.jsx)("div", {
|
|
35085
|
+
className: "absolute inset-0 pointer-events-none",
|
|
35086
|
+
children: (0, import_jsx_runtime.jsx)("img", {
|
|
35087
|
+
src: "/image/other/handlerError/onebot.png",
|
|
35088
|
+
alt: "OneBot",
|
|
35089
|
+
className: "absolute -right-2 -bottom-3 w-24 h-24 object-contain",
|
|
35090
|
+
style: {
|
|
35091
|
+
WebkitMaskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35092
|
+
maskImage: "linear-gradient(to top left, transparent 0%, rgba(0,0,0,1) 60%)",
|
|
35093
|
+
opacity: 1
|
|
35094
|
+
}
|
|
35095
|
+
})
|
|
35096
|
+
})
|
|
35097
|
+
]
|
|
35098
|
+
}),
|
|
35099
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35100
|
+
className: "rounded-2xl px-4 py-3",
|
|
35101
|
+
style: { backgroundColor: isDark ? "rgba(248,113,113,0.08)" : "rgba(220,38,38,0.05)" },
|
|
35102
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35103
|
+
className: "text-sm mb-1 opacity-75",
|
|
35104
|
+
children: "Protocol / 协议实现"
|
|
35105
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35106
|
+
className: "font-semibold break-all text-2xl",
|
|
35107
|
+
children: String(data.adapterInfo.protocol)
|
|
35108
|
+
})]
|
|
35109
|
+
}),
|
|
35110
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35111
|
+
className: "rounded-2xl px-4 py-3",
|
|
35112
|
+
style: { backgroundColor: isDark ? "rgba(248,113,113,0.08)" : "rgba(220,38,38,0.05)" },
|
|
35113
|
+
children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35114
|
+
className: "text-sm mb-1 opacity-75",
|
|
35115
|
+
children: "Communication / 通信方式"
|
|
35116
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35117
|
+
className: "font-semibold break-all text-2xl",
|
|
35118
|
+
children: String(data.adapterInfo.communication)
|
|
35119
|
+
})]
|
|
35120
|
+
})
|
|
35121
|
+
]
|
|
35122
|
+
})]
|
|
34905
35123
|
})
|
|
34906
35124
|
]
|
|
34907
35125
|
}),
|
|
@@ -34910,46 +35128,92 @@ var handlerError = (props) => {
|
|
|
34910
35128
|
style: { color: mutedColor },
|
|
34911
35129
|
children: [data.buildTime && (0, import_jsx_runtime.jsxs)("div", {
|
|
34912
35130
|
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: [
|
|
35131
|
+
children: [(0, import_jsx_runtime.jsx)(MdAccessTime, { className: "w-6 h-6" }), (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
35132
|
+
"Built Time: ",
|
|
35133
|
+
data.buildTime,
|
|
35134
|
+
" 距离 ",
|
|
35135
|
+
formatDistanceToNow(parse(data.buildTime, "yyyy年MM月dd日 HH:mm", /* @__PURE__ */ new Date()), { locale: zhCN })
|
|
35136
|
+
] })]
|
|
34914
35137
|
}), data.commitHash && (0, import_jsx_runtime.jsxs)("div", {
|
|
34915
35138
|
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] })]
|
|
35139
|
+
children: [(0, import_jsx_runtime.jsx)(FaCodeBranch, { className: "w-6 h-6" }), (0, import_jsx_runtime.jsxs)("span", { children: ["Commit Hash: ", data.commitHash] })]
|
|
34917
35140
|
})]
|
|
34918
35141
|
}),
|
|
34919
35142
|
(0, import_jsx_runtime.jsxs)("div", {
|
|
34920
35143
|
className: "p-10 rounded-[36px]",
|
|
34921
35144
|
style: { backgroundColor: isDark ? "rgba(0,0,0,0.2)" : "rgba(255,255,255,0.5)" },
|
|
34922
35145
|
children: [
|
|
34923
|
-
(0, import_jsx_runtime.
|
|
34924
|
-
className: "
|
|
34925
|
-
|
|
34926
|
-
|
|
34927
|
-
|
|
34928
|
-
|
|
34929
|
-
|
|
34930
|
-
|
|
34931
|
-
|
|
35146
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35147
|
+
className: "flex items-end justify-between mb-6",
|
|
35148
|
+
children: [(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35149
|
+
className: "text-3xl font-semibold mb-2",
|
|
35150
|
+
style: { color: accentColor },
|
|
35151
|
+
children: "Need Help? / 需要帮助?"
|
|
35152
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35153
|
+
className: "text-2xl",
|
|
35154
|
+
style: { color: secondaryColor },
|
|
35155
|
+
children: "提交问题时请附上完整报错截图、复现步骤和环境版本信息。"
|
|
35156
|
+
})] }), (0, import_jsx_runtime.jsx)("span", {
|
|
35157
|
+
className: "text-xs font-black tracking-[0.2em] uppercase px-3 py-1 rounded-full",
|
|
35158
|
+
style: {
|
|
35159
|
+
color: primaryColor,
|
|
35160
|
+
backgroundColor: isDark ? "rgba(248,113,113,0.12)" : "rgba(220,38,38,0.08)"
|
|
35161
|
+
},
|
|
35162
|
+
children: "Support"
|
|
35163
|
+
})]
|
|
34932
35164
|
}),
|
|
34933
35165
|
(0, import_jsx_runtime.jsxs)("div", {
|
|
34934
|
-
className: "
|
|
35166
|
+
className: "grid grid-cols-2 gap-x-6 gap-y-6 text-2xl leading-relaxed py-6",
|
|
35167
|
+
style: {
|
|
35168
|
+
borderTop: `1px solid ${isDark ? "rgba(248,113,113,0.2)" : "rgba(220,38,38,0.12)"}`,
|
|
35169
|
+
borderBottom: `1px solid ${isDark ? "rgba(248,113,113,0.2)" : "rgba(220,38,38,0.12)"}`
|
|
35170
|
+
},
|
|
34935
35171
|
children: [
|
|
34936
|
-
(0, import_jsx_runtime.jsx)("
|
|
35172
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35173
|
+
className: "font-semibold mb-1",
|
|
35174
|
+
style: { color: accentColor },
|
|
35175
|
+
children: "GitHub Issue"
|
|
35176
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35177
|
+
className: "text-xl break-all",
|
|
34937
35178
|
style: { color: secondaryColor },
|
|
34938
|
-
children: "
|
|
34939
|
-
}),
|
|
34940
|
-
(0, import_jsx_runtime.jsx)("
|
|
34941
|
-
|
|
34942
|
-
|
|
34943
|
-
|
|
34944
|
-
(0, import_jsx_runtime.
|
|
35179
|
+
children: "https://github.com/ikenxuan/karin-plugin-kkk/issues/new/choose"
|
|
35180
|
+
})] }),
|
|
35181
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35182
|
+
className: "font-semibold mb-1",
|
|
35183
|
+
style: { color: accentColor },
|
|
35184
|
+
children: "GitHub Repository"
|
|
35185
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35186
|
+
className: "text-xl break-all",
|
|
34945
35187
|
style: { color: secondaryColor },
|
|
34946
|
-
children:
|
|
34947
|
-
|
|
34948
|
-
|
|
34949
|
-
|
|
34950
|
-
}
|
|
34951
|
-
|
|
35188
|
+
children: "https://github.com/ikenxuan/karin-plugin-kkk"
|
|
35189
|
+
})] }),
|
|
35190
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35191
|
+
className: "font-semibold mb-1",
|
|
35192
|
+
style: { color: accentColor },
|
|
35193
|
+
children: "QQ 群"
|
|
35194
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35195
|
+
className: "text-xl",
|
|
35196
|
+
style: { color: secondaryColor },
|
|
35197
|
+
children: "795874649"
|
|
35198
|
+
})] }),
|
|
35199
|
+
(0, import_jsx_runtime.jsxs)("div", { children: [(0, import_jsx_runtime.jsx)("p", {
|
|
35200
|
+
className: "font-semibold mb-1",
|
|
35201
|
+
style: { color: accentColor },
|
|
35202
|
+
children: "附带信息"
|
|
35203
|
+
}), (0, import_jsx_runtime.jsx)("p", {
|
|
35204
|
+
className: "text-xl",
|
|
35205
|
+
style: { color: secondaryColor },
|
|
35206
|
+
children: "此图片 + 触发命令"
|
|
35207
|
+
})] })
|
|
34952
35208
|
]
|
|
35209
|
+
}),
|
|
35210
|
+
(0, import_jsx_runtime.jsxs)("div", {
|
|
35211
|
+
className: "flex items-center gap-4 mt-6 text-xl",
|
|
35212
|
+
style: { color: mutedColor },
|
|
35213
|
+
children: [(0, import_jsx_runtime.jsx)("span", {
|
|
35214
|
+
className: "font-mono",
|
|
35215
|
+
children: "Tips:"
|
|
35216
|
+
}), (0, import_jsx_runtime.jsx)("span", { children: "信息越完整,定位越快。" })]
|
|
34953
35217
|
})
|
|
34954
35218
|
]
|
|
34955
35219
|
})
|