karin-plugin-kkk 2.30.1 → 2.30.4
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 +64 -0
- package/lib/build-metadata.json +5 -5
- package/lib/core_chunk/amagi.d.mts +16697 -16016
- package/lib/core_chunk/main.js +931 -1105
- package/lib/core_chunk/template.d.mts +14 -3
- package/lib/core_chunk/vendor.js +4331 -5164
- package/lib/karin-plugin-kkk.css +270 -293
- package/package.json +2 -2
package/lib/core_chunk/main.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as __toESM } from "./rolldown-runtime.js";
|
|
2
|
-
import { A as
|
|
2
|
+
import { $ as zhCN, $t as Hash, A as n, An as Chip, At as Save, B as RiPieChart2Fill, Bn as require_protobufjs, Bt as Palette, C as BiImage, Cn as ChartColumn, Ct as ShoppingBag, D as AiOutlineVideoCamera, Dn as Bot, Dt as Settings2, E as AiFillStar, En as Box, Et as Share2, F as RiHeart3Fill, Fn as require_react, Ft as QrCode, G as RiTiktokFill, Gt as Menu, H as RiStarFill, Hn as Xhshow, Ht as Moon, I as RiHeart3Line, In as require_png, It as Puzzle, J as RiVerifiedBadgeFill, Jt as LoaderCircle, K as RiTrophyFill, Kt as Maximize, L as RiHeartLine, Ln as require_jsQR, Lt as Plus, M as RiArrowRightFill, Mn as clsx, Mt as RefreshCw, N as RiGroupLine, Nn as require_jsx_runtime, Nt as Radio, O as m, On as Bookmark, Ot as Search, P as RiHashtag, Pn as require_server_node, Pt as Quote, Q as SiAnthropic, Qt as Heart, R as RiLiveLine, Rn as require_jpeg_js, Rt as Play, S as FaUserGroup, Sn as Check, St as Smartphone, T as AiFillPushpin, Tn as Calendar, Tt as ShieldCheck, U as RiStarLine, Un as zod_default, Ut as Monitor, V as RiShareForwardFill, Vn as Chalk, Vt as Music, W as RiThumbUpFill, Wt as MessageCircle, X as SiGithub, Xt as Info, Y as RiVideoLine, Yt as LayoutTemplate, Z as SiBilibili, Zt as Image$1, _ as MdLocationOn, _n as CircleFadingArrowUp, _t as Sun, a as purify, an as Eye, at as Zap, b as FaMusic, bn as CircleCheck, bt as SquarePen, c as VictoryLine, cn as Download, ct as Video, d as VictoryLabel, dn as CornerDownLeft, dt as User, en as GitBranch, et as parse, f as VictoryTheme, fn as Copy, ft as UserPlus, g as MdLightbulbOutline, gn as CircleQuestionMark, gt as Terminal, h as MdInfoOutline, hn as Clapperboard, ht as Trash2, i as Window, in as FilePlay, it as differenceInSeconds, j as Markdown, jn as Button, jt as RotateCcw, k as a, kn as BellRing, kt as ScanLine, l as VictoryChart, ln as Crown, lt as Users, m as MdFitScreen, mn as Clock, mt as TriangleAlert, n as require_lib, nn as Gamepad2, nt as formatDistanceToNow, o as VictoryScatter, on as EyeOff, ot as X, p as rehypeHighlight, pn as Code, pt as Upload, q as RiUserFollowLine, qt as MapPin, r as require_qr_code_styling, rn as FileText, rt as format, s as VictoryPie, sn as ExternalLink, st as WandSparkles, t as createProxyMiddleware, tn as Gift, tt as fromUnixTime, u as VictoryAxis, un as Cpu, ut as UsersRound, v as MdSchedule, vn as CircleEllipsis, vt as Star, w as AiFillHeart, wn as Camera, wt as Shield, x as FaTiktok, xn as CircleAlert, xt as Sparkles, y as FaCommentDots, yn as CircleCheckBig, yt as Square, z as RiMessage3Fill, zn as require_heic_decode, zt as Pencil } from "./vendor.js";
|
|
3
3
|
import "node:module";
|
|
4
4
|
import fs from "node:fs";
|
|
5
5
|
import path, { resolve } from "node:path";
|
|
@@ -104,7 +104,9 @@ function checkDeprecation(apiName) {
|
|
|
104
104
|
* @returns 格式化的废弃提示消息字符串
|
|
105
105
|
*/
|
|
106
106
|
function buildDeprecationMessage(config) {
|
|
107
|
-
const lines = [`[DEPRECATED] "${config.name}" 已在 v${config.deprecatedIn}
|
|
107
|
+
const lines = [`[DEPRECATED] "${config.name}" 已在 v${config.deprecatedIn} 版本废弃。`];
|
|
108
|
+
if (config.replacement) lines.push(`请使用 "${config.replacement}" 替代。`);
|
|
109
|
+
else lines.push("此接口已被上游删除,无法继续使用,无可用替代方案。");
|
|
108
110
|
if (config.removedIn) lines.push(`此 API 将在 v${config.removedIn} 版本移除。`);
|
|
109
111
|
if (config.migrationGuide) lines.push(`迁移指南: ${config.migrationGuide}`);
|
|
110
112
|
return lines.join("\n");
|
|
@@ -212,10 +214,6 @@ registerDeprecatedApi({
|
|
|
212
214
|
name: "动态详情数据",
|
|
213
215
|
replacement: "fetchDynamicDetail"
|
|
214
216
|
},
|
|
215
|
-
{
|
|
216
|
-
name: "动态卡片数据",
|
|
217
|
-
replacement: "fetchDynamicCard"
|
|
218
|
-
},
|
|
219
217
|
{
|
|
220
218
|
name: "直播间信息",
|
|
221
219
|
replacement: "fetchLiveRoomInfo"
|
|
@@ -365,6 +363,20 @@ registerDeprecatedApi({
|
|
|
365
363
|
throwError: true
|
|
366
364
|
});
|
|
367
365
|
});
|
|
366
|
+
registerDeprecatedApi({
|
|
367
|
+
name: `methodType: '动态卡片数据'`,
|
|
368
|
+
deprecatedIn: "6.0.0",
|
|
369
|
+
removedIn: "7.0.0",
|
|
370
|
+
migrationGuide: "https://amagi-docs.vercel.app/docs/changelog/6.1.3",
|
|
371
|
+
throwError: false
|
|
372
|
+
});
|
|
373
|
+
registerDeprecatedApi({
|
|
374
|
+
name: "fetchDynamicCard",
|
|
375
|
+
deprecatedIn: "6.1.3",
|
|
376
|
+
removedIn: "7.0.0",
|
|
377
|
+
migrationGuide: "https://amagi-docs.vercel.app/docs/changelog/6.1.3",
|
|
378
|
+
throwError: false
|
|
379
|
+
});
|
|
368
380
|
//#endregion
|
|
369
381
|
//#region ../amagi/packages/core/src/model/DataFetchers.ts
|
|
370
382
|
/**
|
|
@@ -544,9 +556,14 @@ var BilibiliAPI = class {
|
|
|
544
556
|
getDynamicDetail(data) {
|
|
545
557
|
return `https://api.bilibili.com/x/polymer/web-dynamic/v1/detail?id=${data.dynamic_id}&features=itemOpusStyle,opusBigCover,onlyfansVote,endFooterHidden,decorationCard,onlyfansAssetsV2,ugcDelete,onlyfansQaCard,editable,opusPrivateVisible,avatarAutoTheme`;
|
|
546
558
|
}
|
|
547
|
-
/**
|
|
559
|
+
/**
|
|
560
|
+
* 获取动态卡片信息
|
|
561
|
+
*
|
|
562
|
+
* @deprecated B站官方已于 `2025-08-09` 删除原 `dynamic_svr` 接口,该接口已停用。
|
|
563
|
+
* 调用将返回错误信息,请使用 {@link getDynamicDetail} 替代。
|
|
564
|
+
*/
|
|
548
565
|
getDynamicCard(data) {
|
|
549
|
-
return
|
|
566
|
+
return this.getDynamicDetail(data);
|
|
550
567
|
}
|
|
551
568
|
/** 获取用户名片信息 */
|
|
552
569
|
getUserCard(data) {
|
|
@@ -1790,15 +1807,20 @@ async function fetchBilibiliInternal(methodType, options, config) {
|
|
|
1790
1807
|
const rawData = await fetchBilibili({ ...validateBilibiliParams(methodType, options) }, config.cookie, config.requestConfig);
|
|
1791
1808
|
const duration = Date.now() - startTime;
|
|
1792
1809
|
if (rawData.code !== 0) {
|
|
1810
|
+
const errorMessage = rawData.message || "B站数据获取失败";
|
|
1793
1811
|
emitApiError({
|
|
1794
1812
|
platform: "bilibili",
|
|
1795
1813
|
methodType,
|
|
1796
1814
|
errorCode: rawData.code,
|
|
1797
|
-
errorMessage
|
|
1815
|
+
errorMessage,
|
|
1798
1816
|
url: void 0,
|
|
1799
1817
|
duration
|
|
1800
1818
|
});
|
|
1801
|
-
return createErrorResponse(rawData.amagiError
|
|
1819
|
+
return createErrorResponse(rawData.amagiError ?? {
|
|
1820
|
+
errorDescription: errorMessage,
|
|
1821
|
+
requestType: methodType,
|
|
1822
|
+
requestUrl: void 0
|
|
1823
|
+
}, errorMessage, rawData.code, rawData);
|
|
1802
1824
|
}
|
|
1803
1825
|
const result = createSuccessResponse$1(rawData, "获取成功", 200);
|
|
1804
1826
|
emitApiSuccess({
|
|
@@ -2107,18 +2129,24 @@ async function fetchDynamicDetail(options, cookie, requestConfig) {
|
|
|
2107
2129
|
}
|
|
2108
2130
|
/**
|
|
2109
2131
|
* 获取B站动态卡片信息
|
|
2132
|
+
*
|
|
2133
|
+
* @deprecated v6.1.3 已废弃,B站官方已于 `2025-08-09` 删除原 `dynamic_svr` 接口。
|
|
2134
|
+
* 调用将返回错误信息
|
|
2135
|
+
* 计划于 v7.0.0 移除。
|
|
2136
|
+
*
|
|
2110
2137
|
* @param options - 动态参数
|
|
2111
2138
|
* @param options.dynamic_id - 动态 ID
|
|
2112
2139
|
* @param cookie - B站 Cookie (可选)
|
|
2113
2140
|
* @param requestConfig - 请求配置 (可选)
|
|
2114
|
-
* @returns
|
|
2141
|
+
* @returns 动态卡片数据(已停用,返回错误信息)
|
|
2115
2142
|
* @example
|
|
2116
2143
|
* ```typescript
|
|
2117
2144
|
* const result = await fetchDynamicCard({ dynamic_id: '123456789' }, cookie)
|
|
2118
|
-
*
|
|
2145
|
+
* // result.success === false,错误信息提示接口已停用
|
|
2119
2146
|
* ```
|
|
2120
2147
|
*/
|
|
2121
2148
|
async function fetchDynamicCard(options, cookie, requestConfig) {
|
|
2149
|
+
checkDeprecation("fetchDynamicCard");
|
|
2122
2150
|
return fetchBilibiliInternal("dynamicCard", options, {
|
|
2123
2151
|
cookie,
|
|
2124
2152
|
requestConfig
|
|
@@ -2388,6 +2416,7 @@ function createBoundBilibiliFetcher(cookie, requestConfig) {
|
|
|
2388
2416
|
fetchUserSpaceInfo: (options) => fetchUserSpaceInfo(options, cookie, requestConfig),
|
|
2389
2417
|
fetchUploaderTotalViews: (options) => fetchUploaderTotalViews(options, cookie, requestConfig),
|
|
2390
2418
|
fetchDynamicDetail: (options) => fetchDynamicDetail(options, cookie, requestConfig),
|
|
2419
|
+
/** @deprecated v6.1.3 已废弃,调用将返回错误信息 */
|
|
2391
2420
|
fetchDynamicCard: (options) => fetchDynamicCard(options, cookie, requestConfig),
|
|
2392
2421
|
fetchBangumiInfo: (options) => fetchBangumiInfo(options, cookie, requestConfig),
|
|
2393
2422
|
fetchBangumiStreamUrl: (options) => fetchBangumiStreamUrl(options, cookie, requestConfig),
|
|
@@ -5433,6 +5462,8 @@ var encodeBase64Url = (bytes) => {
|
|
|
5433
5462
|
* 数据流而最小化保留的局部算法。
|
|
5434
5463
|
*/
|
|
5435
5464
|
var KuaishouChaChaCipher = class {
|
|
5465
|
+
key;
|
|
5466
|
+
nonce;
|
|
5436
5467
|
wordIndex = 0;
|
|
5437
5468
|
state = new Array(16).fill(0);
|
|
5438
5469
|
constructor(key, nonce) {
|
|
@@ -8577,19 +8608,12 @@ var fetchBilibili = async (data, cookie, requestConfig) => {
|
|
|
8577
8608
|
url: bilibiliApiUrls.getDynamicDetail({ dynamic_id: data.dynamic_id })
|
|
8578
8609
|
});
|
|
8579
8610
|
}
|
|
8580
|
-
case "dynamicCard": {
|
|
8581
|
-
|
|
8582
|
-
|
|
8583
|
-
|
|
8584
|
-
|
|
8585
|
-
|
|
8586
|
-
};
|
|
8587
|
-
return await GlobalGetData(data.methodType, {
|
|
8588
|
-
...baseRequestConfig,
|
|
8589
|
-
headers: customHeaders,
|
|
8590
|
-
url: bilibiliApiUrls.getDynamicCard({ dynamic_id })
|
|
8591
|
-
});
|
|
8592
|
-
}
|
|
8611
|
+
case "dynamicCard": return {
|
|
8612
|
+
code: -404,
|
|
8613
|
+
message: "接口已停用:B站官方已于 `2025-08-09` 删除 dynamic_svr 接口,fetchDynamicCard 方法已废弃,调用讲返回错误信息",
|
|
8614
|
+
ttl: 1,
|
|
8615
|
+
data: null
|
|
8616
|
+
};
|
|
8593
8617
|
case "userCard": {
|
|
8594
8618
|
const { host_mid } = data;
|
|
8595
8619
|
return await GlobalGetData(data.methodType, {
|
|
@@ -9493,13 +9517,13 @@ var createAmagiClient = (options) => {
|
|
|
9493
9517
|
* @param event - 事件名称
|
|
9494
9518
|
* @param listener - 事件处理函数
|
|
9495
9519
|
*/
|
|
9496
|
-
on: amagiEvents.on
|
|
9520
|
+
on: (event, listener) => amagiEvents.on(event, listener),
|
|
9497
9521
|
/**
|
|
9498
9522
|
* 注册一次性事件监听器
|
|
9499
9523
|
* @param event - 事件名称
|
|
9500
9524
|
* @param listener - 事件处理函数 (只触发一次)
|
|
9501
9525
|
*/
|
|
9502
|
-
once: amagiEvents.once
|
|
9526
|
+
once: (event, listener) => amagiEvents.once(event, listener),
|
|
9503
9527
|
/** @deprecated v6 已废弃,请使用 douyin.fetcher 替代 */
|
|
9504
9528
|
getDouyinData,
|
|
9505
9529
|
/** @deprecated v6 已废弃,请使用 bilibili.fetcher 替代 */
|
|
@@ -9663,7 +9687,7 @@ var AdditionalType = /* @__PURE__ */ function(AdditionalType) {
|
|
|
9663
9687
|
return AdditionalType;
|
|
9664
9688
|
}({});
|
|
9665
9689
|
//#endregion
|
|
9666
|
-
//#region ../amagi/packages/core/src/types/ReturnDataType/Bilibili/DynamicInfo.ts
|
|
9690
|
+
//#region ../amagi/packages/core/src/types/ReturnDataType/Bilibili/DynamicInfo/index.ts
|
|
9667
9691
|
var DynamicType = /* @__PURE__ */ function(DynamicType) {
|
|
9668
9692
|
DynamicType["AV"] = "DYNAMIC_TYPE_AV";
|
|
9669
9693
|
DynamicType["DRAW"] = "DYNAMIC_TYPE_DRAW";
|
|
@@ -10163,6 +10187,11 @@ var CreateApp = CreateAmagiApp;
|
|
|
10163
10187
|
/** After instantiation, it can interact with the specified platform API to quickly obtain data. */
|
|
10164
10188
|
var Client = CreateApp;
|
|
10165
10189
|
var amagi = Client;
|
|
10190
|
+
/*!
|
|
10191
|
+
* @ikenxuan/amagi
|
|
10192
|
+
* Copyright(c) 2023 ikenxuan
|
|
10193
|
+
* GPL-3.0 Licensed
|
|
10194
|
+
*/
|
|
10166
10195
|
//#endregion
|
|
10167
10196
|
//#region src/module/utils/Config.ts
|
|
10168
10197
|
var Cfg = class {
|
|
@@ -12613,11 +12642,17 @@ var Downloader = class {
|
|
|
12613
12642
|
const timeoutId = setTimeout(() => controller.abort(), this.timeout);
|
|
12614
12643
|
let intervalId = null;
|
|
12615
12644
|
let throttleStream = null;
|
|
12645
|
+
let writer = null;
|
|
12616
12646
|
try {
|
|
12617
12647
|
let startByte = 0;
|
|
12618
12648
|
if (fs.existsSync(this.filepath)) {
|
|
12619
|
-
|
|
12620
|
-
|
|
12649
|
+
const stats = fs.statSync(this.filepath);
|
|
12650
|
+
startByte = Math.max(0, stats.size - 256 * 1024);
|
|
12651
|
+
if (startByte > 0 && startByte < stats.size) {
|
|
12652
|
+
fs.truncateSync(this.filepath, startByte);
|
|
12653
|
+
logger.debug(`检测到部分下载文件,截断到 ${formatBytes(startByte)} 后重新下载(回退 256KB 安全裕量)`);
|
|
12654
|
+
} else if (startByte > 0) logger.debug(`检测到部分下载文件,从 ${formatBytes(startByte)} 处继续下载(回退 256KB 安全裕量)`);
|
|
12655
|
+
else logger.debug("检测到部分下载文件,文件较小,将重新下载");
|
|
12621
12656
|
}
|
|
12622
12657
|
const requestConfig = {
|
|
12623
12658
|
url: this.url,
|
|
@@ -12696,7 +12731,10 @@ var Downloader = class {
|
|
|
12696
12731
|
const totalBytes = supportsRange ? startByte + contentLength : contentLength;
|
|
12697
12732
|
let downloadedBytes = startByte;
|
|
12698
12733
|
let lastPrintedPercentage = -1;
|
|
12699
|
-
|
|
12734
|
+
writer = fs.createWriteStream(this.filepath, {
|
|
12735
|
+
flags: startByte > 0 ? "r+" : "w",
|
|
12736
|
+
start: startByte > 0 ? startByte : void 0
|
|
12737
|
+
});
|
|
12700
12738
|
const printProgress = () => {
|
|
12701
12739
|
if (totalBytes > 0) {
|
|
12702
12740
|
const progressPercentage = Math.floor(downloadedBytes / totalBytes * 100);
|
|
@@ -12734,7 +12772,7 @@ var Downloader = class {
|
|
|
12734
12772
|
if (actualSize < expectedSize) {
|
|
12735
12773
|
logger.warn(`文件大小不匹配: 实际 ${formatBytes(actualSize)}, 预期 ${formatBytes(expectedSize)}`);
|
|
12736
12774
|
logger.warn(`差异: ${formatBytes(expectedSize - actualSize)} (${((expectedSize - actualSize) / expectedSize * 100).toFixed(2)}%)`);
|
|
12737
|
-
if (
|
|
12775
|
+
if (expectedSize - actualSize > 10 * 1024) throw new Error(`文件下载不完整: 实际 ${formatBytes(actualSize)}, 预期 ${formatBytes(expectedSize)}`);
|
|
12738
12776
|
} else logger.debug(`文件大小验证通过: ${formatBytes(actualSize)}`);
|
|
12739
12777
|
}
|
|
12740
12778
|
this.consecutiveResets = 0;
|
|
@@ -12762,6 +12800,20 @@ var Downloader = class {
|
|
|
12762
12800
|
}
|
|
12763
12801
|
const nextDelay = calculateBackoffDelay(retryCount);
|
|
12764
12802
|
if (retryCount < this.maxRetries) {
|
|
12803
|
+
if (writer && !(writer.closed ?? false)) {
|
|
12804
|
+
const ws = writer;
|
|
12805
|
+
await new Promise((resolve) => {
|
|
12806
|
+
const timeout = setTimeout(() => {
|
|
12807
|
+
ws.off("close", onClose);
|
|
12808
|
+
resolve();
|
|
12809
|
+
}, 1e3);
|
|
12810
|
+
const onClose = () => {
|
|
12811
|
+
clearTimeout(timeout);
|
|
12812
|
+
resolve();
|
|
12813
|
+
};
|
|
12814
|
+
ws.once("close", onClose);
|
|
12815
|
+
});
|
|
12816
|
+
}
|
|
12765
12817
|
if (isRecoverable && fs.existsSync(this.filepath)) {
|
|
12766
12818
|
const stats = fs.statSync(this.filepath);
|
|
12767
12819
|
logger.warn(`检测到可恢复的网络错误,保留已下载的 ${formatBytes(stats.size)} 数据`);
|
|
@@ -13485,12 +13537,6 @@ var PreviewLayout = ({ state }) => {
|
|
|
13485
13537
|
});
|
|
13486
13538
|
};
|
|
13487
13539
|
//#endregion
|
|
13488
|
-
//#region ../template/src/components/common/Icon.tsx
|
|
13489
|
-
var Icon = (props) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Icon$1, {
|
|
13490
|
-
...props,
|
|
13491
|
-
ssr: true
|
|
13492
|
-
});
|
|
13493
|
-
//#endregion
|
|
13494
13540
|
//#region ../template/src/components/common/GlowImage.tsx
|
|
13495
13541
|
var GlowImage = ({ src, children, alt, className, imgClassName, mode = "blur-layer", blurRadius = 18, glowStrength = .6, scale = 1.06, shadowRadius = 28, crossOrigin }) => {
|
|
13496
13542
|
const [shadowColor, setShadowColor] = import_react.useState("rgba(255,255,255,0.5)");
|
|
@@ -14577,23 +14623,19 @@ var DefaultLayout = ({ children, version, data, scale = 3, className = "", style
|
|
|
14577
14623
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
14578
14624
|
className: "flex items-center mb-1 space-x-2 text-sm font-bold tracking-widest uppercase text-foreground/80",
|
|
14579
14625
|
children: [
|
|
14580
|
-
version.hasUpdate && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14581
|
-
icon: "lucide:circle-fading-arrow-up",
|
|
14626
|
+
version.hasUpdate && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CircleFadingArrowUp, {
|
|
14582
14627
|
strokeWidth: 3,
|
|
14583
14628
|
className: "w-4 h-4 text-success"
|
|
14584
14629
|
}),
|
|
14585
|
-
!version.hasUpdate && version.releaseType === "Stable" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14586
|
-
icon: "lucide:check-circle",
|
|
14630
|
+
!version.hasUpdate && version.releaseType === "Stable" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CircleCheckBig, {
|
|
14587
14631
|
strokeWidth: 3,
|
|
14588
14632
|
className: "w-4 h-4"
|
|
14589
14633
|
}),
|
|
14590
|
-
!version.hasUpdate && version.releaseType === "Preview" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14591
|
-
icon: "lucide:alert-triangle",
|
|
14634
|
+
!version.hasUpdate && version.releaseType === "Preview" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TriangleAlert, {
|
|
14592
14635
|
strokeWidth: 3,
|
|
14593
14636
|
className: "w-4 h-4 text-warning"
|
|
14594
14637
|
}),
|
|
14595
|
-
!version.hasUpdate && version.releaseType !== "Stable" && version.releaseType !== "Preview" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14596
|
-
icon: "lucide:info",
|
|
14638
|
+
!version.hasUpdate && version.releaseType !== "Stable" && version.releaseType !== "Preview" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Info, {
|
|
14597
14639
|
strokeWidth: 3,
|
|
14598
14640
|
className: "w-4 h-4"
|
|
14599
14641
|
}),
|
|
@@ -14620,8 +14662,7 @@ var DefaultLayout = ({ children, version, data, scale = 3, className = "", style
|
|
|
14620
14662
|
className: "flex flex-col items-start",
|
|
14621
14663
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
14622
14664
|
className: "flex items-center mb-1 space-x-2 text-sm font-bold tracking-widest uppercase text-foreground/80",
|
|
14623
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14624
|
-
icon: "lucide:zap",
|
|
14665
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Zap, {
|
|
14625
14666
|
strokeWidth: 3,
|
|
14626
14667
|
className: "w-4 h-4 opacity-90"
|
|
14627
14668
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -14860,12 +14901,10 @@ var BangumiBilibiliHeader = (props) => {
|
|
|
14860
14901
|
}),
|
|
14861
14902
|
props.upInfo.verify_type > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
14862
14903
|
className: "flex items-center",
|
|
14863
|
-
children: props.upInfo.verify_type === 1 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14864
|
-
icon: "lucide:shield",
|
|
14904
|
+
children: props.upInfo.verify_type === 1 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Shield, {
|
|
14865
14905
|
width: 20,
|
|
14866
14906
|
className: "text-warning"
|
|
14867
|
-
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14868
|
-
icon: "lucide:crown",
|
|
14907
|
+
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Crown, {
|
|
14869
14908
|
width: 20,
|
|
14870
14909
|
className: "text-accent"
|
|
14871
14910
|
})
|
|
@@ -14885,10 +14924,7 @@ var BangumiBilibiliHeader = (props) => {
|
|
|
14885
14924
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
14886
14925
|
className: "flex gap-6 items-center text-3xl select-text text-foreground",
|
|
14887
14926
|
children: [
|
|
14888
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14889
|
-
icon: "lucide:users",
|
|
14890
|
-
width: 30
|
|
14891
|
-
}),
|
|
14927
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { size: 30 }),
|
|
14892
14928
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [formatNumber$3(props.upInfo.follower), "粉丝"] }),
|
|
14893
14929
|
props.upInfo.is_follow === 1 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Chip, {
|
|
14894
14930
|
size: "sm",
|
|
@@ -14901,10 +14937,7 @@ var BangumiBilibiliHeader = (props) => {
|
|
|
14901
14937
|
}),
|
|
14902
14938
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
14903
14939
|
className: "flex gap-2 items-center text-2xl select-text text-foreground/70",
|
|
14904
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14905
|
-
icon: "lucide:hash",
|
|
14906
|
-
width: 20
|
|
14907
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["UID: ", props.upInfo.mid] })]
|
|
14940
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { size: 20 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["UID: ", props.upInfo.mid] })]
|
|
14908
14941
|
})
|
|
14909
14942
|
]
|
|
14910
14943
|
})]
|
|
@@ -14944,10 +14977,7 @@ var BangumiBilibiliHeader = (props) => {
|
|
|
14944
14977
|
className: "mb-12",
|
|
14945
14978
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
14946
14979
|
className: "flex gap-6 items-center mb-6 text-3xl select-text text-foreground",
|
|
14947
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14948
|
-
icon: "lucide:users",
|
|
14949
|
-
width: 30
|
|
14950
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "声优阵容" })]
|
|
14980
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { size: 30 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "声优阵容" })]
|
|
14951
14981
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
14952
14982
|
className: "flex flex-wrap gap-8",
|
|
14953
14983
|
children: [actorList.slice(0, 6).map((actor, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -14967,10 +14997,7 @@ var BangumiBilibiliHeader = (props) => {
|
|
|
14967
14997
|
className: "mb-12",
|
|
14968
14998
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
14969
14999
|
className: "flex gap-6 items-center mb-6 text-3xl select-text text-foreground",
|
|
14970
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
14971
|
-
icon: "lucide:star",
|
|
14972
|
-
width: 30
|
|
14973
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "评价" })]
|
|
15000
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Star, { size: 30 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "评价" })]
|
|
14974
15001
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
14975
15002
|
className: "text-3xl leading-relaxed select-text text-foreground",
|
|
14976
15003
|
children: props.evaluate
|
|
@@ -15083,10 +15110,7 @@ var BangumiBilibiliEpisodes = (props) => {
|
|
|
15083
15110
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
15084
15111
|
className: "flex gap-8 items-center mb-20 text-5xl font-bold select-text text-foreground",
|
|
15085
15112
|
children: [
|
|
15086
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
15087
|
-
icon: "lucide:play",
|
|
15088
|
-
width: 46
|
|
15089
|
-
}),
|
|
15113
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Play, { size: 46 }),
|
|
15090
15114
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "剧集列表" }),
|
|
15091
15115
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Chip, {
|
|
15092
15116
|
size: "lg",
|
|
@@ -15144,10 +15168,7 @@ var BangumiBilibiliEpisodes = (props) => {
|
|
|
15144
15168
|
children: props.UPInfo ? props.UPInfo.uname : props.Title
|
|
15145
15169
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
15146
15170
|
className: "flex gap-4 items-center text-3xl select-text text-foreground/70",
|
|
15147
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
15148
|
-
icon: "lucide:calendar",
|
|
15149
|
-
width: 30
|
|
15150
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "发布了内容" })]
|
|
15171
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Calendar, { size: 30 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "发布了内容" })]
|
|
15151
15172
|
})]
|
|
15152
15173
|
})]
|
|
15153
15174
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -15193,30 +15214,21 @@ var BangumiBilibiliEpisodes = (props) => {
|
|
|
15193
15214
|
children: [
|
|
15194
15215
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
15195
15216
|
className: "flex gap-6 items-center select-text text-foreground/70",
|
|
15196
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
15197
|
-
icon: "lucide:hash",
|
|
15198
|
-
width: 36
|
|
15199
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
15217
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { size: 36 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
15200
15218
|
className: "truncate",
|
|
15201
15219
|
children: episode.bvid
|
|
15202
15220
|
})]
|
|
15203
15221
|
}),
|
|
15204
15222
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
15205
15223
|
className: "flex gap-6 items-center select-text text-foreground/70",
|
|
15206
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
15207
|
-
icon: "lucide:clock",
|
|
15208
|
-
width: 36
|
|
15209
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
15224
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 36 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
15210
15225
|
className: "whitespace-nowrap",
|
|
15211
15226
|
children: formatDateTime(episode.pub_time)
|
|
15212
15227
|
})]
|
|
15213
15228
|
}),
|
|
15214
15229
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
15215
15230
|
className: "flex gap-6 items-center select-text text-foreground/70",
|
|
15216
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
15217
|
-
icon: "lucide:share-2",
|
|
15218
|
-
width: 36
|
|
15219
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
15231
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Share2, { size: 36 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
15220
15232
|
className: "truncate",
|
|
15221
15233
|
children: episode.link
|
|
15222
15234
|
})]
|
|
@@ -15977,6 +15989,31 @@ var CoinIcon = ({ className, size, variant = "solid" }) => {
|
|
|
15977
15989
|
})
|
|
15978
15990
|
});
|
|
15979
15991
|
};
|
|
15992
|
+
/** B站官方评论图标 */
|
|
15993
|
+
var CommentIcon = ({ className, size, variant = "solid" }) => {
|
|
15994
|
+
if (variant === "line") return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", {
|
|
15995
|
+
viewBox: "0 0 18 18",
|
|
15996
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
15997
|
+
className,
|
|
15998
|
+
fill: "currentColor",
|
|
15999
|
+
width: size,
|
|
16000
|
+
height: size,
|
|
16001
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
16002
|
+
fillRule: "evenodd",
|
|
16003
|
+
clipRule: "evenodd",
|
|
16004
|
+
d: "M1.5625 7.875C1.5625 4.59581 4.22081 1.9375 7.5 1.9375H10.5C13.7792 1.9375 16.4375 4.59581 16.4375 7.875C16.4375 11.0504 13.9447 13.6435 10.8093 13.8041C10.097 14.723 8.92088 15.8807 7.2671 16.3313C6.97351 16.4113 6.70476 16.2862 6.55411 16.0923C6.40789 15.9041 6.3561 15.63435 6.46524 15.383C6.72879 14.77625 6.77646 14.22103 6.73402 13.7618C3.81677 13.3871 1.5625 10.8945 1.5625 7.875ZM7.5 2.9375C4.77309 2.9375 2.5625 5.14809 2.5625 7.875C2.5625 10.5026 4.61524 12.6511 7.20419 12.8038C7.43059 12.8172 7.61962 12.9812 7.66472 13.2035C7.77257 13.7346 7.8012 14.4054 7.58843 15.1484C8.74832 14.6682 9.606 13.7598 10.1513 13.0165C10.2444 12.8895 10.3921 12.8138 10.5496 12.8123C13.2536 12.7857 15.4375 10.58535 15.4375 7.875C15.4375 5.14809 13.2269 2.9375 10.5 2.9375H7.5Z"
|
|
16005
|
+
})
|
|
16006
|
+
});
|
|
16007
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", {
|
|
16008
|
+
viewBox: "0 0 18 18",
|
|
16009
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
16010
|
+
className,
|
|
16011
|
+
fill: "currentColor",
|
|
16012
|
+
width: size,
|
|
16013
|
+
height: size,
|
|
16014
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M1.5625 7.875C1.5625 4.59581 4.22081 1.9375 7.5 1.9375H10.5C13.7792 1.9375 16.4375 4.59581 16.4375 7.875C16.4375 11.0504 13.9447 13.6435 10.8093 13.8041C10.097 14.723 8.92088 15.8807 7.2671 16.3313C6.97351 16.4113 6.70476 16.2862 6.55411 16.0923C6.40789 15.9041 6.3561 15.63435 6.46524 15.383C6.72879 14.77625 6.77646 14.22103 6.73402 13.7618C3.81677 13.3871 1.5625 10.8945 1.5625 7.875Z" })
|
|
16015
|
+
});
|
|
16016
|
+
};
|
|
15980
16017
|
//#endregion
|
|
15981
16018
|
//#region ../template/src/components/platforms/bilibili/Comment.tsx
|
|
15982
16019
|
var bilibiliMentionClassName = "text-[#006A9E] dark:text-[#58B0D5]";
|
|
@@ -16616,10 +16653,7 @@ var BilibiliArticleUserInfo = import_react.memo((props) => {
|
|
|
16616
16653
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsernameDisplay, { metadata: props.data.usernameMeta })
|
|
16617
16654
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
16618
16655
|
className: "flex gap-2 items-center text-4xl font-normal whitespace-nowrap text-muted",
|
|
16619
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
16620
|
-
icon: "mingcute:time-fill",
|
|
16621
|
-
width: 36
|
|
16622
|
-
}), props.data.create_time]
|
|
16656
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 36 }), props.data.create_time]
|
|
16623
16657
|
})]
|
|
16624
16658
|
})]
|
|
16625
16659
|
}), props.data.decoration_card && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -16704,10 +16738,7 @@ var BilibiliArticleStatus = import_react.memo((props) => {
|
|
|
16704
16738
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
16705
16739
|
className: "flex gap-3 items-center text-[42px]",
|
|
16706
16740
|
children: [
|
|
16707
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
16708
|
-
icon: "mingcute:comment-2-fill",
|
|
16709
|
-
width: 32
|
|
16710
|
-
}),
|
|
16741
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CommentIcon, { size: 32 }),
|
|
16711
16742
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
16712
16743
|
className: "font-medium",
|
|
16713
16744
|
children: props.data.stats.reply || 0
|
|
@@ -16739,10 +16770,7 @@ var BilibiliArticleStatus = import_react.memo((props) => {
|
|
|
16739
16770
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
16740
16771
|
className: "flex gap-2 items-center",
|
|
16741
16772
|
children: [
|
|
16742
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
16743
|
-
icon: "mingcute:eye-fill",
|
|
16744
|
-
width: 28
|
|
16745
|
-
}),
|
|
16773
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, { size: 28 }),
|
|
16746
16774
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
16747
16775
|
className: "font-medium",
|
|
16748
16776
|
children: "阅读量"
|
|
@@ -16756,10 +16784,7 @@ var BilibiliArticleStatus = import_react.memo((props) => {
|
|
|
16756
16784
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
16757
16785
|
className: "flex gap-2 items-center",
|
|
16758
16786
|
children: [
|
|
16759
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
16760
|
-
icon: "mingcute:bookmark-fill",
|
|
16761
|
-
width: 28
|
|
16762
|
-
}),
|
|
16787
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Bookmark, { size: 28 }),
|
|
16763
16788
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
16764
16789
|
className: "font-medium",
|
|
16765
16790
|
children: "收藏"
|
|
@@ -16817,10 +16842,7 @@ var BilibiliArticleFooter = import_react.memo((props) => {
|
|
|
16817
16842
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsernameDisplay, { metadata: props.data.usernameMeta })
|
|
16818
16843
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
16819
16844
|
className: "flex gap-2 items-center text-4xl text-muted",
|
|
16820
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
16821
|
-
icon: "mingcute:hashtag-fill",
|
|
16822
|
-
width: 32
|
|
16823
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
16845
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { size: 32 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
16824
16846
|
className: "select-text",
|
|
16825
16847
|
children: ["UID: ", props.data.user_shortid]
|
|
16826
16848
|
})]
|
|
@@ -16851,10 +16873,7 @@ var BilibiliArticleFooter = import_react.memo((props) => {
|
|
|
16851
16873
|
children: [
|
|
16852
16874
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
16853
16875
|
className: "flex gap-1 items-center",
|
|
16854
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
16855
|
-
icon: "mingcute:eye-fill",
|
|
16856
|
-
width: 28
|
|
16857
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
16876
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
16858
16877
|
className: "text-muted",
|
|
16859
16878
|
children: "关注"
|
|
16860
16879
|
})]
|
|
@@ -16871,10 +16890,7 @@ var BilibiliArticleFooter = import_react.memo((props) => {
|
|
|
16871
16890
|
children: [
|
|
16872
16891
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
16873
16892
|
className: "flex gap-1 items-center",
|
|
16874
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
16875
|
-
icon: "mingcute:group-fill",
|
|
16876
|
-
width: 28
|
|
16877
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
16893
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsersRound, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
16878
16894
|
className: "text-muted",
|
|
16879
16895
|
children: "粉丝"
|
|
16880
16896
|
})]
|
|
@@ -17013,10 +17029,7 @@ var BilibiliVideoDynamicContent = (props) => {
|
|
|
17013
17029
|
}),
|
|
17014
17030
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17015
17031
|
className: "flex gap-3 items-center",
|
|
17016
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17017
|
-
icon: "mingcute:comment-2-fill",
|
|
17018
|
-
width: 48
|
|
17019
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17032
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CommentIcon, { size: 48 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17020
17033
|
className: "select-text",
|
|
17021
17034
|
children: [props.data.pinglun, "评论"]
|
|
17022
17035
|
})]
|
|
@@ -17041,20 +17054,14 @@ var BilibiliVideoDynamicContent = (props) => {
|
|
|
17041
17054
|
}),
|
|
17042
17055
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17043
17056
|
className: "flex gap-3 items-center",
|
|
17044
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17045
|
-
icon: "mingcute:eye-fill",
|
|
17046
|
-
width: 48
|
|
17047
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17057
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, { size: 48 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17048
17058
|
className: "select-text",
|
|
17049
17059
|
children: [props.data.view, "浏览"]
|
|
17050
17060
|
})]
|
|
17051
17061
|
}),
|
|
17052
17062
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17053
17063
|
className: "flex gap-3 items-center text-5xl font-light tracking-normal",
|
|
17054
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17055
|
-
icon: "mingcute:time-fill",
|
|
17056
|
-
width: 48
|
|
17057
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17064
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 48 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17058
17065
|
className: "select-text",
|
|
17059
17066
|
children: ["视频时长: ", props.data.duration_text]
|
|
17060
17067
|
})]
|
|
@@ -17066,27 +17073,18 @@ var BilibiliVideoDynamicContent = (props) => {
|
|
|
17066
17073
|
children: [
|
|
17067
17074
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17068
17075
|
className: "flex gap-3 items-center whitespace-nowrap",
|
|
17069
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17070
|
-
icon: "mingcute:time-fill",
|
|
17071
|
-
width: 32
|
|
17072
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17076
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 32 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17073
17077
|
className: "select-text",
|
|
17074
17078
|
children: ["发布于", props.data.create_time]
|
|
17075
17079
|
})]
|
|
17076
17080
|
}),
|
|
17077
17081
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17078
17082
|
className: "flex gap-3 items-center whitespace-nowrap",
|
|
17079
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17080
|
-
icon: "mingcute:time-fill",
|
|
17081
|
-
width: 32
|
|
17082
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
17083
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 32 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
17083
17084
|
}),
|
|
17084
17085
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17085
17086
|
className: "flex gap-3 items-center",
|
|
17086
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17087
|
-
icon: "mingcute:hashtag-fill",
|
|
17088
|
-
width: 32
|
|
17089
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17087
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { size: 32 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
17090
17088
|
className: "select-text",
|
|
17091
17089
|
children: ["动态ID: ", props.data.dynamic_id]
|
|
17092
17090
|
})]
|
|
@@ -17198,10 +17196,7 @@ var BilibiliVideoDynamicFooter = (props) => {
|
|
|
17198
17196
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17199
17197
|
className: "flex gap-2 items-center text-4xl text-muted",
|
|
17200
17198
|
children: [
|
|
17201
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17202
|
-
icon: "mingcute:hashtag-fill",
|
|
17203
|
-
width: 32
|
|
17204
|
-
}),
|
|
17199
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { size: 32 }),
|
|
17205
17200
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["UID: ", props.data.user_shortid] }),
|
|
17206
17201
|
currentUserRole && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17207
17202
|
className: "ml-5 px-3 py-1 rounded-xl bg-surface-secondary text-3xl",
|
|
@@ -17235,10 +17230,7 @@ var BilibiliVideoDynamicFooter = (props) => {
|
|
|
17235
17230
|
children: [
|
|
17236
17231
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17237
17232
|
className: "flex gap-1 items-center",
|
|
17238
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17239
|
-
icon: "mingcute:eye-fill",
|
|
17240
|
-
width: 28
|
|
17241
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17233
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17242
17234
|
className: "text-muted",
|
|
17243
17235
|
children: "关注"
|
|
17244
17236
|
})]
|
|
@@ -17255,10 +17247,7 @@ var BilibiliVideoDynamicFooter = (props) => {
|
|
|
17255
17247
|
children: [
|
|
17256
17248
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17257
17249
|
className: "flex gap-1 items-center",
|
|
17258
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17259
|
-
icon: "mingcute:group-fill",
|
|
17260
|
-
width: 28
|
|
17261
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17250
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsersRound, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17262
17251
|
className: "text-muted",
|
|
17263
17252
|
children: "粉丝"
|
|
17264
17253
|
})]
|
|
@@ -17336,9 +17325,8 @@ var BilibiliReserveCard = ({ reserve }) => {
|
|
|
17336
17325
|
}),
|
|
17337
17326
|
reserve.desc3 && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17338
17327
|
className: "flex gap-2 items-center text-4xl select-text leading-none text-[#fb7299]",
|
|
17339
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17340
|
-
|
|
17341
|
-
width: 40,
|
|
17328
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Gift, {
|
|
17329
|
+
size: 40,
|
|
17342
17330
|
className: "shrink-0"
|
|
17343
17331
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17344
17332
|
className: "line-clamp-1",
|
|
@@ -17350,10 +17338,7 @@ var BilibiliReserveCard = ({ reserve }) => {
|
|
|
17350
17338
|
className: "shrink-0",
|
|
17351
17339
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Button, {
|
|
17352
17340
|
className: `text-5xl font-normal px-8 py-5 h-auto min-w-0 ${reserve.buttonText === "已结束" ? "bg-surface-secondary/70 text-muted" : "bg-[#fb7299] text-white"}`,
|
|
17353
|
-
children: [reserve.buttonText !== "已结束" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17354
|
-
icon: "mingcute:bell-fill",
|
|
17355
|
-
className: "scale-180 mr-4"
|
|
17356
|
-
}), reserve.buttonText]
|
|
17341
|
+
children: [reserve.buttonText !== "已结束" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BellRing, { className: "scale-180 mr-4" }), reserve.buttonText]
|
|
17357
17342
|
})
|
|
17358
17343
|
})]
|
|
17359
17344
|
})
|
|
@@ -17372,10 +17357,7 @@ var BilibiliVoteCard = ({ vote }) => {
|
|
|
17372
17357
|
children: [
|
|
17373
17358
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
17374
17359
|
className: "shrink-0",
|
|
17375
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17376
|
-
icon: "mingcute:chart-bar-fill",
|
|
17377
|
-
width: 56
|
|
17378
|
-
})
|
|
17360
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChartColumn, { size: 56 })
|
|
17379
17361
|
}),
|
|
17380
17362
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17381
17363
|
className: "flex flex-col gap-3 flex-1 min-w-0",
|
|
@@ -17411,10 +17393,7 @@ var BilibiliCommonCard = ({ common }) => {
|
|
|
17411
17393
|
className: "flex flex-col gap-4",
|
|
17412
17394
|
children: [common.head_text && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17413
17395
|
className: "flex gap-2 items-center text-4xl text-muted",
|
|
17414
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17415
|
-
icon: "mingcute:gamepad-fill",
|
|
17416
|
-
width: 40
|
|
17417
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: common.head_text })]
|
|
17396
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Gamepad2, { size: 40 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: common.head_text })]
|
|
17418
17397
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
17419
17398
|
className: "overflow-hidden rounded-4xl bg-surface",
|
|
17420
17399
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
@@ -17539,10 +17518,7 @@ var BilibiliDynamicUserInfo$1 = (props) => {
|
|
|
17539
17518
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsernameDisplay, { metadata: props.usernameMeta })
|
|
17540
17519
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17541
17520
|
className: "flex gap-2 items-center text-4xl font-normal whitespace-nowrap text-muted",
|
|
17542
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17543
|
-
icon: "mingcute:time-fill",
|
|
17544
|
-
width: 36
|
|
17545
|
-
}), props.create_time]
|
|
17521
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 36 }), props.create_time]
|
|
17546
17522
|
})]
|
|
17547
17523
|
})]
|
|
17548
17524
|
}), props.decoration_card && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -17701,10 +17677,7 @@ var BilibiliDynamicStatus$1 = (props) => {
|
|
|
17701
17677
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17702
17678
|
className: "flex gap-2 items-center",
|
|
17703
17679
|
children: [
|
|
17704
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17705
|
-
icon: "mingcute:comment-2-fill",
|
|
17706
|
-
width: 48
|
|
17707
|
-
}),
|
|
17680
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CommentIcon, { size: 48 }),
|
|
17708
17681
|
props.pinglun,
|
|
17709
17682
|
"评论"
|
|
17710
17683
|
]
|
|
@@ -17723,10 +17696,7 @@ var BilibiliDynamicStatus$1 = (props) => {
|
|
|
17723
17696
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17724
17697
|
className: "flex gap-2 items-center text-5xl font-light tracking-normal select-text text-foreground/70",
|
|
17725
17698
|
children: [
|
|
17726
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17727
|
-
icon: "mingcute:time-fill",
|
|
17728
|
-
width: 48
|
|
17729
|
-
}),
|
|
17699
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 48 }),
|
|
17730
17700
|
"图片生成于: ",
|
|
17731
17701
|
props.render_time
|
|
17732
17702
|
]
|
|
@@ -17795,10 +17765,7 @@ var BilibiliDynamicFooter$1 = (props) => {
|
|
|
17795
17765
|
children: [
|
|
17796
17766
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17797
17767
|
className: "flex gap-1 items-center",
|
|
17798
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17799
|
-
icon: "mingcute:eye-fill",
|
|
17800
|
-
width: 28
|
|
17801
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17768
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17802
17769
|
className: "text-muted",
|
|
17803
17770
|
children: "关注"
|
|
17804
17771
|
})]
|
|
@@ -17815,10 +17782,7 @@ var BilibiliDynamicFooter$1 = (props) => {
|
|
|
17815
17782
|
children: [
|
|
17816
17783
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17817
17784
|
className: "flex gap-1 items-center",
|
|
17818
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17819
|
-
icon: "mingcute:group-fill",
|
|
17820
|
-
width: 28
|
|
17821
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17785
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsersRound, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
17822
17786
|
className: "text-muted",
|
|
17823
17787
|
children: "粉丝"
|
|
17824
17788
|
})]
|
|
@@ -17926,10 +17890,7 @@ var BilibiliForwardUserInfo = (props) => {
|
|
|
17926
17890
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsernameDisplay, { metadata: props.usernameMeta })
|
|
17927
17891
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17928
17892
|
className: "flex gap-2 items-center text-4xl font-normal whitespace-nowrap text-muted",
|
|
17929
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17930
|
-
icon: "mingcute:time-fill",
|
|
17931
|
-
width: 36
|
|
17932
|
-
}), props.create_time]
|
|
17893
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 36 }), props.create_time]
|
|
17933
17894
|
})]
|
|
17934
17895
|
})]
|
|
17935
17896
|
}), props.decoration_card && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -17964,10 +17925,7 @@ var OriginalUserInfo = (props) => {
|
|
|
17964
17925
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsernameDisplay, { metadata: props.usernameMeta })
|
|
17965
17926
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
17966
17927
|
className: "flex gap-2 items-center text-4xl font-normal whitespace-nowrap text-muted",
|
|
17967
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
17968
|
-
icon: "mingcute:time-fill",
|
|
17969
|
-
width: 32
|
|
17970
|
-
}), props.create_time]
|
|
17928
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 32 }), props.create_time]
|
|
17971
17929
|
})]
|
|
17972
17930
|
})]
|
|
17973
17931
|
}), props.decoration_card && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -18257,10 +18215,7 @@ var BilibiliForwardStatus = (props) => {
|
|
|
18257
18215
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
18258
18216
|
className: "flex gap-2 items-center",
|
|
18259
18217
|
children: [
|
|
18260
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
18261
|
-
icon: "mingcute:comment-2-fill",
|
|
18262
|
-
width: 48
|
|
18263
|
-
}),
|
|
18218
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CommentIcon, { size: 48 }),
|
|
18264
18219
|
props.pinglun,
|
|
18265
18220
|
"评论"
|
|
18266
18221
|
]
|
|
@@ -18279,10 +18234,7 @@ var BilibiliForwardStatus = (props) => {
|
|
|
18279
18234
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
18280
18235
|
className: "flex gap-2 items-center text-5xl font-light tracking-normal select-text text-foreground/70",
|
|
18281
18236
|
children: [
|
|
18282
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
18283
|
-
icon: "mingcute:time-fill",
|
|
18284
|
-
width: 48
|
|
18285
|
-
}),
|
|
18237
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 48 }),
|
|
18286
18238
|
"图片生成于: ",
|
|
18287
18239
|
props.render_time
|
|
18288
18240
|
]
|
|
@@ -18320,10 +18272,7 @@ var BilibiliForwardFooter = (props) => {
|
|
|
18320
18272
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsernameDisplay, { metadata: props.usernameMeta })
|
|
18321
18273
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
18322
18274
|
className: "flex gap-2 items-center text-4xl text-muted",
|
|
18323
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
18324
|
-
icon: "mingcute:hashtag-fill",
|
|
18325
|
-
width: 32
|
|
18326
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
18275
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { size: 32 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
18327
18276
|
className: "select-text",
|
|
18328
18277
|
children: ["UID: ", props.user_shortid]
|
|
18329
18278
|
})]
|
|
@@ -18354,10 +18303,7 @@ var BilibiliForwardFooter = (props) => {
|
|
|
18354
18303
|
children: [
|
|
18355
18304
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
18356
18305
|
className: "flex gap-1 items-center",
|
|
18357
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
18358
|
-
icon: "mingcute:eye-fill",
|
|
18359
|
-
width: 28
|
|
18360
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
18306
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
18361
18307
|
className: "text-muted",
|
|
18362
18308
|
children: "关注"
|
|
18363
18309
|
})]
|
|
@@ -18374,10 +18320,7 @@ var BilibiliForwardFooter = (props) => {
|
|
|
18374
18320
|
children: [
|
|
18375
18321
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
18376
18322
|
className: "flex gap-1 items-center",
|
|
18377
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
18378
|
-
icon: "mingcute:group-fill",
|
|
18379
|
-
width: 28
|
|
18380
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
18323
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsersRound, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
18381
18324
|
className: "text-muted",
|
|
18382
18325
|
children: "粉丝"
|
|
18383
18326
|
})]
|
|
@@ -18773,10 +18716,7 @@ var BilibiliLiveDynamic = import_react.memo((props) => {
|
|
|
18773
18716
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
18774
18717
|
className: "mt-5 inline-flex items-center gap-3 font-black",
|
|
18775
18718
|
style: { color: deepColor },
|
|
18776
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
18777
|
-
icon: "mingcute:group-fill",
|
|
18778
|
-
width: 22
|
|
18779
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
18719
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsersRound, { size: 22 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
18780
18720
|
className: "select-text",
|
|
18781
18721
|
style: { fontSize: `${followerFontSize}px` },
|
|
18782
18722
|
children: [data.fans, " 粉丝"]
|
|
@@ -18808,10 +18748,7 @@ var BilibiliLiveDynamic = import_react.memo((props) => {
|
|
|
18808
18748
|
children: [
|
|
18809
18749
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
18810
18750
|
className: "inline-flex min-w-0 items-center gap-3",
|
|
18811
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
18812
|
-
icon: "mingcute:radio-fill",
|
|
18813
|
-
width: 20
|
|
18814
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
18751
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Radio, { size: 20 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
18815
18752
|
className: "min-w-0 whitespace-normal leading-[1.18] select-text",
|
|
18816
18753
|
style: { fontSize: `${liveInfoFontSize}px` },
|
|
18817
18754
|
children: data.liveinf
|
|
@@ -18823,10 +18760,7 @@ var BilibiliLiveDynamic = import_react.memo((props) => {
|
|
|
18823
18760
|
}),
|
|
18824
18761
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
18825
18762
|
className: "inline-flex items-center gap-3 whitespace-nowrap font-mono",
|
|
18826
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
18827
|
-
icon: "mingcute:time-fill",
|
|
18828
|
-
width: 20
|
|
18829
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
18763
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 20 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
18830
18764
|
className: "select-text",
|
|
18831
18765
|
children: liveSignalTime
|
|
18832
18766
|
})]
|
|
@@ -19021,10 +18955,7 @@ var BilibiliDynamicUserInfo = (props) => {
|
|
|
19021
18955
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsernameDisplay, { metadata: props.usernameMeta })
|
|
19022
18956
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19023
18957
|
className: "flex gap-2 items-center text-4xl font-normal whitespace-nowrap text-muted",
|
|
19024
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19025
|
-
icon: "mingcute:time-fill",
|
|
19026
|
-
width: 36
|
|
19027
|
-
}), props.create_time]
|
|
18958
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 36 }), props.create_time]
|
|
19028
18959
|
})]
|
|
19029
18960
|
})]
|
|
19030
18961
|
}), props.decoration_card && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -19078,10 +19009,7 @@ var BilibiliDynamicStatus = (props) => {
|
|
|
19078
19009
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19079
19010
|
className: "flex gap-2 items-center",
|
|
19080
19011
|
children: [
|
|
19081
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19082
|
-
icon: "mingcute:comment-2-fill",
|
|
19083
|
-
width: 48
|
|
19084
|
-
}),
|
|
19012
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CommentIcon, { size: 48 }),
|
|
19085
19013
|
props.pinglun,
|
|
19086
19014
|
"评论"
|
|
19087
19015
|
]
|
|
@@ -19100,10 +19028,7 @@ var BilibiliDynamicStatus = (props) => {
|
|
|
19100
19028
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19101
19029
|
className: "flex gap-2 items-center text-5xl font-light tracking-normal select-text text-foreground/70",
|
|
19102
19030
|
children: [
|
|
19103
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19104
|
-
icon: "mingcute:time-fill",
|
|
19105
|
-
width: 48
|
|
19106
|
-
}),
|
|
19031
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { size: 48 }),
|
|
19107
19032
|
"图片生成于: ",
|
|
19108
19033
|
props.render_time
|
|
19109
19034
|
]
|
|
@@ -19172,10 +19097,7 @@ var BilibiliDynamicFooter = (props) => {
|
|
|
19172
19097
|
children: [
|
|
19173
19098
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19174
19099
|
className: "flex gap-1 items-center",
|
|
19175
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19176
|
-
icon: "mingcute:eye-fill",
|
|
19177
|
-
width: 28
|
|
19178
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19100
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19179
19101
|
className: "text-muted",
|
|
19180
19102
|
children: "关注"
|
|
19181
19103
|
})]
|
|
@@ -19192,10 +19114,7 @@ var BilibiliDynamicFooter = (props) => {
|
|
|
19192
19114
|
children: [
|
|
19193
19115
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19194
19116
|
className: "flex gap-1 items-center",
|
|
19195
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19196
|
-
icon: "mingcute:group-fill",
|
|
19197
|
-
width: 28
|
|
19198
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19117
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UsersRound, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19199
19118
|
className: "text-muted",
|
|
19200
19119
|
children: "粉丝"
|
|
19201
19120
|
})]
|
|
@@ -19380,44 +19299,35 @@ var BilibiliQrcodeImg = import_react.memo((props) => {
|
|
|
19380
19299
|
className: "flex flex-col items-center gap-4",
|
|
19381
19300
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
19382
19301
|
className: "p-5 rounded-3xl bg-surface/50 backdrop-blur-md",
|
|
19383
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19384
|
-
icon: "simple-icons:bilibili",
|
|
19385
|
-
className: "w-16 h-16"
|
|
19386
|
-
})
|
|
19302
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SiBilibili, { size: 64 })
|
|
19387
19303
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19388
19304
|
className: "text-[28px] font-medium tracking-wide",
|
|
19389
19305
|
children: "打开哔哩哔哩"
|
|
19390
19306
|
})]
|
|
19391
19307
|
}),
|
|
19392
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19393
|
-
|
|
19394
|
-
className: "
|
|
19308
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiArrowRightFill, {
|
|
19309
|
+
size: 40,
|
|
19310
|
+
className: "mt-8 opacity-40"
|
|
19395
19311
|
}),
|
|
19396
19312
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19397
19313
|
className: "flex flex-col items-center gap-4",
|
|
19398
19314
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
19399
19315
|
className: "p-5 rounded-3xl bg-surface/50 backdrop-blur-md",
|
|
19400
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19401
|
-
icon: "lucide:user",
|
|
19402
|
-
className: "w-16 h-16"
|
|
19403
|
-
})
|
|
19316
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(User, { size: 64 })
|
|
19404
19317
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19405
19318
|
className: "text-[28px] font-medium tracking-wide",
|
|
19406
19319
|
children: "点击我的"
|
|
19407
19320
|
})]
|
|
19408
19321
|
}),
|
|
19409
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19410
|
-
|
|
19411
|
-
className: "
|
|
19322
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiArrowRightFill, {
|
|
19323
|
+
size: 40,
|
|
19324
|
+
className: "mt-8 opacity-40"
|
|
19412
19325
|
}),
|
|
19413
19326
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19414
19327
|
className: "flex flex-col items-center gap-4",
|
|
19415
19328
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
19416
19329
|
className: "p-5 rounded-3xl bg-surface/50 backdrop-blur-md",
|
|
19417
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19418
|
-
icon: "lucide:scan-line",
|
|
19419
|
-
className: "w-16 h-16"
|
|
19420
|
-
})
|
|
19330
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ScanLine, { size: 64 })
|
|
19421
19331
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19422
19332
|
className: "text-[28px] font-medium tracking-wide",
|
|
19423
19333
|
children: "右上角扫一扫"
|
|
@@ -19467,9 +19377,8 @@ var BilibiliQrcodeImg = import_react.memo((props) => {
|
|
|
19467
19377
|
children: [
|
|
19468
19378
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
19469
19379
|
className: "flex items-center justify-center w-16 h-16 mb-2",
|
|
19470
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19471
|
-
|
|
19472
|
-
className: "w-16 h-16",
|
|
19380
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TriangleAlert, {
|
|
19381
|
+
size: 64,
|
|
19473
19382
|
style: { color: theme.text },
|
|
19474
19383
|
strokeWidth: 1.5
|
|
19475
19384
|
})
|
|
@@ -19498,33 +19407,33 @@ BilibiliQrcodeImg.displayName = "BilibiliQrcodeImg";
|
|
|
19498
19407
|
var pushTypeConfig$1 = {
|
|
19499
19408
|
video: {
|
|
19500
19409
|
label: "投稿视频",
|
|
19501
|
-
color: "bg-accent/
|
|
19502
|
-
icon:
|
|
19410
|
+
color: "bg-accent/6 text-accent/80 border-accent-soft",
|
|
19411
|
+
icon: Video
|
|
19503
19412
|
},
|
|
19504
19413
|
draw: {
|
|
19505
19414
|
label: "图文动态",
|
|
19506
|
-
color: "bg-[#23ade5]/
|
|
19507
|
-
icon:
|
|
19415
|
+
color: "bg-[#23ade5]/5 text-[#1a8fb8] border-[#23ade5]/12",
|
|
19416
|
+
icon: Image$1
|
|
19508
19417
|
},
|
|
19509
19418
|
word: {
|
|
19510
19419
|
label: "纯文动态",
|
|
19511
|
-
color: "bg-warning/
|
|
19512
|
-
icon:
|
|
19420
|
+
color: "bg-warning/5 text-warning/80 border-warning/12",
|
|
19421
|
+
icon: FileText
|
|
19513
19422
|
},
|
|
19514
19423
|
live: {
|
|
19515
19424
|
label: "直播动态",
|
|
19516
|
-
color: "bg-success/
|
|
19517
|
-
icon:
|
|
19425
|
+
color: "bg-success/5 text-success/80 border-success/12",
|
|
19426
|
+
icon: Radio
|
|
19518
19427
|
},
|
|
19519
19428
|
forward: {
|
|
19520
19429
|
label: "转发动态",
|
|
19521
|
-
color: "bg-[#f97316]/
|
|
19522
|
-
icon:
|
|
19430
|
+
color: "bg-[#f97316]/5 text-[#cc6b1f] border-[#f97316]/12",
|
|
19431
|
+
icon: Share2
|
|
19523
19432
|
},
|
|
19524
19433
|
article: {
|
|
19525
19434
|
label: "投稿专栏",
|
|
19526
|
-
color: "bg-[#7c3aed]/
|
|
19527
|
-
icon:
|
|
19435
|
+
color: "bg-[#7c3aed]/5 text-[#6b4fa8] border-[#7c3aed]/12",
|
|
19436
|
+
icon: FileText
|
|
19528
19437
|
}
|
|
19529
19438
|
};
|
|
19530
19439
|
/**
|
|
@@ -19622,9 +19531,9 @@ var BilibiliUserItem = (props) => {
|
|
|
19622
19531
|
className: "flex items-center gap-2 mt-1",
|
|
19623
19532
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
19624
19533
|
className: "px-2 py-0.5 rounded-md bg-surface border border-border text-xs font-mono font-bold text-muted flex items-center gap-1",
|
|
19625
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19626
|
-
|
|
19627
|
-
className: "
|
|
19534
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, {
|
|
19535
|
+
size: 12,
|
|
19536
|
+
className: "opacity-70"
|
|
19628
19537
|
}), props.host_mid]
|
|
19629
19538
|
})
|
|
19630
19539
|
})] })
|
|
@@ -19637,9 +19546,9 @@ var BilibiliUserItem = (props) => {
|
|
|
19637
19546
|
const isActive = activePushTypes.has(type);
|
|
19638
19547
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19639
19548
|
className: `h-full min-h-18.5 px-2.5 py-2.5 rounded-xl border backdrop-blur-sm flex flex-col justify-between transition-colors duration-200 ${isActive ? config.color : "bg-surface/45 text-muted border-border/15"}`,
|
|
19640
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19641
|
-
|
|
19642
|
-
className:
|
|
19549
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(config.icon, {
|
|
19550
|
+
size: 18,
|
|
19551
|
+
className: isActive ? "" : "opacity-40"
|
|
19643
19552
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19644
19553
|
className: "text-[13px] font-bold tracking-wide leading-tight",
|
|
19645
19554
|
children: config.label
|
|
@@ -19650,26 +19559,27 @@ var BilibiliUserItem = (props) => {
|
|
|
19650
19559
|
className: "grid grid-rows-3 gap-2 h-full",
|
|
19651
19560
|
children: [
|
|
19652
19561
|
{
|
|
19653
|
-
icon:
|
|
19562
|
+
icon: UsersRound,
|
|
19654
19563
|
value: props.fans,
|
|
19655
19564
|
label: "粉丝"
|
|
19656
19565
|
},
|
|
19657
19566
|
{
|
|
19658
|
-
icon:
|
|
19567
|
+
icon: Heart,
|
|
19659
19568
|
value: props.total_favorited,
|
|
19660
19569
|
label: "获赞"
|
|
19661
19570
|
},
|
|
19662
19571
|
{
|
|
19663
|
-
icon:
|
|
19572
|
+
icon: UserPlus,
|
|
19664
19573
|
value: props.following_count,
|
|
19665
19574
|
label: "关注"
|
|
19666
19575
|
}
|
|
19667
19576
|
].map((item, index) => {
|
|
19577
|
+
const StatIcon = item.icon;
|
|
19668
19578
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19669
19579
|
className: "h-full flex items-center gap-3 px-3.5 py-2.5 rounded-xl bg-surface-secondary/35 border border-border/35 backdrop-blur-sm",
|
|
19670
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19671
|
-
|
|
19672
|
-
className: "
|
|
19580
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatIcon, {
|
|
19581
|
+
size: 18,
|
|
19582
|
+
className: "text-muted shrink-0"
|
|
19673
19583
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19674
19584
|
className: "flex items-baseline gap-2 flex-1 min-w-0",
|
|
19675
19585
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -19807,12 +19717,11 @@ var BilibiliUserList = (props) => {
|
|
|
19807
19717
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19808
19718
|
className: "flex items-center gap-3 mb-4",
|
|
19809
19719
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
19810
|
-
className: "w-10 h-10 rounded-xl
|
|
19811
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19812
|
-
|
|
19813
|
-
|
|
19814
|
-
|
|
19815
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-4.41-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm-5.5-2.5l7.51-3.49L17.5 6.5 9.99 9.99 6.5 17.5zm5.5-6.6c.61 0 1.1.49 1.1 1.1s-.49 1.1-1.1 1.1-1.1-.49-1.1-1.1.49-1.1 1.1-1.1z" })
|
|
19720
|
+
className: "w-10 h-10 rounded-xl overflow-hidden shadow-lg border border-border/30",
|
|
19721
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(EnhancedImage, {
|
|
19722
|
+
src: props.data.groupInfo.groupAvatar,
|
|
19723
|
+
alt: "Group Avatar",
|
|
19724
|
+
className: "w-full h-full object-cover"
|
|
19816
19725
|
})
|
|
19817
19726
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
19818
19727
|
className: "font-mono text-sm font-bold tracking-widest uppercase opacity-50 text-foreground",
|
|
@@ -19992,9 +19901,8 @@ var BilibiliVideoInfo = import_react.memo((props) => {
|
|
|
19992
19901
|
children: [
|
|
19993
19902
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
19994
19903
|
className: "flex items-center gap-2",
|
|
19995
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
19996
|
-
|
|
19997
|
-
width: 32,
|
|
19904
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Calendar, {
|
|
19905
|
+
size: 32,
|
|
19998
19906
|
className: "text-foreground/20"
|
|
19999
19907
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: format(fromUnixTime(props.data.ctime), "yyyy-MM-dd HH:mm") })]
|
|
20000
19908
|
}),
|
|
@@ -20007,9 +19915,9 @@ var BilibiliVideoInfo = import_react.memo((props) => {
|
|
|
20007
19915
|
}),
|
|
20008
19916
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20009
19917
|
className: "flex items-center gap-1.5",
|
|
20010
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20011
|
-
|
|
20012
|
-
|
|
19918
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CommentIcon, {
|
|
19919
|
+
variant: "line",
|
|
19920
|
+
size: 28,
|
|
20013
19921
|
className: "text-foreground/20"
|
|
20014
19922
|
}), formatNumber$2(props.data.stat.reply)]
|
|
20015
19923
|
})
|
|
@@ -20148,18 +20056,12 @@ var TitleSection = ({ title, createTime, readTime }) => {
|
|
|
20148
20056
|
children: [
|
|
20149
20057
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20150
20058
|
className: "flex items-center gap-2",
|
|
20151
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20152
|
-
icon: "lucide:clock",
|
|
20153
|
-
className: "w-10 h-10"
|
|
20154
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: createTime })]
|
|
20059
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { className: "w-10 h-10" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: createTime })]
|
|
20155
20060
|
}),
|
|
20156
20061
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
20157
20062
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20158
20063
|
className: "flex items-center gap-2",
|
|
20159
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20160
|
-
icon: "lucide:clock",
|
|
20161
|
-
className: "w-10 h-10 text-accent"
|
|
20162
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
20064
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { className: "w-10 h-10 text-accent" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
20163
20065
|
"阅读 ",
|
|
20164
20066
|
readTime,
|
|
20165
20067
|
" 分钟"
|
|
@@ -20261,42 +20163,27 @@ var InfoSection$4 = (props) => {
|
|
|
20261
20163
|
children: [
|
|
20262
20164
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20263
20165
|
className: "flex gap-2 items-center",
|
|
20264
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20265
|
-
icon: "lucide:heart",
|
|
20266
|
-
className: "w-11 h-11 text-like"
|
|
20267
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.dianzan, "点赞"] })]
|
|
20166
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { className: "w-11 h-11 text-like" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.dianzan, "点赞"] })]
|
|
20268
20167
|
}),
|
|
20269
20168
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
20270
20169
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20271
20170
|
className: "flex gap-2 items-center",
|
|
20272
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20273
|
-
icon: "lucide:message-circle",
|
|
20274
|
-
className: "w-11 h-11 text-comment"
|
|
20275
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.pinglun, "评论"] })]
|
|
20171
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, { className: "w-11 h-11 text-comment" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.pinglun, "评论"] })]
|
|
20276
20172
|
}),
|
|
20277
20173
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
20278
20174
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20279
20175
|
className: "flex gap-2 items-center",
|
|
20280
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20281
|
-
icon: "lucide:bookmark",
|
|
20282
|
-
className: "w-11 h-11"
|
|
20283
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.shouchang, "收藏"] })]
|
|
20176
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Bookmark, { className: "w-11 h-11" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.shouchang, "收藏"] })]
|
|
20284
20177
|
}),
|
|
20285
20178
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
20286
20179
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20287
20180
|
className: "flex gap-2 items-center",
|
|
20288
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20289
|
-
icon: "lucide:share-2",
|
|
20290
|
-
className: "w-11 h-11 text-success"
|
|
20291
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.share, "分享"] })]
|
|
20181
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Share2, { className: "w-11 h-11 text-success" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.share, "分享"] })]
|
|
20292
20182
|
})
|
|
20293
20183
|
]
|
|
20294
20184
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20295
20185
|
className: "flex items-center gap-2 text-5xl text-muted font-light select-text",
|
|
20296
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20297
|
-
icon: "lucide:maximize",
|
|
20298
|
-
className: "w-11 h-11 text-time"
|
|
20299
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
20186
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Maximize, { className: "w-11 h-11 text-time" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
20300
20187
|
})]
|
|
20301
20188
|
});
|
|
20302
20189
|
};
|
|
@@ -20325,10 +20212,7 @@ var UserInfoSection$3 = (props) => {
|
|
|
20325
20212
|
children: ["@", props.data.username]
|
|
20326
20213
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20327
20214
|
className: "flex gap-2 items-center text-4xl text-muted",
|
|
20328
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20329
|
-
icon: "lucide:hash",
|
|
20330
|
-
className: "w-8 h-8 text-muted"
|
|
20331
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20215
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { className: "w-8 h-8 text-muted" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20332
20216
|
className: "select-text",
|
|
20333
20217
|
children: ["抖音号: ", props.data.抖音号]
|
|
20334
20218
|
})]
|
|
@@ -20342,10 +20226,7 @@ var UserInfoSection$3 = (props) => {
|
|
|
20342
20226
|
children: [
|
|
20343
20227
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20344
20228
|
className: "flex gap-1 items-center",
|
|
20345
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20346
|
-
icon: "lucide:heart",
|
|
20347
|
-
className: "w-7 h-7 text-like"
|
|
20348
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20229
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { className: "w-7 h-7 text-like" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20349
20230
|
className: "text-muted",
|
|
20350
20231
|
children: "获赞"
|
|
20351
20232
|
})]
|
|
@@ -20362,10 +20243,7 @@ var UserInfoSection$3 = (props) => {
|
|
|
20362
20243
|
children: [
|
|
20363
20244
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20364
20245
|
className: "flex gap-1 items-center",
|
|
20365
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20366
|
-
icon: "lucide:eye",
|
|
20367
|
-
className: "w-7 h-7 text-view"
|
|
20368
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20246
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, { className: "w-7 h-7 text-view" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20369
20247
|
className: "text-muted",
|
|
20370
20248
|
children: "关注"
|
|
20371
20249
|
})]
|
|
@@ -20382,10 +20260,7 @@ var UserInfoSection$3 = (props) => {
|
|
|
20382
20260
|
children: [
|
|
20383
20261
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20384
20262
|
className: "flex gap-1 items-center",
|
|
20385
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20386
|
-
icon: "lucide:users",
|
|
20387
|
-
className: "w-7 h-7 text-accent"
|
|
20388
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20263
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { className: "w-7 h-7 text-accent" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20389
20264
|
className: "text-muted",
|
|
20390
20265
|
children: "粉丝"
|
|
20391
20266
|
})]
|
|
@@ -20477,18 +20352,9 @@ var formatDouyinCommentDiggCount = (count) => {
|
|
|
20477
20352
|
if (count >= 1e4) return `${(count / 1e4).toFixed(1)}w`;
|
|
20478
20353
|
return String(count);
|
|
20479
20354
|
};
|
|
20480
|
-
var
|
|
20481
|
-
|
|
20482
|
-
|
|
20483
|
-
className: "flex items-center h-full text-6xl font-bold text-foreground/70",
|
|
20484
|
-
children: "抖音"
|
|
20485
|
-
});
|
|
20486
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", {
|
|
20487
|
-
src: useDarkTheme ? "/image/douyin/dylogo-light.svg" : "/image/douyin/dylogo-dark.svg",
|
|
20488
|
-
alt: "抖音Logo",
|
|
20489
|
-
className: "object-contain h-full w-auto max-w-125",
|
|
20490
|
-
onError: () => setHasError(true)
|
|
20491
|
-
});
|
|
20355
|
+
var formatPublishTime = (timestamp) => {
|
|
20356
|
+
if (!timestamp) return "";
|
|
20357
|
+
return format(fromUnixTime(timestamp), "yyyy年MM月dd日 HH:mm", { locale: zhCN });
|
|
20492
20358
|
};
|
|
20493
20359
|
/**
|
|
20494
20360
|
* 二维码组件
|
|
@@ -20506,8 +20372,7 @@ var QRCodeSection$1 = ({ qrCodeDataUrl }) => {
|
|
|
20506
20372
|
className: "object-contain w-full h-full rounded-lg"
|
|
20507
20373
|
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20508
20374
|
className: "flex flex-col justify-center items-center text-muted",
|
|
20509
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20510
|
-
icon: "lucide:qr-code",
|
|
20375
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(QrCode, {
|
|
20511
20376
|
width: 80,
|
|
20512
20377
|
className: "mb-4"
|
|
20513
20378
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -20525,88 +20390,123 @@ var QRCodeSection$1 = ({ qrCodeDataUrl }) => {
|
|
|
20525
20390
|
*/
|
|
20526
20391
|
var VideoInfoHeader = (props) => {
|
|
20527
20392
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20528
|
-
className: "max-w-350 mx-auto px-10
|
|
20393
|
+
className: "max-w-350 mx-auto px-10 pt-14",
|
|
20529
20394
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20530
|
-
className: "flex
|
|
20395
|
+
className: "flex items-start justify-between gap-10",
|
|
20531
20396
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20532
|
-
className: "flex flex-col flex-1",
|
|
20533
|
-
children: [
|
|
20534
|
-
|
|
20535
|
-
|
|
20536
|
-
|
|
20537
|
-
|
|
20538
|
-
|
|
20539
|
-
|
|
20540
|
-
|
|
20541
|
-
|
|
20542
|
-
|
|
20543
|
-
|
|
20544
|
-
|
|
20397
|
+
className: "flex flex-col gap-10 flex-1 min-w-0",
|
|
20398
|
+
children: [
|
|
20399
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20400
|
+
className: "flex items-start justify-between gap-6",
|
|
20401
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20402
|
+
className: "flex items-center gap-6 min-w-0",
|
|
20403
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20404
|
+
className: "w-35 h-35 shrink-0 rounded-full overflow-hidden bg-surface-secondary ring-2 ring-border/40",
|
|
20405
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", {
|
|
20406
|
+
src: props.AuthorAvatar,
|
|
20407
|
+
className: "w-full h-full object-cover",
|
|
20408
|
+
alt: props.Author
|
|
20409
|
+
})
|
|
20410
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20411
|
+
className: "flex flex-col gap-3 min-w-0",
|
|
20412
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20413
|
+
className: "flex items-center gap-4 flex-wrap",
|
|
20414
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20415
|
+
className: "text-5xl font-medium text-foreground truncate",
|
|
20416
|
+
children: props.Author
|
|
20417
|
+
})
|
|
20418
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20419
|
+
className: "text-4xl text-muted",
|
|
20420
|
+
children: formatPublishTime(props.CreateTime)
|
|
20421
|
+
})]
|
|
20545
20422
|
})]
|
|
20546
|
-
})
|
|
20547
|
-
})
|
|
20548
|
-
|
|
20549
|
-
|
|
20550
|
-
|
|
20551
|
-
|
|
20552
|
-
|
|
20553
|
-
|
|
20554
|
-
|
|
20555
|
-
|
|
20556
|
-
|
|
20557
|
-
|
|
20423
|
+
})
|
|
20424
|
+
}),
|
|
20425
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20426
|
+
className: "grid grid-cols-2 gap-8",
|
|
20427
|
+
children: [
|
|
20428
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20429
|
+
className: "flex items-center gap-4 text-foreground/50",
|
|
20430
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { size: 48 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20431
|
+
className: "text-5xl font-medium text-foreground/90",
|
|
20432
|
+
children: formatDouyinCommentDiggCount(props.Statistics.digg_count)
|
|
20433
|
+
})]
|
|
20434
|
+
}),
|
|
20435
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20436
|
+
className: "flex items-center gap-4 text-foreground/50",
|
|
20437
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, { size: 48 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20438
|
+
className: "text-5xl font-medium text-foreground/90",
|
|
20439
|
+
children: formatDouyinCommentDiggCount(props.Statistics.comment_count)
|
|
20440
|
+
})]
|
|
20441
|
+
}),
|
|
20442
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20443
|
+
className: "flex items-center gap-4 text-foreground/50",
|
|
20444
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Share2, { size: 48 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20445
|
+
className: "text-5xl font-medium text-foreground/90",
|
|
20446
|
+
children: formatDouyinCommentDiggCount(props.Statistics.share_count)
|
|
20447
|
+
})]
|
|
20448
|
+
}),
|
|
20449
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20450
|
+
className: "flex items-center gap-4 text-foreground/50",
|
|
20451
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Star, { size: 48 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20452
|
+
className: "text-5xl font-medium text-foreground/90",
|
|
20453
|
+
children: formatDouyinCommentDiggCount(props.Statistics.collect_count)
|
|
20454
|
+
})]
|
|
20455
|
+
})
|
|
20456
|
+
]
|
|
20457
|
+
}),
|
|
20458
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20459
|
+
className: "flex items-center gap-4 flex-wrap text-muted",
|
|
20460
|
+
children: [
|
|
20461
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20462
|
+
className: "text-4xl",
|
|
20558
20463
|
children: props.Type
|
|
20559
|
-
})
|
|
20560
|
-
|
|
20561
|
-
|
|
20562
|
-
|
|
20563
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20564
|
-
className: "mr-4 text-muted",
|
|
20565
|
-
children: "评论"
|
|
20566
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20567
|
-
className: "font-medium text-foreground/70",
|
|
20568
|
-
children: [props.CommentLength, "条"]
|
|
20569
|
-
})]
|
|
20570
|
-
}),
|
|
20571
|
-
props.Type === "视频" ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20572
|
-
className: "flex items-center tracking-[6px] text-[45px] text-muted select-text",
|
|
20573
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20574
|
-
className: "mr-4 text-muted",
|
|
20575
|
-
children: "大小"
|
|
20576
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20577
|
-
className: "font-medium text-foreground/70",
|
|
20578
|
-
children: [props.VideoSize, "MB"]
|
|
20579
|
-
})]
|
|
20580
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20581
|
-
className: "flex items-center tracking-[6px] text-[45px] text-muted select-text",
|
|
20582
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20583
|
-
className: "mr-4 text-muted",
|
|
20584
|
-
children: "帧率"
|
|
20585
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20586
|
-
className: "font-medium text-foreground/70",
|
|
20587
|
-
children: [props.VideoFPS, "Hz"]
|
|
20588
|
-
})]
|
|
20589
|
-
})] }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20590
|
-
className: "flex items-center tracking-[6px] text-[45px] text-muted select-text",
|
|
20591
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20592
|
-
className: "mr-4 text-muted",
|
|
20593
|
-
children: "区域"
|
|
20464
|
+
}),
|
|
20465
|
+
props.Type === "视频" && props.Resolution && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20466
|
+
className: "text-4xl text-border",
|
|
20467
|
+
children: "·"
|
|
20594
20468
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20595
|
-
className: "
|
|
20596
|
-
children: props.
|
|
20597
|
-
})]
|
|
20598
|
-
|
|
20599
|
-
|
|
20600
|
-
|
|
20601
|
-
|
|
20602
|
-
|
|
20603
|
-
|
|
20604
|
-
|
|
20605
|
-
|
|
20606
|
-
|
|
20607
|
-
|
|
20608
|
-
|
|
20609
|
-
|
|
20469
|
+
className: "text-4xl",
|
|
20470
|
+
children: props.Resolution
|
|
20471
|
+
})] }),
|
|
20472
|
+
props.Type === "视频" ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
20473
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20474
|
+
className: "text-4xl text-border",
|
|
20475
|
+
children: "·"
|
|
20476
|
+
}),
|
|
20477
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20478
|
+
className: "text-4xl",
|
|
20479
|
+
children: [props.VideoSize, "MB"]
|
|
20480
|
+
}),
|
|
20481
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20482
|
+
className: "text-4xl text-border",
|
|
20483
|
+
children: "·"
|
|
20484
|
+
}),
|
|
20485
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20486
|
+
className: "text-4xl",
|
|
20487
|
+
children: [props.VideoFPS, "Hz"]
|
|
20488
|
+
})
|
|
20489
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
20490
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20491
|
+
className: "text-4xl text-border",
|
|
20492
|
+
children: "·"
|
|
20493
|
+
}),
|
|
20494
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20495
|
+
className: "text-4xl",
|
|
20496
|
+
children: props.Region
|
|
20497
|
+
}),
|
|
20498
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20499
|
+
className: "text-4xl text-border",
|
|
20500
|
+
children: "·"
|
|
20501
|
+
}),
|
|
20502
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20503
|
+
className: "text-4xl",
|
|
20504
|
+
children: [props.ImageLength, "张"]
|
|
20505
|
+
})
|
|
20506
|
+
] })
|
|
20507
|
+
]
|
|
20508
|
+
})
|
|
20509
|
+
]
|
|
20610
20510
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20611
20511
|
className: "shrink-0",
|
|
20612
20512
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(QRCodeSection$1, { qrCodeDataUrl: props.qrCodeDataUrl })
|
|
@@ -20688,9 +20588,8 @@ var ReplyItemComponent = ({ reply, depth = 0, isLast, maxDepth = 6 }) => {
|
|
|
20688
20588
|
className: "flex items-center h-12.5",
|
|
20689
20589
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20690
20590
|
className: "flex items-center text-muted",
|
|
20691
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20692
|
-
|
|
20693
|
-
width: 45,
|
|
20591
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(CircleEllipsis, {
|
|
20592
|
+
size: 45,
|
|
20694
20593
|
className: "mr-5"
|
|
20695
20594
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20696
20595
|
className: "text-4xl font-medium tracking-wide",
|
|
@@ -20712,10 +20611,10 @@ var ReplyItemComponent = ({ reply, depth = 0, isLast, maxDepth = 6 }) => {
|
|
|
20712
20611
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20713
20612
|
className: "flex relative justify-center",
|
|
20714
20613
|
children: [
|
|
20715
|
-
!isLast && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "absolute top-0 bottom-0 left-1/2 w-0.5 bg-border -ml-px" }),
|
|
20614
|
+
!isLast && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "absolute top-0 bottom-0 left-1/2 w-0.5 bg-border-secondary -ml-px" }),
|
|
20716
20615
|
!isLast && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "absolute -bottom-6 left-1/2 w-0.5 h-6 bg-border -ml-px" }),
|
|
20717
20616
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", {
|
|
20718
|
-
className: "absolute top-0 left-0 w-full h-12.5 pointer-events-none overflow-visible z-0 text-border",
|
|
20617
|
+
className: "absolute top-0 left-0 w-full h-12.5 pointer-events-none overflow-visible z-0 text-border-secondary",
|
|
20719
20618
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
20720
20619
|
d: "M 50 0 V 15 Q 50 50 85 50 H 90",
|
|
20721
20620
|
fill: "none",
|
|
@@ -20738,15 +20637,15 @@ var ReplyItemComponent = ({ reply, depth = 0, isLast, maxDepth = 6 }) => {
|
|
|
20738
20637
|
className: "object-cover rounded-full w-25 h-25 bg-background",
|
|
20739
20638
|
alt: "用户头像"
|
|
20740
20639
|
})
|
|
20741
|
-
}), reply.children.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "w-0.5 bg-border h-full grow mt-3 rounded-t-full" })]
|
|
20640
|
+
}), reply.children.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "w-0.5 bg-border-secondary h-full grow mt-3 rounded-t-full" })]
|
|
20742
20641
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20743
|
-
className: "flex flex-col
|
|
20642
|
+
className: clsx("flex flex-col pl-6 min-w-0 gap-2", isLast && reply.children.length === 0 ? "pb-16" : "pb-6"),
|
|
20744
20643
|
children: [
|
|
20745
20644
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20746
|
-
className: "flex flex-nowrap items-center
|
|
20645
|
+
className: "flex flex-nowrap items-center content-center w-full overflow-hidden",
|
|
20747
20646
|
children: [
|
|
20748
20647
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20749
|
-
className: clsx("mr-2 text-
|
|
20648
|
+
className: clsx("mr-2 text-4xl font-normal text-muted", isNicknameLonger ? "min-w-0 truncate shrink" : "shrink-0"),
|
|
20750
20649
|
children: reply.nickname
|
|
20751
20650
|
}),
|
|
20752
20651
|
reply.label_text !== "" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -20755,59 +20654,53 @@ var ReplyItemComponent = ({ reply, depth = 0, isLast, maxDepth = 6 }) => {
|
|
|
20755
20654
|
}),
|
|
20756
20655
|
reply.reply_to_username && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20757
20656
|
className: clsx("flex items-center", !isNicknameLonger ? "overflow-hidden min-w-0 shrink" : "shrink-0"),
|
|
20758
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20759
|
-
|
|
20760
|
-
|
|
20761
|
-
className: "mr-3.5 mx-1 text-muted shrink-0",
|
|
20762
|
-
fill: "currentColor"
|
|
20657
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(a, {
|
|
20658
|
+
weight: "fill",
|
|
20659
|
+
className: "w-7 h-auto mr-3.5 mx-1 text-muted shrink-0"
|
|
20763
20660
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20764
|
-
className: clsx("text-
|
|
20661
|
+
className: clsx("text-4xl font-normal text-muted", !isNicknameLonger && "truncate"),
|
|
20765
20662
|
children: reply.reply_to_username
|
|
20766
20663
|
})]
|
|
20767
20664
|
})
|
|
20768
20665
|
]
|
|
20769
20666
|
}),
|
|
20770
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20771
|
-
className: "
|
|
20772
|
-
|
|
20773
|
-
|
|
20774
|
-
|
|
20775
|
-
|
|
20776
|
-
|
|
20777
|
-
|
|
20778
|
-
|
|
20779
|
-
|
|
20780
|
-
className: "
|
|
20781
|
-
|
|
20782
|
-
|
|
20783
|
-
|
|
20784
|
-
|
|
20785
|
-
})
|
|
20786
|
-
}, idx))]
|
|
20787
|
-
}),
|
|
20667
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20668
|
+
className: "text-5xl text-foreground leading-normal whitespace-pre-wrap select-text",
|
|
20669
|
+
style: {
|
|
20670
|
+
wordBreak: "break-word",
|
|
20671
|
+
overflowWrap: "break-word"
|
|
20672
|
+
},
|
|
20673
|
+
children: renderDouyinCommentRichText(reply.text)
|
|
20674
|
+
}), reply.image_list && reply.image_list.length > 0 && reply.image_list.filter(Boolean).map((img, idx) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20675
|
+
className: "my-4 overflow-hidden shadow-sm rounded-xl max-w-150",
|
|
20676
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", {
|
|
20677
|
+
className: "object-contain w-full h-auto rounded-xl",
|
|
20678
|
+
src: img,
|
|
20679
|
+
alt: "评论图片"
|
|
20680
|
+
})
|
|
20681
|
+
}, idx))] }),
|
|
20788
20682
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20789
20683
|
className: "pb-4",
|
|
20790
20684
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20791
20685
|
className: "flex gap-6 items-center text-muted",
|
|
20792
20686
|
children: [
|
|
20687
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20688
|
+
className: "text-4xl",
|
|
20689
|
+
children: formatDouyinCommentTime(reply.create_time)
|
|
20690
|
+
}),
|
|
20691
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20692
|
+
className: "text-4xl",
|
|
20693
|
+
children: reply.ip_label
|
|
20694
|
+
}),
|
|
20793
20695
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20794
20696
|
className: "flex gap-2 items-center",
|
|
20795
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20796
|
-
|
|
20797
|
-
width: 40,
|
|
20697
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
20698
|
+
size: 40,
|
|
20798
20699
|
className: "text-muted"
|
|
20799
20700
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20800
20701
|
className: "text-4xl select-text",
|
|
20801
20702
|
children: formatDouyinCommentDiggCount(reply.digg_count)
|
|
20802
20703
|
})]
|
|
20803
|
-
}),
|
|
20804
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20805
|
-
className: "text-4xl",
|
|
20806
|
-
children: reply.ip_label
|
|
20807
|
-
}),
|
|
20808
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20809
|
-
className: "ml-2 text-4xl",
|
|
20810
|
-
children: formatDouyinCommentTime(reply.create_time)
|
|
20811
20704
|
})
|
|
20812
20705
|
]
|
|
20813
20706
|
})
|
|
@@ -20852,15 +20745,15 @@ var CommentItemComponent$1 = (props) => {
|
|
|
20852
20745
|
className: "w-35 h-35 rounded-full object-cover shadow-md bg-background",
|
|
20853
20746
|
alt: "用户头像"
|
|
20854
20747
|
})
|
|
20855
|
-
}), props.replyComment && props.replyComment.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "w-0.5 bg-border h-full grow mt-4 rounded-t-full" })]
|
|
20748
|
+
}), props.replyComment && props.replyComment.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "w-0.5 bg-border-secondary h-full grow mt-4 rounded-t-full" })]
|
|
20856
20749
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20857
|
-
className: "flex flex-col
|
|
20750
|
+
className: "flex flex-col py-4 pl-6 min-w-0 gap-2",
|
|
20858
20751
|
children: [
|
|
20859
20752
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20860
|
-
className: "flex flex-wrap gap-4 items-center mb-3 text-
|
|
20753
|
+
className: "flex flex-wrap gap-4 items-center mb-3 text-4xl select-text content-center",
|
|
20861
20754
|
children: [
|
|
20862
20755
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20863
|
-
className: "font-
|
|
20756
|
+
className: "font-normal text-muted",
|
|
20864
20757
|
children: props.nickname
|
|
20865
20758
|
}),
|
|
20866
20759
|
props.label_type === 1 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -20878,7 +20771,7 @@ var CommentItemComponent$1 = (props) => {
|
|
|
20878
20771
|
]
|
|
20879
20772
|
}),
|
|
20880
20773
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20881
|
-
className: "text-5xl text-foreground leading-normal
|
|
20774
|
+
className: "text-5xl text-foreground leading-normal whitespace-pre-wrap select-text",
|
|
20882
20775
|
style: {
|
|
20883
20776
|
wordBreak: "break-word",
|
|
20884
20777
|
overflowWrap: "break-word"
|
|
@@ -20894,28 +20787,27 @@ var CommentItemComponent$1 = (props) => {
|
|
|
20894
20787
|
})
|
|
20895
20788
|
}),
|
|
20896
20789
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
20897
|
-
className: "flex justify-between items-center
|
|
20790
|
+
className: "flex justify-between items-center text-muted",
|
|
20898
20791
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20899
20792
|
className: "flex gap-6 items-center shrink-0",
|
|
20900
20793
|
children: [
|
|
20794
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20795
|
+
className: "text-4xl",
|
|
20796
|
+
children: formatDouyinCommentTime(props.create_time)
|
|
20797
|
+
}),
|
|
20798
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20799
|
+
className: "text-4xl",
|
|
20800
|
+
children: props.ip_label
|
|
20801
|
+
}),
|
|
20901
20802
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20902
20803
|
className: "flex gap-2 items-center transition-colors cursor-pointer",
|
|
20903
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20904
|
-
|
|
20905
|
-
width: 44,
|
|
20804
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
20805
|
+
size: 44,
|
|
20906
20806
|
className: "text-muted"
|
|
20907
20807
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20908
20808
|
className: "text-4xl select-text",
|
|
20909
20809
|
children: formatDouyinCommentDiggCount(props.digg_count)
|
|
20910
20810
|
})]
|
|
20911
|
-
}),
|
|
20912
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20913
|
-
className: "text-4xl",
|
|
20914
|
-
children: props.ip_label
|
|
20915
|
-
}),
|
|
20916
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
20917
|
-
className: "ml-2 text-4xl",
|
|
20918
|
-
children: formatDouyinCommentTime(props.create_time)
|
|
20919
20811
|
})
|
|
20920
20812
|
]
|
|
20921
20813
|
})
|
|
@@ -20924,7 +20816,7 @@ var CommentItemComponent$1 = (props) => {
|
|
|
20924
20816
|
})]
|
|
20925
20817
|
}), props.replyComment && props.replyComment.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20926
20818
|
className: "flex relative flex-col mt-8 ml-5",
|
|
20927
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "absolute -top-8 left-12.5 w-0.5 h-8 bg-border -ml-px" }), organizeReplies(props.replyComment, props.cid || "", props.maxDepth).map((reply, index, arr) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ReplyItemComponent, {
|
|
20819
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "absolute -top-8 left-12.5 w-0.5 h-8 bg-border-secondary -ml-px" }), organizeReplies(props.replyComment, props.cid || "", props.maxDepth).map((reply, index, arr) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ReplyItemComponent, {
|
|
20928
20820
|
reply,
|
|
20929
20821
|
depth: 1,
|
|
20930
20822
|
isLast: index === arr.length - 1,
|
|
@@ -20950,7 +20842,7 @@ var DouyinComment = import_react.memo((props) => {
|
|
|
20950
20842
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DefaultLayout, {
|
|
20951
20843
|
...props,
|
|
20952
20844
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
20953
|
-
className: "p-5",
|
|
20845
|
+
className: "p-5 px-15",
|
|
20954
20846
|
children: [
|
|
20955
20847
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-20" }),
|
|
20956
20848
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(VideoInfoHeader, {
|
|
@@ -20966,9 +20858,8 @@ var DouyinComment = import_react.memo((props) => {
|
|
|
20966
20858
|
children: "大家都在搜:"
|
|
20967
20859
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
20968
20860
|
className: "relative text-5xl text-[#04498d] dark:text-[#face15]",
|
|
20969
|
-
children: [randomSuggestWord, /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
20970
|
-
|
|
20971
|
-
width: 32,
|
|
20861
|
+
children: [randomSuggestWord, /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Search, {
|
|
20862
|
+
size: 32,
|
|
20972
20863
|
className: "absolute -top-2 -right-8"
|
|
20973
20864
|
})]
|
|
20974
20865
|
})]
|
|
@@ -21058,50 +20949,32 @@ var InfoSection$3 = (props) => {
|
|
|
21058
20949
|
children: [
|
|
21059
20950
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21060
20951
|
className: "flex gap-2 items-center",
|
|
21061
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21062
|
-
icon: "lucide:heart",
|
|
21063
|
-
className: "w-11 h-11 text-like"
|
|
21064
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.dianzan, "点赞"] })]
|
|
20952
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { className: "w-11 h-11 text-like" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.dianzan, "点赞"] })]
|
|
21065
20953
|
}),
|
|
21066
20954
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
21067
20955
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21068
20956
|
className: "flex gap-2 items-center",
|
|
21069
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21070
|
-
icon: "lucide:message-circle",
|
|
21071
|
-
className: "w-11 h-11 text-comment"
|
|
21072
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.pinglun, "评论"] })]
|
|
20957
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, { className: "w-11 h-11 text-comment" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.pinglun, "评论"] })]
|
|
21073
20958
|
}),
|
|
21074
20959
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
21075
20960
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21076
20961
|
className: "flex gap-2 items-center",
|
|
21077
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21078
|
-
icon: "lucide:bookmark",
|
|
21079
|
-
className: "w-11 h-11"
|
|
21080
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.shouchang, "收藏"] })]
|
|
20962
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Bookmark, { className: "w-11 h-11" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.shouchang, "收藏"] })]
|
|
21081
20963
|
}),
|
|
21082
20964
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
21083
20965
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21084
20966
|
className: "flex gap-2 items-center",
|
|
21085
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21086
|
-
icon: "lucide:share-2",
|
|
21087
|
-
className: "w-11 h-11 text-success"
|
|
21088
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.share, "分享"] })]
|
|
20967
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Share2, { className: "w-11 h-11 text-success" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.share, "分享"] })]
|
|
21089
20968
|
})
|
|
21090
20969
|
]
|
|
21091
20970
|
}),
|
|
21092
20971
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21093
20972
|
className: "flex items-center gap-2 text-[45px] text-muted font-light select-text",
|
|
21094
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21095
|
-
icon: "lucide:clock",
|
|
21096
|
-
className: "w-11 h-11 text-time"
|
|
21097
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["发布于: ", props.data.create_time] })]
|
|
20973
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { className: "w-11 h-11 text-time" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["发布于: ", props.data.create_time] })]
|
|
21098
20974
|
}),
|
|
21099
20975
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21100
20976
|
className: "flex items-center gap-2 text-[45px] text-muted font-light select-text",
|
|
21101
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21102
|
-
icon: "lucide:maximize",
|
|
21103
|
-
className: "w-11 h-11 text-time text-time"
|
|
21104
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
20977
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Maximize, { className: "w-11 h-11 text-time text-time" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
21105
20978
|
})
|
|
21106
20979
|
]
|
|
21107
20980
|
});
|
|
@@ -21133,9 +21006,8 @@ var UserInfoSection$2 = (props) => {
|
|
|
21133
21006
|
children: ["@", props.data.username]
|
|
21134
21007
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21135
21008
|
className: "flex gap-2 items-center text-4xl text-muted",
|
|
21136
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21137
|
-
|
|
21138
|
-
width: 32,
|
|
21009
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, {
|
|
21010
|
+
size: 32,
|
|
21139
21011
|
className: "text-muted"
|
|
21140
21012
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
21141
21013
|
className: "select-text",
|
|
@@ -21151,9 +21023,8 @@ var UserInfoSection$2 = (props) => {
|
|
|
21151
21023
|
children: [
|
|
21152
21024
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21153
21025
|
className: "flex gap-1 items-center",
|
|
21154
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21155
|
-
|
|
21156
|
-
width: 28,
|
|
21026
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
21027
|
+
size: 28,
|
|
21157
21028
|
className: "text-like"
|
|
21158
21029
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
21159
21030
|
className: "text-muted",
|
|
@@ -21172,9 +21043,8 @@ var UserInfoSection$2 = (props) => {
|
|
|
21172
21043
|
children: [
|
|
21173
21044
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21174
21045
|
className: "flex gap-1 items-center",
|
|
21175
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21176
|
-
|
|
21177
|
-
width: 28,
|
|
21046
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, {
|
|
21047
|
+
size: 28,
|
|
21178
21048
|
className: "text-view"
|
|
21179
21049
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
21180
21050
|
className: "text-muted",
|
|
@@ -21193,9 +21063,8 @@ var UserInfoSection$2 = (props) => {
|
|
|
21193
21063
|
children: [
|
|
21194
21064
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21195
21065
|
className: "flex gap-1 items-center",
|
|
21196
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21197
|
-
|
|
21198
|
-
width: 28,
|
|
21066
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, {
|
|
21067
|
+
size: 28,
|
|
21199
21068
|
className: "text-accent"
|
|
21200
21069
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
21201
21070
|
className: "text-muted",
|
|
@@ -21313,10 +21182,7 @@ var DouyinDynamic = (props) => {
|
|
|
21313
21182
|
className: "px-16 pb-8",
|
|
21314
21183
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21315
21184
|
className: "gap-2 inline-flex items-center rounded-2xl bg-surface text-foreground/80 px-6 py-3",
|
|
21316
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21317
|
-
icon: "lucide:users",
|
|
21318
|
-
className: "w-7 h-7"
|
|
21319
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
21185
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { className: "w-7 h-7" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
21320
21186
|
className: "text-3xl font-medium leading-none select-text text-foreground/80",
|
|
21321
21187
|
children: [coCreatorCount, "人共创"]
|
|
21322
21188
|
})]
|
|
@@ -21435,9 +21301,9 @@ var DouyinFavoriteList = (props) => {
|
|
|
21435
21301
|
}),
|
|
21436
21302
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21437
21303
|
className: "absolute -bottom-3 -right-3 bg-rose-500 text-white px-5 py-2 rounded-full border-[5px] border-white font-bold text-xl shadow-xl flex items-center gap-2",
|
|
21438
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21439
|
-
|
|
21440
|
-
className: "
|
|
21304
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiHeart3Fill, {
|
|
21305
|
+
size: 20,
|
|
21306
|
+
className: "fill-current"
|
|
21441
21307
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "赞了" })]
|
|
21442
21308
|
})
|
|
21443
21309
|
]
|
|
@@ -21462,9 +21328,9 @@ var DouyinFavoriteList = (props) => {
|
|
|
21462
21328
|
className: "mt-6 flex flex-col items-center gap-2 text-rose-500",
|
|
21463
21329
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21464
21330
|
className: "flex items-center gap-3",
|
|
21465
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21466
|
-
|
|
21467
|
-
className: "
|
|
21331
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiHeart3Fill, {
|
|
21332
|
+
size: 40,
|
|
21333
|
+
className: "fill-current"
|
|
21468
21334
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
21469
21335
|
className: "text-4xl font-bold",
|
|
21470
21336
|
children: "刚刚赞了这个作品"
|
|
@@ -21558,9 +21424,8 @@ var DouyinFavoriteList = (props) => {
|
|
|
21558
21424
|
className: "absolute inset-x-0 bottom-0 pt-40 pb-12 px-12 bg-linear-to-t from-black/90 via-black/50 to-transparent",
|
|
21559
21425
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21560
21426
|
className: "flex gap-6 items-start",
|
|
21561
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21562
|
-
|
|
21563
|
-
width: 48,
|
|
21427
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Quote, {
|
|
21428
|
+
size: 48,
|
|
21564
21429
|
className: "text-rose-500/90 shrink-0 rotate-180 mt-2"
|
|
21565
21430
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
21566
21431
|
className: "text-white text-4xl font-medium leading-relaxed line-clamp-3 drop-shadow-lg tracking-wide",
|
|
@@ -21573,24 +21438,24 @@ var DouyinFavoriteList = (props) => {
|
|
|
21573
21438
|
className: "grid grid-cols-5 gap-6 z-10",
|
|
21574
21439
|
children: [
|
|
21575
21440
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$3, {
|
|
21576
|
-
icon:
|
|
21441
|
+
icon: RiHeart3Fill,
|
|
21577
21442
|
value: props.data.dianzan,
|
|
21578
21443
|
iconClassName: "text-rose-500/80"
|
|
21579
21444
|
}),
|
|
21580
21445
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$3, {
|
|
21581
|
-
icon:
|
|
21446
|
+
icon: RiThumbUpFill,
|
|
21582
21447
|
value: props.data.tuijian
|
|
21583
21448
|
}),
|
|
21584
21449
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$3, {
|
|
21585
|
-
icon:
|
|
21450
|
+
icon: RiMessage3Fill,
|
|
21586
21451
|
value: props.data.pinglun
|
|
21587
21452
|
}),
|
|
21588
21453
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$3, {
|
|
21589
|
-
icon:
|
|
21454
|
+
icon: RiStarFill,
|
|
21590
21455
|
value: props.data.shouchang
|
|
21591
21456
|
}),
|
|
21592
21457
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$3, {
|
|
21593
|
-
icon:
|
|
21458
|
+
icon: RiShareForwardFill,
|
|
21594
21459
|
value: props.data.share
|
|
21595
21460
|
})
|
|
21596
21461
|
]
|
|
@@ -21603,11 +21468,11 @@ var DouyinFavoriteList = (props) => {
|
|
|
21603
21468
|
});
|
|
21604
21469
|
};
|
|
21605
21470
|
/** 统计项小组件 */
|
|
21606
|
-
var StatItem$3 = ({ icon, value, iconClassName }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21471
|
+
var StatItem$3 = ({ icon: IconComponent, value, iconClassName }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21607
21472
|
className: "flex flex-col items-center justify-center gap-2 py-6 rounded-3xl bg-surface",
|
|
21608
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21609
|
-
|
|
21610
|
-
className: `
|
|
21473
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(IconComponent, {
|
|
21474
|
+
size: 48,
|
|
21475
|
+
className: `opacity-90 ${iconClassName || "text-muted"}`
|
|
21611
21476
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
21612
21477
|
className: "text-2xl font-bold text-foreground/70 mt-1",
|
|
21613
21478
|
children: value
|
|
@@ -21670,50 +21535,32 @@ var InfoSection$2 = (props) => {
|
|
|
21670
21535
|
children: [
|
|
21671
21536
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21672
21537
|
className: "flex gap-2 items-center",
|
|
21673
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21674
|
-
icon: "lucide:heart",
|
|
21675
|
-
className: "w-11 h-11 text-like"
|
|
21676
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.dianzan, "点赞"] })]
|
|
21538
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { className: "w-11 h-11 text-like" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.dianzan, "点赞"] })]
|
|
21677
21539
|
}),
|
|
21678
21540
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
21679
21541
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21680
21542
|
className: "flex gap-2 items-center",
|
|
21681
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21682
|
-
icon: "lucide:message-circle",
|
|
21683
|
-
className: "w-11 h-11 text-comment"
|
|
21684
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.pinglun, "评论"] })]
|
|
21543
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, { className: "w-11 h-11 text-comment" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.pinglun, "评论"] })]
|
|
21685
21544
|
}),
|
|
21686
21545
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
21687
21546
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21688
21547
|
className: "flex gap-2 items-center",
|
|
21689
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21690
|
-
icon: "lucide:bookmark",
|
|
21691
|
-
className: "w-11 h-11"
|
|
21692
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.shouchang, "收藏"] })]
|
|
21548
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Bookmark, { className: "w-11 h-11" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.shouchang, "收藏"] })]
|
|
21693
21549
|
}),
|
|
21694
21550
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
21695
21551
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21696
21552
|
className: "flex gap-2 items-center",
|
|
21697
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21698
|
-
icon: "lucide:share-2",
|
|
21699
|
-
className: "w-11 h-11 text-success"
|
|
21700
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.share, "分享"] })]
|
|
21553
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Share2, { className: "w-11 h-11 text-success" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.share, "分享"] })]
|
|
21701
21554
|
})
|
|
21702
21555
|
]
|
|
21703
21556
|
}),
|
|
21704
21557
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21705
21558
|
className: "flex items-center gap-2 text-[45px] text-muted font-light select-text",
|
|
21706
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21707
|
-
icon: "lucide:clock",
|
|
21708
|
-
className: "w-11 h-11 text-time"
|
|
21709
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["发布于: ", props.data.create_time] })]
|
|
21559
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { className: "w-11 h-11 text-time" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["发布于: ", props.data.create_time] })]
|
|
21710
21560
|
}),
|
|
21711
21561
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21712
21562
|
className: "flex items-center gap-2 text-[45px] text-muted font-light select-text",
|
|
21713
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21714
|
-
icon: "lucide:maximize",
|
|
21715
|
-
className: "w-11 h-11 text-time text-time"
|
|
21716
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
21563
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Maximize, { className: "w-11 h-11 text-time text-time" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
21717
21564
|
})
|
|
21718
21565
|
]
|
|
21719
21566
|
});
|
|
@@ -21743,9 +21590,8 @@ var UserInfoSection$1 = (props) => {
|
|
|
21743
21590
|
children: ["@", props.data.username]
|
|
21744
21591
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21745
21592
|
className: "flex gap-2 items-center text-4xl text-muted",
|
|
21746
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21747
|
-
|
|
21748
|
-
width: 32,
|
|
21593
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, {
|
|
21594
|
+
size: 32,
|
|
21749
21595
|
className: "text-muted"
|
|
21750
21596
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
21751
21597
|
className: "select-text",
|
|
@@ -21761,9 +21607,8 @@ var UserInfoSection$1 = (props) => {
|
|
|
21761
21607
|
children: [
|
|
21762
21608
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21763
21609
|
className: "flex gap-1 items-center",
|
|
21764
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21765
|
-
|
|
21766
|
-
width: 28,
|
|
21610
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
21611
|
+
size: 28,
|
|
21767
21612
|
className: "text-like"
|
|
21768
21613
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
21769
21614
|
className: "text-muted",
|
|
@@ -21782,9 +21627,8 @@ var UserInfoSection$1 = (props) => {
|
|
|
21782
21627
|
children: [
|
|
21783
21628
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21784
21629
|
className: "flex gap-1 items-center",
|
|
21785
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21786
|
-
|
|
21787
|
-
width: 28,
|
|
21630
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, {
|
|
21631
|
+
size: 28,
|
|
21788
21632
|
className: "text-view"
|
|
21789
21633
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
21790
21634
|
className: "text-muted",
|
|
@@ -21803,9 +21647,8 @@ var UserInfoSection$1 = (props) => {
|
|
|
21803
21647
|
children: [
|
|
21804
21648
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21805
21649
|
className: "flex gap-1 items-center",
|
|
21806
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21807
|
-
|
|
21808
|
-
width: 28,
|
|
21650
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, {
|
|
21651
|
+
size: 28,
|
|
21809
21652
|
className: "text-accent"
|
|
21810
21653
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
21811
21654
|
className: "text-muted",
|
|
@@ -21923,10 +21766,7 @@ var DouyinImageWork = (props) => {
|
|
|
21923
21766
|
className: "px-16 pb-8",
|
|
21924
21767
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
21925
21768
|
className: "gap-2 inline-flex items-center rounded-2xl bg-surface text-foreground/80 px-6 py-3",
|
|
21926
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
21927
|
-
icon: "lucide:users",
|
|
21928
|
-
className: "w-7 h-7"
|
|
21929
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
21769
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { className: "w-7 h-7" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
21930
21770
|
className: "text-3xl font-medium leading-none select-text text-foreground/80",
|
|
21931
21771
|
children: [coCreatorCount, "人共创"]
|
|
21932
21772
|
})]
|
|
@@ -22115,9 +21955,8 @@ var InfoSection$1 = ({ data }) => {
|
|
|
22115
21955
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
22116
21956
|
className: "flex items-center gap-1.5",
|
|
22117
21957
|
children: [
|
|
22118
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22119
|
-
|
|
22120
|
-
width: 28,
|
|
21958
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, {
|
|
21959
|
+
size: 28,
|
|
22121
21960
|
className: "text-foreground/20"
|
|
22122
21961
|
}),
|
|
22123
21962
|
data.online_viewers,
|
|
@@ -22127,9 +21966,8 @@ var InfoSection$1 = ({ data }) => {
|
|
|
22127
21966
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
22128
21967
|
className: "flex items-center gap-1.5",
|
|
22129
21968
|
children: [
|
|
22130
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22131
|
-
|
|
22132
|
-
width: 28,
|
|
21969
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, {
|
|
21970
|
+
size: 28,
|
|
22133
21971
|
className: "text-foreground/20"
|
|
22134
21972
|
}),
|
|
22135
21973
|
data.total_viewers,
|
|
@@ -22139,9 +21977,8 @@ var InfoSection$1 = ({ data }) => {
|
|
|
22139
21977
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
22140
21978
|
className: "flex items-center gap-1.5",
|
|
22141
21979
|
children: [
|
|
22142
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22143
|
-
|
|
22144
|
-
width: 28,
|
|
21980
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
21981
|
+
size: 28,
|
|
22145
21982
|
className: "text-foreground/20"
|
|
22146
21983
|
}),
|
|
22147
21984
|
data.like_count,
|
|
@@ -22150,17 +21987,15 @@ var InfoSection$1 = ({ data }) => {
|
|
|
22150
21987
|
}),
|
|
22151
21988
|
data.resolution && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
22152
21989
|
className: "flex items-center gap-1.5",
|
|
22153
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22154
|
-
|
|
22155
|
-
width: 28,
|
|
21990
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Monitor, {
|
|
21991
|
+
size: 28,
|
|
22156
21992
|
className: "text-foreground/20"
|
|
22157
21993
|
}), data.resolution]
|
|
22158
21994
|
}),
|
|
22159
21995
|
data.has_commerce_goods && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
22160
21996
|
className: "flex items-center gap-1.5",
|
|
22161
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22162
|
-
|
|
22163
|
-
width: 28,
|
|
21997
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(ShoppingBag, {
|
|
21998
|
+
size: 28,
|
|
22164
21999
|
className: "text-foreground/20"
|
|
22165
22000
|
}), "带货中"]
|
|
22166
22001
|
})
|
|
@@ -22172,9 +22007,8 @@ var InfoSection$1 = ({ data }) => {
|
|
|
22172
22007
|
}),
|
|
22173
22008
|
data.city && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22174
22009
|
className: "flex items-center gap-2 text-3xl text-foreground/30",
|
|
22175
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22176
|
-
|
|
22177
|
-
width: 28,
|
|
22010
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MapPin, {
|
|
22011
|
+
size: 28,
|
|
22178
22012
|
className: "text-foreground/20"
|
|
22179
22013
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: data.city })]
|
|
22180
22014
|
})
|
|
@@ -22217,10 +22051,7 @@ var BottomSection = ({ data, qrCodeDataUrl }) => {
|
|
|
22217
22051
|
className: "text-foreground/40",
|
|
22218
22052
|
children: "·"
|
|
22219
22053
|
}),
|
|
22220
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22221
|
-
icon: "lucide:users",
|
|
22222
|
-
width: 32
|
|
22223
|
-
}),
|
|
22054
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { size: 32 }),
|
|
22224
22055
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
22225
22056
|
className: "select-text",
|
|
22226
22057
|
children: [data.fans, "粉丝"]
|
|
@@ -22235,10 +22066,7 @@ var BottomSection = ({ data, qrCodeDataUrl }) => {
|
|
|
22235
22066
|
className: "flex flex-col gap-2 px-6 py-3 rounded-2xl bg-default/45",
|
|
22236
22067
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22237
22068
|
className: "flex items-center gap-2",
|
|
22238
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22239
|
-
icon: "lucide:file-video",
|
|
22240
|
-
width: 28
|
|
22241
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22069
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(FilePlay, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22242
22070
|
className: "text-foreground/40",
|
|
22243
22071
|
children: "作品"
|
|
22244
22072
|
})]
|
|
@@ -22251,10 +22079,7 @@ var BottomSection = ({ data, qrCodeDataUrl }) => {
|
|
|
22251
22079
|
className: "flex flex-col gap-2 px-6 py-3 rounded-2xl bg-default/45",
|
|
22252
22080
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22253
22081
|
className: "flex items-center gap-2",
|
|
22254
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22255
|
-
icon: "lucide:user-plus",
|
|
22256
|
-
width: 28
|
|
22257
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22082
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UserPlus, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22258
22083
|
className: "text-foreground/40",
|
|
22259
22084
|
children: "关注"
|
|
22260
22085
|
})]
|
|
@@ -22267,10 +22092,7 @@ var BottomSection = ({ data, qrCodeDataUrl }) => {
|
|
|
22267
22092
|
className: "flex flex-col gap-2 px-6 py-3 rounded-2xl bg-default/45",
|
|
22268
22093
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22269
22094
|
className: "flex items-center gap-2",
|
|
22270
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22271
|
-
icon: "lucide:heart",
|
|
22272
|
-
width: 28
|
|
22273
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22095
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { size: 28 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22274
22096
|
className: "text-foreground/40",
|
|
22275
22097
|
children: "获赞"
|
|
22276
22098
|
})]
|
|
@@ -22392,24 +22214,15 @@ var MusicInfoSection = ({ desc, musicId, userCount, createTime }) => {
|
|
|
22392
22214
|
className: "flex flex-col gap-2 text-[45px] text-muted font-light mb-2.5",
|
|
22393
22215
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22394
22216
|
className: "flex gap-2 items-center select-text",
|
|
22395
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22396
|
-
icon: "lucide:music",
|
|
22397
|
-
className: "w-11 h-11"
|
|
22398
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["音乐ID: ", musicId] })]
|
|
22217
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Music, { className: "w-11 h-11" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["音乐ID: ", musicId] })]
|
|
22399
22218
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22400
22219
|
className: "flex gap-2 items-center select-text",
|
|
22401
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22402
|
-
icon: "lucide:users",
|
|
22403
|
-
className: "w-11 h-11 text-follow"
|
|
22404
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [userCount, " 人使用过"] })]
|
|
22220
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { className: "w-11 h-11 text-follow" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [userCount, " 人使用过"] })]
|
|
22405
22221
|
})]
|
|
22406
22222
|
}),
|
|
22407
22223
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22408
22224
|
className: "flex items-center gap-2 text-[45px] text-muted font-light select-text",
|
|
22409
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22410
|
-
icon: "lucide:maximize",
|
|
22411
|
-
className: "w-11 h-11 text-time"
|
|
22412
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", createTime] })]
|
|
22225
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Maximize, { className: "w-11 h-11 text-time" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", createTime] })]
|
|
22413
22226
|
})
|
|
22414
22227
|
]
|
|
22415
22228
|
});
|
|
@@ -22441,31 +22254,19 @@ var MusicAuthorInfoSection = ({ avatarUrl, username, userShortId, totalFavorited
|
|
|
22441
22254
|
children: [
|
|
22442
22255
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22443
22256
|
className: "flex gap-2 items-center",
|
|
22444
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22445
|
-
icon: "lucide:hash",
|
|
22446
|
-
className: "w-8 h-8"
|
|
22447
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["ID: ", userShortId] })]
|
|
22257
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { className: "w-8 h-8" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["ID: ", userShortId] })]
|
|
22448
22258
|
}),
|
|
22449
22259
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22450
22260
|
className: "flex gap-2 items-center",
|
|
22451
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22452
|
-
icon: "lucide:heart",
|
|
22453
|
-
className: "w-8 h-8 text-like"
|
|
22454
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["获赞: ", totalFavorited] })]
|
|
22261
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { className: "w-8 h-8 text-like" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["获赞: ", totalFavorited] })]
|
|
22455
22262
|
}),
|
|
22456
22263
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22457
22264
|
className: "flex gap-2 items-center",
|
|
22458
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22459
|
-
icon: "lucide:user-plus",
|
|
22460
|
-
className: "w-8 h-8"
|
|
22461
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["关注: ", followingCount] })]
|
|
22265
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UserPlus, { className: "w-8 h-8" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["关注: ", followingCount] })]
|
|
22462
22266
|
}),
|
|
22463
22267
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22464
22268
|
className: "flex gap-2 items-center",
|
|
22465
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22466
|
-
icon: "lucide:users",
|
|
22467
|
-
className: "w-8 h-8 text-follow"
|
|
22468
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["粉丝: ", fans] })]
|
|
22269
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { className: "w-8 h-8 text-follow" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["粉丝: ", fans] })]
|
|
22469
22270
|
})
|
|
22470
22271
|
]
|
|
22471
22272
|
})]
|
|
@@ -22481,10 +22282,7 @@ var MusicQRCodeSection = ({ qrCodeDataUrl }) => {
|
|
|
22481
22282
|
className: "flex flex-col-reverse items-center -mb-12 mr-18",
|
|
22482
22283
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22483
22284
|
className: "flex items-center gap-2 text-[45px] text-right mt-5 text-muted select-text",
|
|
22484
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22485
|
-
icon: "lucide:qr-code",
|
|
22486
|
-
className: "w-11 h-11"
|
|
22487
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "文件直链:永久有效" })]
|
|
22285
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(QrCode, { className: "w-11 h-11" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "文件直链:永久有效" })]
|
|
22488
22286
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
22489
22287
|
className: "p-2.5 rounded-sm border-[7px] border-dashed border-border",
|
|
22490
22288
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", {
|
|
@@ -22644,44 +22442,35 @@ var DouyinQrcodeImg = import_react.memo((props) => {
|
|
|
22644
22442
|
className: "flex flex-col items-center gap-4",
|
|
22645
22443
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
22646
22444
|
className: "p-5 rounded-3xl bg-surface/50 backdrop-blur-md",
|
|
22647
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22648
|
-
icon: "ri:tiktok-fill",
|
|
22649
|
-
className: "w-16 h-16"
|
|
22650
|
-
})
|
|
22445
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiTiktokFill, { size: 64 })
|
|
22651
22446
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22652
22447
|
className: "text-[28px] font-medium tracking-wide",
|
|
22653
22448
|
children: "打开抖音"
|
|
22654
22449
|
})]
|
|
22655
22450
|
}),
|
|
22656
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22657
|
-
|
|
22658
|
-
className: "
|
|
22451
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiArrowRightFill, {
|
|
22452
|
+
size: 40,
|
|
22453
|
+
className: "mt-8 opacity-40"
|
|
22659
22454
|
}),
|
|
22660
22455
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22661
22456
|
className: "flex flex-col items-center gap-4",
|
|
22662
22457
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
22663
22458
|
className: "p-5 rounded-3xl bg-surface/50 backdrop-blur-md",
|
|
22664
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22665
|
-
icon: "heroicons-outline:menu-alt-2",
|
|
22666
|
-
className: "w-16 h-16"
|
|
22667
|
-
})
|
|
22459
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu, { size: 64 })
|
|
22668
22460
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22669
22461
|
className: "text-[28px] font-medium tracking-wide",
|
|
22670
22462
|
children: "左上角菜单"
|
|
22671
22463
|
})]
|
|
22672
22464
|
}),
|
|
22673
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22674
|
-
|
|
22675
|
-
className: "
|
|
22465
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiArrowRightFill, {
|
|
22466
|
+
size: 40,
|
|
22467
|
+
className: "mt-8 opacity-40"
|
|
22676
22468
|
}),
|
|
22677
22469
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22678
22470
|
className: "flex flex-col items-center gap-4",
|
|
22679
22471
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
22680
22472
|
className: "p-5 rounded-3xl bg-surface/50 backdrop-blur-md",
|
|
22681
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22682
|
-
icon: "tabler:scan",
|
|
22683
|
-
className: "w-16 h-16"
|
|
22684
|
-
})
|
|
22473
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ScanLine, { size: 64 })
|
|
22685
22474
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22686
22475
|
className: "text-[28px] font-medium tracking-wide",
|
|
22687
22476
|
children: "顶部扫一扫"
|
|
@@ -22722,9 +22511,8 @@ var DouyinQrcodeImg = import_react.memo((props) => {
|
|
|
22722
22511
|
children: [
|
|
22723
22512
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
22724
22513
|
className: "flex items-center justify-center w-16 h-16 mb-2",
|
|
22725
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22726
|
-
|
|
22727
|
-
className: "w-16 h-16",
|
|
22514
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Smartphone, {
|
|
22515
|
+
size: 64,
|
|
22728
22516
|
style: { color: theme.text },
|
|
22729
22517
|
strokeWidth: 1
|
|
22730
22518
|
})
|
|
@@ -22745,9 +22533,8 @@ var DouyinQrcodeImg = import_react.memo((props) => {
|
|
|
22745
22533
|
children: [
|
|
22746
22534
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
22747
22535
|
className: "flex items-center justify-center w-16 h-16 mb-2",
|
|
22748
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22749
|
-
|
|
22750
|
-
className: "w-16 h-16",
|
|
22536
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ShieldCheck, {
|
|
22537
|
+
size: 64,
|
|
22751
22538
|
style: { color: theme.text },
|
|
22752
22539
|
strokeWidth: 1
|
|
22753
22540
|
})
|
|
@@ -22863,9 +22650,9 @@ var DouyinRecommendList = (props) => {
|
|
|
22863
22650
|
}),
|
|
22864
22651
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22865
22652
|
className: "absolute -bottom-3 -right-3 bg-emerald-500 text-white px-5 py-2 rounded-full border-[5px] border-white font-bold text-xl shadow-xl flex items-center gap-2",
|
|
22866
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22867
|
-
|
|
22868
|
-
className: "
|
|
22653
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiThumbUpFill, {
|
|
22654
|
+
size: 20,
|
|
22655
|
+
className: "fill-current"
|
|
22869
22656
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "推荐" })]
|
|
22870
22657
|
})
|
|
22871
22658
|
]
|
|
@@ -22890,9 +22677,9 @@ var DouyinRecommendList = (props) => {
|
|
|
22890
22677
|
className: "mt-6 flex flex-col items-center gap-2 text-emerald-500",
|
|
22891
22678
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22892
22679
|
className: "flex items-center gap-3",
|
|
22893
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22894
|
-
|
|
22895
|
-
className: "
|
|
22680
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiThumbUpFill, {
|
|
22681
|
+
size: 40,
|
|
22682
|
+
className: "fill-current"
|
|
22896
22683
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
22897
22684
|
className: "text-4xl font-bold",
|
|
22898
22685
|
children: "刚刚推荐了这个作品"
|
|
@@ -22986,9 +22773,8 @@ var DouyinRecommendList = (props) => {
|
|
|
22986
22773
|
className: "absolute inset-x-0 bottom-0 pt-40 pb-12 px-12 bg-linear-to-t from-black/90 via-black/50 to-transparent",
|
|
22987
22774
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22988
22775
|
className: "flex gap-6 items-start",
|
|
22989
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
22990
|
-
|
|
22991
|
-
width: 48,
|
|
22776
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Quote, {
|
|
22777
|
+
size: 48,
|
|
22992
22778
|
className: "text-emerald-500/90 shrink-0 rotate-180 mt-2"
|
|
22993
22779
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
22994
22780
|
className: "text-white text-4xl font-medium leading-relaxed line-clamp-3 drop-shadow-lg tracking-wide",
|
|
@@ -23001,24 +22787,24 @@ var DouyinRecommendList = (props) => {
|
|
|
23001
22787
|
className: "grid grid-cols-5 gap-6 z-10",
|
|
23002
22788
|
children: [
|
|
23003
22789
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$2, {
|
|
23004
|
-
icon:
|
|
22790
|
+
icon: RiHeart3Fill,
|
|
23005
22791
|
value: props.data.dianzan
|
|
23006
22792
|
}),
|
|
23007
22793
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$2, {
|
|
23008
|
-
icon:
|
|
22794
|
+
icon: RiThumbUpFill,
|
|
23009
22795
|
value: props.data.tuijian,
|
|
23010
22796
|
iconClassName: "text-emerald-500/80"
|
|
23011
22797
|
}),
|
|
23012
22798
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$2, {
|
|
23013
|
-
icon:
|
|
22799
|
+
icon: RiMessage3Fill,
|
|
23014
22800
|
value: props.data.pinglun
|
|
23015
22801
|
}),
|
|
23016
22802
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$2, {
|
|
23017
|
-
icon:
|
|
22803
|
+
icon: RiStarFill,
|
|
23018
22804
|
value: props.data.shouchang
|
|
23019
22805
|
}),
|
|
23020
22806
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$2, {
|
|
23021
|
-
icon:
|
|
22807
|
+
icon: RiShareForwardFill,
|
|
23022
22808
|
value: props.data.share
|
|
23023
22809
|
})
|
|
23024
22810
|
]
|
|
@@ -23031,11 +22817,11 @@ var DouyinRecommendList = (props) => {
|
|
|
23031
22817
|
});
|
|
23032
22818
|
};
|
|
23033
22819
|
/** 统计项小组件 */
|
|
23034
|
-
var StatItem$2 = ({ icon, value, iconClassName }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
22820
|
+
var StatItem$2 = ({ icon: IconComponent, value, iconClassName }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23035
22821
|
className: "flex flex-col items-center justify-center gap-2 py-6 rounded-3xl bg-surface",
|
|
23036
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23037
|
-
|
|
23038
|
-
className: `
|
|
22822
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(IconComponent, {
|
|
22823
|
+
size: 48,
|
|
22824
|
+
className: `opacity-90 ${iconClassName || "text-muted"}`
|
|
23039
22825
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
23040
22826
|
className: "text-2xl font-bold text-foreground/70 mt-1",
|
|
23041
22827
|
children: value
|
|
@@ -23046,23 +22832,23 @@ var StatItem$2 = ({ icon, value, iconClassName }) => /* @__PURE__ */ (0, import_
|
|
|
23046
22832
|
var pushTypeConfig = {
|
|
23047
22833
|
post: {
|
|
23048
22834
|
label: "作品更新",
|
|
23049
|
-
color: "bg-accent/5 text-accent border-accent
|
|
23050
|
-
icon:
|
|
22835
|
+
color: "bg-accent/5 text-accent/80 border-accent/12",
|
|
22836
|
+
icon: Clapperboard
|
|
23051
22837
|
},
|
|
23052
22838
|
favorite: {
|
|
23053
22839
|
label: "喜欢列表",
|
|
23054
|
-
color: "bg-
|
|
23055
|
-
icon:
|
|
22840
|
+
color: "bg-[#d94f50]/5 text-[#b04546] border-[#d94f50]/12",
|
|
22841
|
+
icon: Heart
|
|
23056
22842
|
},
|
|
23057
22843
|
recommend: {
|
|
23058
22844
|
label: "推荐列表",
|
|
23059
|
-
color: "bg-
|
|
23060
|
-
icon:
|
|
22845
|
+
color: "bg-[#c9943a]/5 text-[#a07d30] border-[#c9943a]/12",
|
|
22846
|
+
icon: Sparkles
|
|
23061
22847
|
},
|
|
23062
22848
|
live: {
|
|
23063
22849
|
label: "直播状态",
|
|
23064
|
-
color: "bg-
|
|
23065
|
-
icon:
|
|
22850
|
+
color: "bg-[#3aa876]/5 text-[#2e8a5e] border-[#3aa876]/12",
|
|
22851
|
+
icon: Radio
|
|
23066
22852
|
}
|
|
23067
22853
|
};
|
|
23068
22854
|
/**
|
|
@@ -23150,9 +22936,9 @@ var DouyinUserItem = (props) => {
|
|
|
23150
22936
|
children: props.username
|
|
23151
22937
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
23152
22938
|
className: "inline-flex items-center gap-1 px-2 py-1 rounded-md bg-surface/50 border border-border/50 text-xs font-mono font-bold text-muted",
|
|
23153
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23154
|
-
|
|
23155
|
-
className: "
|
|
22939
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, {
|
|
22940
|
+
size: 12,
|
|
22941
|
+
className: "opacity-70"
|
|
23156
22942
|
}), props.short_id]
|
|
23157
22943
|
})]
|
|
23158
22944
|
}),
|
|
@@ -23172,9 +22958,9 @@ var DouyinUserItem = (props) => {
|
|
|
23172
22958
|
const isActive = props.pushTypes?.includes(type);
|
|
23173
22959
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23174
22960
|
className: `px-2.5 py-3 rounded-xl border flex flex-col items-center gap-2.5 transition-colors duration-200 ${isActive ? config.color : "bg-surface/50 text-muted border-transparent dark:bg-surface/10"}`,
|
|
23175
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23176
|
-
|
|
23177
|
-
className:
|
|
22961
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(config.icon, {
|
|
22962
|
+
size: 20,
|
|
22963
|
+
className: isActive ? "" : "opacity-50"
|
|
23178
22964
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
23179
22965
|
className: "text-xs font-bold whitespace-nowrap tracking-wide",
|
|
23180
22966
|
style: { writingMode: "vertical-rl" },
|
|
@@ -23186,26 +22972,27 @@ var DouyinUserItem = (props) => {
|
|
|
23186
22972
|
className: "flex-1 flex flex-col gap-2",
|
|
23187
22973
|
children: [
|
|
23188
22974
|
{
|
|
23189
|
-
icon:
|
|
22975
|
+
icon: UsersRound,
|
|
23190
22976
|
value: props.fans,
|
|
23191
22977
|
label: "粉丝"
|
|
23192
22978
|
},
|
|
23193
22979
|
{
|
|
23194
|
-
icon:
|
|
22980
|
+
icon: Heart,
|
|
23195
22981
|
value: props.total_favorited,
|
|
23196
22982
|
label: "获赞"
|
|
23197
22983
|
},
|
|
23198
22984
|
{
|
|
23199
|
-
icon:
|
|
22985
|
+
icon: UserPlus,
|
|
23200
22986
|
value: props.following_count,
|
|
23201
22987
|
label: "关注"
|
|
23202
22988
|
}
|
|
23203
22989
|
].map((item, index) => {
|
|
22990
|
+
const StatIcon = item.icon;
|
|
23204
22991
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23205
22992
|
className: "flex items-center gap-3 px-4 py-2 rounded-lg bg-surface-secondary/30 border border-border/30 backdrop-blur-sm",
|
|
23206
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23207
|
-
|
|
23208
|
-
className: "
|
|
22993
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatIcon, {
|
|
22994
|
+
size: 20,
|
|
22995
|
+
className: "text-muted shrink-0"
|
|
23209
22996
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23210
22997
|
className: "flex items-baseline gap-2 flex-1",
|
|
23211
22998
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -23339,12 +23126,11 @@ var DouyinUserList = (props) => {
|
|
|
23339
23126
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23340
23127
|
className: "flex items-center gap-3 mb-4",
|
|
23341
23128
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
23342
|
-
className: "w-10 h-10 rounded-xl
|
|
23343
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("
|
|
23344
|
-
|
|
23345
|
-
|
|
23346
|
-
|
|
23347
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V10h14v10zm0-12H5V6h14v2zm-7 5h5v5h-5z" })
|
|
23129
|
+
className: "w-10 h-10 rounded-xl overflow-hidden shadow-lg border border-border/30",
|
|
23130
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", {
|
|
23131
|
+
src: props.data.groupInfo.groupAvatar,
|
|
23132
|
+
alt: "Group Avatar",
|
|
23133
|
+
className: "w-full h-full object-cover"
|
|
23348
23134
|
})
|
|
23349
23135
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
23350
23136
|
className: "font-mono text-sm font-bold tracking-widest uppercase opacity-50 text-foreground",
|
|
@@ -23423,10 +23209,10 @@ var VideoCard = ({ video }) => {
|
|
|
23423
23209
|
className: "absolute top-4 right-4 flex flex-col gap-2",
|
|
23424
23210
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23425
23211
|
className: "px-6 py-4 rounded-2xl text-4xl bg-white/50 text-black backdrop-blur-xs shadow-lg flex items-center gap-2",
|
|
23426
|
-
children: [video.is_video ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23212
|
+
children: [video.is_video ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AiOutlineVideoCamera, { size: 34 }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BiImage, { size: 34 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: video.is_video ? "视频" : "图集" })]
|
|
23427
23213
|
}), video.is_top && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23428
23214
|
className: "px-6 py-4 rounded-2xl text-4xl bg-warning text-black backdrop-blur-xs shadow-lg flex items-center gap-2",
|
|
23429
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23215
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(AiFillPushpin, { size: 34 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "置顶" })]
|
|
23430
23216
|
})]
|
|
23431
23217
|
}),
|
|
23432
23218
|
video.is_video && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -23435,7 +23221,7 @@ var VideoCard = ({ video }) => {
|
|
|
23435
23221
|
}),
|
|
23436
23222
|
video.music && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23437
23223
|
className: "absolute bottom-4 left-4 flex items-center gap-2 px-6 py-3 rounded-2xl text-xl bg-white/50 text-black backdrop-blur-xs shadow-lg",
|
|
23438
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23224
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(FaMusic, { size: 34 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
23439
23225
|
className: "max-w-80 truncate",
|
|
23440
23226
|
children: video.music.title
|
|
23441
23227
|
})]
|
|
@@ -23463,31 +23249,19 @@ var VideoCard = ({ video }) => {
|
|
|
23463
23249
|
children: [
|
|
23464
23250
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23465
23251
|
className: "flex items-center gap-2 text-foreground/70",
|
|
23466
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23467
|
-
icon: "ant-design:heart-filled",
|
|
23468
|
-
width: 34
|
|
23469
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formatCount$2(video.statistics.like_count) })]
|
|
23252
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(AiFillHeart, { size: 34 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formatCount$2(video.statistics.like_count) })]
|
|
23470
23253
|
}),
|
|
23471
23254
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23472
23255
|
className: "flex items-center gap-2 text-foreground/70",
|
|
23473
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23474
|
-
icon: "fa6:comment-dots",
|
|
23475
|
-
width: 34
|
|
23476
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formatCount$2(video.statistics.comment_count) })]
|
|
23256
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(FaCommentDots, { size: 34 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formatCount$2(video.statistics.comment_count) })]
|
|
23477
23257
|
}),
|
|
23478
23258
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23479
23259
|
className: "flex items-center gap-2 text-foreground/70",
|
|
23480
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23481
|
-
icon: "ant-design:star-filled",
|
|
23482
|
-
width: 34
|
|
23483
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formatCount$2(video.statistics.collect_count) })]
|
|
23260
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(AiFillStar, { size: 34 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formatCount$2(video.statistics.collect_count) })]
|
|
23484
23261
|
}),
|
|
23485
23262
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23486
23263
|
className: "flex items-center gap-2 text-foreground/70",
|
|
23487
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23488
|
-
icon: "ri:share-forward-fill",
|
|
23489
|
-
width: 34
|
|
23490
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formatCount$2(video.statistics.share_count) })]
|
|
23264
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiShareForwardFill, { size: 34 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formatCount$2(video.statistics.share_count) })]
|
|
23491
23265
|
})
|
|
23492
23266
|
]
|
|
23493
23267
|
})
|
|
@@ -23530,9 +23304,9 @@ var DouyinUserVideoList = (prpos) => {
|
|
|
23530
23304
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("h1", {
|
|
23531
23305
|
className: "text-6xl font-bold text-foreground",
|
|
23532
23306
|
children: prpos.data.user.nickname
|
|
23533
|
-
}), prpos.data.user.verified && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23534
|
-
|
|
23535
|
-
className: "text-
|
|
23307
|
+
}), prpos.data.user.verified && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiVerifiedBadgeFill, {
|
|
23308
|
+
size: 40,
|
|
23309
|
+
className: "text-accent"
|
|
23536
23310
|
})]
|
|
23537
23311
|
}),
|
|
23538
23312
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
@@ -23540,17 +23314,14 @@ var DouyinUserVideoList = (prpos) => {
|
|
|
23540
23314
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
23541
23315
|
className: "flex items-center gap-2",
|
|
23542
23316
|
children: [
|
|
23543
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23317
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(FaTiktok, { size: 24 }),
|
|
23544
23318
|
" 抖音号:",
|
|
23545
23319
|
prpos.data.user.short_id
|
|
23546
23320
|
]
|
|
23547
23321
|
}), prpos.data.user.ip_location && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
23548
23322
|
className: "flex items-center gap-1",
|
|
23549
23323
|
children: [
|
|
23550
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23551
|
-
icon: "material-symbols:location-on",
|
|
23552
|
-
className: "text-3xl"
|
|
23553
|
-
}),
|
|
23324
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MdLocationOn, { size: 28 }),
|
|
23554
23325
|
" ",
|
|
23555
23326
|
prpos.data.user.ip_location
|
|
23556
23327
|
]
|
|
@@ -23562,8 +23333,8 @@ var DouyinUserVideoList = (prpos) => {
|
|
|
23562
23333
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23563
23334
|
className: "flex items-center gap-2",
|
|
23564
23335
|
children: [
|
|
23565
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23566
|
-
|
|
23336
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiUserFollowLine, {
|
|
23337
|
+
size: 28,
|
|
23567
23338
|
className: "text-muted"
|
|
23568
23339
|
}),
|
|
23569
23340
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -23579,8 +23350,8 @@ var DouyinUserVideoList = (prpos) => {
|
|
|
23579
23350
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23580
23351
|
className: "flex items-center gap-2",
|
|
23581
23352
|
children: [
|
|
23582
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23583
|
-
|
|
23353
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(FaUserGroup, {
|
|
23354
|
+
size: 28,
|
|
23584
23355
|
className: "text-muted"
|
|
23585
23356
|
}),
|
|
23586
23357
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -23596,8 +23367,8 @@ var DouyinUserVideoList = (prpos) => {
|
|
|
23596
23367
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23597
23368
|
className: "flex items-center gap-2",
|
|
23598
23369
|
children: [
|
|
23599
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23600
|
-
|
|
23370
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(AiFillHeart, {
|
|
23371
|
+
size: 28,
|
|
23601
23372
|
className: "text-muted"
|
|
23602
23373
|
}),
|
|
23603
23374
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -23623,9 +23394,9 @@ var DouyinUserVideoList = (prpos) => {
|
|
|
23623
23394
|
className: "bg-surface/60 backdrop-blur-xl mb-8 rounded-4xl p-6 border border-border/50 shadow-sm flex justify-center items-center",
|
|
23624
23395
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("p", {
|
|
23625
23396
|
className: "text-3xl text-foreground/80 font-medium flex items-center gap-3",
|
|
23626
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23627
|
-
|
|
23628
|
-
className: "text-
|
|
23397
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MdLightbulbOutline, {
|
|
23398
|
+
size: 40,
|
|
23399
|
+
className: "text-warning"
|
|
23629
23400
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
23630
23401
|
"请在 ",
|
|
23631
23402
|
prpos.data.timeoutSeconds,
|
|
@@ -23815,31 +23586,19 @@ var DouyinVideoInfo = import_react.memo((props) => {
|
|
|
23815
23586
|
className: "flex items-center gap-14 shrink-0",
|
|
23816
23587
|
children: [
|
|
23817
23588
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$1, {
|
|
23818
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23819
|
-
icon: "lucide:heart",
|
|
23820
|
-
width: 48
|
|
23821
|
-
}),
|
|
23589
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { size: 48 }),
|
|
23822
23590
|
value: props.data.statistics.digg_count
|
|
23823
23591
|
}),
|
|
23824
23592
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$1, {
|
|
23825
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23826
|
-
icon: "lucide:message-circle",
|
|
23827
|
-
width: 48
|
|
23828
|
-
}),
|
|
23593
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, { size: 48 }),
|
|
23829
23594
|
value: props.data.statistics.comment_count
|
|
23830
23595
|
}),
|
|
23831
23596
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$1, {
|
|
23832
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23833
|
-
icon: "lucide:star",
|
|
23834
|
-
width: 48
|
|
23835
|
-
}),
|
|
23597
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Star, { size: 48 }),
|
|
23836
23598
|
value: props.data.statistics.collect_count
|
|
23837
23599
|
}),
|
|
23838
23600
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StatItem$1, {
|
|
23839
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23840
|
-
icon: "lucide:share-2",
|
|
23841
|
-
width: 48
|
|
23842
|
-
}),
|
|
23601
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Share2, { size: 48 }),
|
|
23843
23602
|
value: props.data.statistics.share_count
|
|
23844
23603
|
})
|
|
23845
23604
|
]
|
|
@@ -23963,50 +23722,32 @@ var InfoSection = (props) => {
|
|
|
23963
23722
|
children: [
|
|
23964
23723
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23965
23724
|
className: "flex gap-2 items-center",
|
|
23966
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23967
|
-
icon: "lucide:heart",
|
|
23968
|
-
className: "w-11 h-11 text-like"
|
|
23969
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.dianzan, "点赞"] })]
|
|
23725
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { className: "w-11 h-11 text-like" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.dianzan, "点赞"] })]
|
|
23970
23726
|
}),
|
|
23971
23727
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
23972
23728
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23973
23729
|
className: "flex gap-2 items-center",
|
|
23974
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23975
|
-
icon: "lucide:message-circle",
|
|
23976
|
-
className: "w-11 h-11 text-comment"
|
|
23977
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.pinglun, "评论"] })]
|
|
23730
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, { className: "w-11 h-11 text-comment" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.pinglun, "评论"] })]
|
|
23978
23731
|
}),
|
|
23979
23732
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
23980
23733
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23981
23734
|
className: "flex gap-2 items-center",
|
|
23982
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23983
|
-
icon: "lucide:bookmark",
|
|
23984
|
-
className: "w-11 h-11"
|
|
23985
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.shouchang, "收藏"] })]
|
|
23735
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Bookmark, { className: "w-11 h-11" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.shouchang, "收藏"] })]
|
|
23986
23736
|
}),
|
|
23987
23737
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "·" }),
|
|
23988
23738
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23989
23739
|
className: "flex gap-2 items-center",
|
|
23990
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
23991
|
-
icon: "lucide:share-2",
|
|
23992
|
-
className: "w-11 h-11 text-success"
|
|
23993
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.share, "分享"] })]
|
|
23740
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Share2, { className: "w-11 h-11 text-success" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [props.data.share, "分享"] })]
|
|
23994
23741
|
})
|
|
23995
23742
|
]
|
|
23996
23743
|
}),
|
|
23997
23744
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
23998
23745
|
className: "flex items-center gap-2 text-[45px] text-muted font-light select-text",
|
|
23999
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24000
|
-
icon: "lucide:clock",
|
|
24001
|
-
className: "w-11 h-11 text-time"
|
|
24002
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["发布于: ", props.data.create_time] })]
|
|
23746
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, { className: "w-11 h-11 text-time" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["发布于: ", props.data.create_time] })]
|
|
24003
23747
|
}),
|
|
24004
23748
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24005
23749
|
className: "flex items-center gap-2 text-[45px] text-muted font-light select-text",
|
|
24006
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24007
|
-
icon: "lucide:maximize",
|
|
24008
|
-
className: "w-11 h-11 text-time text-time"
|
|
24009
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
23750
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Maximize, { className: "w-11 h-11 text-time text-time" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["图片生成于: ", format(/* @__PURE__ */ new Date(), "yyyy-MM-dd HH:mm:ss")] })]
|
|
24010
23751
|
})
|
|
24011
23752
|
]
|
|
24012
23753
|
});
|
|
@@ -24037,10 +23778,7 @@ var UserInfoSection = (props) => {
|
|
|
24037
23778
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24038
23779
|
className: "flex gap-2 items-center text-4xl text-muted",
|
|
24039
23780
|
children: [
|
|
24040
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24041
|
-
icon: "lucide:hash",
|
|
24042
|
-
width: 32
|
|
24043
|
-
}),
|
|
23781
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Hash, { size: 32 }),
|
|
24044
23782
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
24045
23783
|
className: "select-text",
|
|
24046
23784
|
children: ["抖音号: ", props.data.抖音号]
|
|
@@ -24060,9 +23798,8 @@ var UserInfoSection = (props) => {
|
|
|
24060
23798
|
children: [
|
|
24061
23799
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24062
23800
|
className: "flex gap-1 items-center",
|
|
24063
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24064
|
-
|
|
24065
|
-
width: 28,
|
|
23801
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
23802
|
+
size: 28,
|
|
24066
23803
|
className: "text-like"
|
|
24067
23804
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
24068
23805
|
className: "text-muted",
|
|
@@ -24081,9 +23818,8 @@ var UserInfoSection = (props) => {
|
|
|
24081
23818
|
children: [
|
|
24082
23819
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24083
23820
|
className: "flex gap-1 items-center",
|
|
24084
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24085
|
-
|
|
24086
|
-
width: 28,
|
|
23821
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Eye, {
|
|
23822
|
+
size: 28,
|
|
24087
23823
|
className: "text-view"
|
|
24088
23824
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
24089
23825
|
className: "text-muted",
|
|
@@ -24102,9 +23838,8 @@ var UserInfoSection = (props) => {
|
|
|
24102
23838
|
children: [
|
|
24103
23839
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24104
23840
|
className: "flex gap-1 items-center",
|
|
24105
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24106
|
-
|
|
24107
|
-
width: 28,
|
|
23841
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, {
|
|
23842
|
+
size: 28,
|
|
24108
23843
|
className: "text-accent"
|
|
24109
23844
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
24110
23845
|
className: "text-muted",
|
|
@@ -24222,10 +23957,7 @@ var DouyinVideoWork = (props) => {
|
|
|
24222
23957
|
className: "px-16 pb-8",
|
|
24223
23958
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24224
23959
|
className: "gap-2 inline-flex items-center rounded-2xl bg-surface text-foreground/80 px-6 py-3",
|
|
24225
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24226
|
-
icon: "lucide:users",
|
|
24227
|
-
className: "w-7 h-7"
|
|
24228
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
23960
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Users, { className: "w-7 h-7" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
24229
23961
|
className: "text-3xl font-medium leading-none select-text text-foreground/80",
|
|
24230
23962
|
children: [coCreatorCount, "人共创"]
|
|
24231
23963
|
})]
|
|
@@ -24292,8 +24024,7 @@ var KuaishouQRCodeSection = ({ qrCodeDataUrl, type, imageLength }) => {
|
|
|
24292
24024
|
className: "object-contain w-full h-full"
|
|
24293
24025
|
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24294
24026
|
className: "flex flex-col justify-center items-center text-muted",
|
|
24295
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24296
|
-
icon: "lucide:qr-code",
|
|
24027
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(QrCode, {
|
|
24297
24028
|
width: 80,
|
|
24298
24029
|
className: "mb-4"
|
|
24299
24030
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -24439,9 +24170,8 @@ var KuaishouCommentItemComponent = ({ comment, isLast = false }) => {
|
|
|
24439
24170
|
className: "flex items-center space-x-6",
|
|
24440
24171
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24441
24172
|
className: "flex items-center space-x-2 transition-colors cursor-pointer hover:text-danger",
|
|
24442
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24443
|
-
|
|
24444
|
-
width: 60,
|
|
24173
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
24174
|
+
size: 60,
|
|
24445
24175
|
className: "stroke-current"
|
|
24446
24176
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
24447
24177
|
className: "text-[50px] select-text",
|
|
@@ -24449,9 +24179,8 @@ var KuaishouCommentItemComponent = ({ comment, isLast = false }) => {
|
|
|
24449
24179
|
})]
|
|
24450
24180
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
24451
24181
|
className: "flex items-center transition-colors cursor-pointer hover:text-accent",
|
|
24452
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24453
|
-
|
|
24454
|
-
width: 60,
|
|
24182
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, {
|
|
24183
|
+
size: 60,
|
|
24455
24184
|
className: "stroke-current"
|
|
24456
24185
|
})
|
|
24457
24186
|
})]
|
|
@@ -24497,9 +24226,8 @@ var KuaishouComment = import_react.memo((props) => {
|
|
|
24497
24226
|
className: "flex justify-center items-center py-20 text-muted",
|
|
24498
24227
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24499
24228
|
className: "text-center",
|
|
24500
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24501
|
-
|
|
24502
|
-
width: 64,
|
|
24229
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, {
|
|
24230
|
+
size: 64,
|
|
24503
24231
|
className: "mx-auto mb-4 text-muted/70"
|
|
24504
24232
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", {
|
|
24505
24233
|
className: "text-xl",
|
|
@@ -24516,8 +24244,8 @@ var KuaishouComment = import_react.memo((props) => {
|
|
|
24516
24244
|
var InlineCalloutCode = ({ children, className }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
24517
24245
|
className: `inline-flex items-center rounded-[0.55em] px-[0.48em] py-[0.18em] font-semibold ${className ?? ""}`.trim(),
|
|
24518
24246
|
style: {
|
|
24519
|
-
background: "color-mix(in oklab,
|
|
24520
|
-
color: "
|
|
24247
|
+
background: "color-mix(in oklab, #d4af37 14%, transparent)",
|
|
24248
|
+
color: "#d4af37"
|
|
24521
24249
|
},
|
|
24522
24250
|
children
|
|
24523
24251
|
});
|
|
@@ -24530,27 +24258,27 @@ var Changelog = import_react.memo((props) => {
|
|
|
24530
24258
|
const isDark = props.data.useDarkTheme ?? false;
|
|
24531
24259
|
const { qrCodeDataUrl } = props;
|
|
24532
24260
|
const backgroundColors = isDark ? {
|
|
24533
|
-
base: "#
|
|
24534
|
-
primary: "rgba(
|
|
24535
|
-
secondary: "rgba(
|
|
24536
|
-
accent: "rgba(
|
|
24537
|
-
wash: "rgba(
|
|
24538
|
-
tint: "rgba(
|
|
24539
|
-
noiseOpacity: .
|
|
24261
|
+
base: "#0a0a0a",
|
|
24262
|
+
primary: "rgba(212, 175, 55, 0.28)",
|
|
24263
|
+
secondary: "rgba(184, 134, 11, 0.24)",
|
|
24264
|
+
accent: "rgba(205, 133, 63, 0.20)",
|
|
24265
|
+
wash: "rgba(10, 10, 10, 0.85)",
|
|
24266
|
+
tint: "rgba(212, 175, 55, 0.12)",
|
|
24267
|
+
noiseOpacity: .2,
|
|
24540
24268
|
noiseBlend: "screen",
|
|
24541
|
-
inlineCodeBg: "rgba(255,
|
|
24542
|
-
inlineCodeText: "#
|
|
24269
|
+
inlineCodeBg: "rgba(255, 215, 0, 0.10)",
|
|
24270
|
+
inlineCodeText: "#f0c040"
|
|
24543
24271
|
} : {
|
|
24544
|
-
base: "#
|
|
24545
|
-
primary: "rgba(
|
|
24546
|
-
secondary: "rgba(
|
|
24547
|
-
accent: "rgba(
|
|
24548
|
-
wash: "rgba(
|
|
24549
|
-
tint: "rgba(
|
|
24550
|
-
noiseOpacity: .
|
|
24272
|
+
base: "#faf8f3",
|
|
24273
|
+
primary: "rgba(212, 175, 55, 0.20)",
|
|
24274
|
+
secondary: "rgba(184, 134, 11, 0.16)",
|
|
24275
|
+
accent: "rgba(205, 133, 63, 0.14)",
|
|
24276
|
+
wash: "rgba(250, 248, 243, 0.65)",
|
|
24277
|
+
tint: "rgba(212, 175, 55, 0.07)",
|
|
24278
|
+
noiseOpacity: .12,
|
|
24551
24279
|
noiseBlend: "multiply",
|
|
24552
|
-
inlineCodeBg: "rgba(
|
|
24553
|
-
inlineCodeText: "#
|
|
24280
|
+
inlineCodeBg: "rgba(184, 134, 11, 0.12)",
|
|
24281
|
+
inlineCodeText: "#8b6914"
|
|
24554
24282
|
};
|
|
24555
24283
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(DefaultLayout, {
|
|
24556
24284
|
...props,
|
|
@@ -24644,7 +24372,7 @@ var Changelog = import_react.memo((props) => {
|
|
|
24644
24372
|
})
|
|
24645
24373
|
}),
|
|
24646
24374
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24647
|
-
className: "relative px-
|
|
24375
|
+
className: "relative px-16 pt-5 pb-0 w-full max-w-none prose prose-lg prose-invert from-surface to-surface",
|
|
24648
24376
|
children: [
|
|
24649
24377
|
props.data.Tip === true ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24650
24378
|
className: "pt-32",
|
|
@@ -24693,7 +24421,7 @@ var Changelog = import_react.memo((props) => {
|
|
|
24693
24421
|
}),
|
|
24694
24422
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "进入" }),
|
|
24695
24423
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(InlineCalloutCode, {
|
|
24696
|
-
className: "text-[0.9em]",
|
|
24424
|
+
className: "text-[0.9em] font-mono",
|
|
24697
24425
|
children: "Karin WebUI"
|
|
24698
24426
|
}),
|
|
24699
24427
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "→" }),
|
|
@@ -24719,7 +24447,7 @@ var Changelog = import_react.memo((props) => {
|
|
|
24719
24447
|
}),
|
|
24720
24448
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "Karin 根目录运行" }),
|
|
24721
24449
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(InlineCalloutCode, {
|
|
24722
|
-
className: "text-[0.85em] whitespace-nowrap",
|
|
24450
|
+
className: "text-[0.85em] whitespace-nowrap font-mono",
|
|
24723
24451
|
children: [
|
|
24724
24452
|
"pnpm add karin-plugin-kkk@",
|
|
24725
24453
|
props.data.remoteVersion,
|
|
@@ -24733,7 +24461,7 @@ var Changelog = import_react.memo((props) => {
|
|
|
24733
24461
|
]
|
|
24734
24462
|
}) }) : null,
|
|
24735
24463
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
24736
|
-
className: "changelog-content",
|
|
24464
|
+
className: "changelog-content px-6",
|
|
24737
24465
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Markdown, {
|
|
24738
24466
|
rehypePlugins: [rehypeHighlight],
|
|
24739
24467
|
components: {
|
|
@@ -24753,10 +24481,7 @@ var Changelog = import_react.memo((props) => {
|
|
|
24753
24481
|
h3: ({ children, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("h3", {
|
|
24754
24482
|
className: "flex items-baseline gap-3 text-[3.2em] font-light mb-2 text-foreground",
|
|
24755
24483
|
...props,
|
|
24756
|
-
children: [children, /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
24757
|
-
icon: "lucide:corner-down-left",
|
|
24758
|
-
className: "w-[1em] h-[1em] text-foreground/10"
|
|
24759
|
-
})]
|
|
24484
|
+
children: [children, /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CornerDownLeft, { className: "w-[1em] h-[1em] text-foreground/10" })]
|
|
24760
24485
|
}),
|
|
24761
24486
|
h4: ({ children, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h4", {
|
|
24762
24487
|
className: "text-[2.64em] font-semibold mb-5 text-foreground",
|
|
@@ -24779,7 +24504,7 @@ var Changelog = import_react.memo((props) => {
|
|
|
24779
24504
|
children
|
|
24780
24505
|
}),
|
|
24781
24506
|
ul: ({ children, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("ul", {
|
|
24782
|
-
className: "pl-[5em] mb-[
|
|
24507
|
+
className: "pl-[5em] mb-[4em] list-disc text-foreground",
|
|
24783
24508
|
...props,
|
|
24784
24509
|
children
|
|
24785
24510
|
}),
|
|
@@ -24811,12 +24536,15 @@ var Changelog = import_react.memo((props) => {
|
|
|
24811
24536
|
...props,
|
|
24812
24537
|
children
|
|
24813
24538
|
}),
|
|
24814
|
-
a: ({ children, href, ...props }) =>
|
|
24815
|
-
|
|
24816
|
-
|
|
24817
|
-
|
|
24818
|
-
|
|
24819
|
-
|
|
24539
|
+
a: ({ children, href, ...props }) => {
|
|
24540
|
+
const isVersionLink = href?.includes("/compare/");
|
|
24541
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("a", {
|
|
24542
|
+
className: `inline-flex gap-3 items-baseline cursor-pointer font-medium hover:underline ${isVersionLink ? "text-success" : "text-foreground/50"}`,
|
|
24543
|
+
onClick: (e) => e.preventDefault(),
|
|
24544
|
+
...props,
|
|
24545
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children })
|
|
24546
|
+
});
|
|
24547
|
+
},
|
|
24820
24548
|
img: ({ ...props }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", {
|
|
24821
24549
|
className: "max-w-full h-auto rounded",
|
|
24822
24550
|
...props
|
|
@@ -24852,7 +24580,7 @@ var Changelog = import_react.memo((props) => {
|
|
|
24852
24580
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
24853
24581
|
className: "text-4xl text-foreground/60",
|
|
24854
24582
|
children: [
|
|
24855
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "
|
|
24583
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "扫码查看实际运行代码从" }),
|
|
24856
24584
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
24857
24585
|
className: "font-bold text-foreground/80",
|
|
24858
24586
|
children: [" v", props.data.localVersion]
|
|
@@ -24862,7 +24590,7 @@ var Changelog = import_react.memo((props) => {
|
|
|
24862
24590
|
className: "font-bold text-foreground/80",
|
|
24863
24591
|
children: [" v", props.data.remoteVersion]
|
|
24864
24592
|
}),
|
|
24865
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "
|
|
24593
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: " 的差异" })
|
|
24866
24594
|
]
|
|
24867
24595
|
})]
|
|
24868
24596
|
}),
|
|
@@ -25453,17 +25181,17 @@ var GlobalStatistics = (props) => {
|
|
|
25453
25181
|
className: "text-4xl font-black text-foreground/90",
|
|
25454
25182
|
children: group.groupName || `群组 ${group.groupId}`
|
|
25455
25183
|
}),
|
|
25456
|
-
index === 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
25457
|
-
|
|
25458
|
-
className: "
|
|
25184
|
+
index === 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiTrophyFill, {
|
|
25185
|
+
size: 48,
|
|
25186
|
+
className: "text-yellow-400 shrink-0"
|
|
25459
25187
|
}),
|
|
25460
|
-
index === 1 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
25461
|
-
|
|
25462
|
-
className: "
|
|
25188
|
+
index === 1 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiTrophyFill, {
|
|
25189
|
+
size: 48,
|
|
25190
|
+
className: "text-gray-400 shrink-0"
|
|
25463
25191
|
}),
|
|
25464
|
-
index === 2 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
25465
|
-
|
|
25466
|
-
className: "
|
|
25192
|
+
index === 2 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiTrophyFill, {
|
|
25193
|
+
size: 48,
|
|
25194
|
+
className: "text-orange-400 shrink-0"
|
|
25467
25195
|
})
|
|
25468
25196
|
]
|
|
25469
25197
|
}),
|
|
@@ -25797,9 +25525,9 @@ var GroupStatistics = (props) => {
|
|
|
25797
25525
|
})
|
|
25798
25526
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
25799
25527
|
className: "absolute inset-0 flex items-center justify-center pointer-events-none",
|
|
25800
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
25801
|
-
|
|
25802
|
-
className: "
|
|
25528
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RiPieChart2Fill, {
|
|
25529
|
+
size: 320,
|
|
25530
|
+
className: "opacity-10"
|
|
25803
25531
|
})
|
|
25804
25532
|
})]
|
|
25805
25533
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -26258,56 +25986,56 @@ var getLogLevelTheme = (level, isDark) => {
|
|
|
26258
25986
|
borderClass: "border-muted/20",
|
|
26259
25987
|
textClass: "text-muted",
|
|
26260
25988
|
iconClass: "text-muted",
|
|
26261
|
-
levelClass: isDark ? "text-muted/10" : "text-muted/
|
|
26262
|
-
dotClass: "bg-muted/
|
|
25989
|
+
levelClass: isDark ? "text-muted/10" : "text-muted/10",
|
|
25990
|
+
dotClass: "bg-muted/40"
|
|
26263
25991
|
},
|
|
26264
25992
|
"DEBU": {
|
|
26265
25993
|
bgClass: isDark ? "bg-cyan-400/10" : "bg-cyan-500/5",
|
|
26266
25994
|
borderClass: isDark ? "border-cyan-400/20" : "border-cyan-500/20",
|
|
26267
25995
|
textClass: isDark ? "text-cyan-400" : "text-cyan-600",
|
|
26268
25996
|
iconClass: isDark ? "text-cyan-400" : "text-cyan-600",
|
|
26269
|
-
levelClass: isDark ? "text-cyan-400/10" : "text-cyan-600/
|
|
26270
|
-
dotClass: isDark ? "bg-cyan-400/
|
|
25997
|
+
levelClass: isDark ? "text-cyan-400/10" : "text-cyan-600/10",
|
|
25998
|
+
dotClass: isDark ? "bg-cyan-400/40" : "bg-cyan-500/40"
|
|
26271
25999
|
},
|
|
26272
26000
|
"MARK": {
|
|
26273
26001
|
bgClass: isDark ? "bg-muted/10" : "bg-muted/5",
|
|
26274
26002
|
borderClass: "border-muted/20",
|
|
26275
26003
|
textClass: "text-muted",
|
|
26276
26004
|
iconClass: "text-muted",
|
|
26277
|
-
levelClass: isDark ? "text-muted/10" : "text-muted/
|
|
26278
|
-
dotClass: "bg-muted/
|
|
26005
|
+
levelClass: isDark ? "text-muted/10" : "text-muted/10",
|
|
26006
|
+
dotClass: "bg-muted/40"
|
|
26279
26007
|
},
|
|
26280
26008
|
"INFO": {
|
|
26281
26009
|
bgClass: "bg-success-soft",
|
|
26282
26010
|
borderClass: "border-success/25",
|
|
26283
26011
|
textClass: "text-success",
|
|
26284
26012
|
iconClass: "text-success",
|
|
26285
|
-
levelClass: isDark ? "text-success/10" : "text-success/
|
|
26286
|
-
dotClass: "bg-success/
|
|
26013
|
+
levelClass: isDark ? "text-success/10" : "text-success/10",
|
|
26014
|
+
dotClass: "bg-success/40"
|
|
26287
26015
|
},
|
|
26288
26016
|
"WARN": {
|
|
26289
26017
|
bgClass: "bg-warning-soft",
|
|
26290
26018
|
borderClass: "border-warning/25",
|
|
26291
26019
|
textClass: "text-warning",
|
|
26292
26020
|
iconClass: "text-warning",
|
|
26293
|
-
levelClass: isDark ? "text-warning/10" : "text-warning
|
|
26294
|
-
dotClass: "bg-warning/
|
|
26021
|
+
levelClass: isDark ? "text-warning/10" : "text-warning-soft",
|
|
26022
|
+
dotClass: "bg-warning/40"
|
|
26295
26023
|
},
|
|
26296
26024
|
"ERRO": {
|
|
26297
26025
|
bgClass: "bg-danger-soft",
|
|
26298
26026
|
borderClass: "border-danger/25",
|
|
26299
26027
|
textClass: "text-danger",
|
|
26300
26028
|
iconClass: "text-danger",
|
|
26301
|
-
levelClass: isDark ? "text-danger/10" : "text-danger/
|
|
26302
|
-
dotClass: "bg-danger/
|
|
26029
|
+
levelClass: isDark ? "text-danger/10" : "text-danger/10",
|
|
26030
|
+
dotClass: "bg-danger/40"
|
|
26303
26031
|
},
|
|
26304
26032
|
"FATA": {
|
|
26305
26033
|
bgClass: isDark ? "bg-pink-400/10" : "bg-pink-500/5",
|
|
26306
26034
|
borderClass: isDark ? "border-pink-400/25" : "border-pink-500/25",
|
|
26307
26035
|
textClass: isDark ? "text-pink-400" : "text-pink-500",
|
|
26308
26036
|
iconClass: isDark ? "text-pink-400" : "text-pink-500",
|
|
26309
|
-
levelClass: isDark ? "text-pink-400/10" : "text-pink-500/
|
|
26310
|
-
dotClass: isDark ? "bg-pink-400/
|
|
26037
|
+
levelClass: isDark ? "text-pink-400/10" : "text-pink-500/10",
|
|
26038
|
+
dotClass: isDark ? "bg-pink-400/40" : "bg-pink-500/40"
|
|
26311
26039
|
}
|
|
26312
26040
|
};
|
|
26313
26041
|
return themeMap[level] || themeMap["TRAC"];
|
|
@@ -26328,9 +26056,9 @@ var getAdapterLogo = (adapterName) => {
|
|
|
26328
26056
|
className: "h-20 w-auto",
|
|
26329
26057
|
alt: adapterName
|
|
26330
26058
|
});
|
|
26331
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
26332
|
-
|
|
26333
|
-
className: "
|
|
26059
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Puzzle, {
|
|
26060
|
+
size: 64,
|
|
26061
|
+
className: "text-danger/80"
|
|
26334
26062
|
});
|
|
26335
26063
|
};
|
|
26336
26064
|
var SectionTitle = ({ icon, en, zh, color }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
@@ -26632,9 +26360,9 @@ var handlerError = (props) => {
|
|
|
26632
26360
|
style: { backgroundColor: isDark ? "rgba(0,0,0,0.25)" : "rgba(255,255,255,0.6)" },
|
|
26633
26361
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
26634
26362
|
className: "flex items-center gap-6 mb-10",
|
|
26635
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
26636
|
-
|
|
26637
|
-
className: "
|
|
26363
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(QrCode, {
|
|
26364
|
+
size: 40,
|
|
26365
|
+
className: "text-warning"
|
|
26638
26366
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
26639
26367
|
className: "text-3xl font-semibold",
|
|
26640
26368
|
style: { color: accentColor },
|
|
@@ -26675,9 +26403,8 @@ var handlerError = (props) => {
|
|
|
26675
26403
|
data.triggerCommand && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
26676
26404
|
className: "mb-14",
|
|
26677
26405
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
26678
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
26679
|
-
|
|
26680
|
-
className: "w-9 h-9",
|
|
26406
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Terminal, {
|
|
26407
|
+
size: 36,
|
|
26681
26408
|
style: { color: mutedColor }
|
|
26682
26409
|
}),
|
|
26683
26410
|
en: "Trigger Command",
|
|
@@ -26696,10 +26423,9 @@ var handlerError = (props) => {
|
|
|
26696
26423
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
26697
26424
|
className: "mb-14",
|
|
26698
26425
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
26699
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
26700
|
-
|
|
26701
|
-
|
|
26702
|
-
style: { color: primaryColor }
|
|
26426
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CircleAlert, {
|
|
26427
|
+
size: 36,
|
|
26428
|
+
style: { color: mutedColor }
|
|
26703
26429
|
}),
|
|
26704
26430
|
en: "Stack Trace",
|
|
26705
26431
|
zh: "错误堆栈",
|
|
@@ -26720,9 +26446,8 @@ var handlerError = (props) => {
|
|
|
26720
26446
|
data.logs && data.logs.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
26721
26447
|
className: "mb-14",
|
|
26722
26448
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(SectionTitle, {
|
|
26723
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
26724
|
-
|
|
26725
|
-
className: "w-9 h-9",
|
|
26449
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(FileText, {
|
|
26450
|
+
size: 36,
|
|
26726
26451
|
style: { color: mutedColor }
|
|
26727
26452
|
}),
|
|
26728
26453
|
en: "Execution Logs",
|
|
@@ -26738,26 +26463,25 @@ var handlerError = (props) => {
|
|
|
26738
26463
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("legend", {
|
|
26739
26464
|
className: "flex items-center gap-2 ml-4",
|
|
26740
26465
|
children: [
|
|
26741
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: `w-
|
|
26466
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: `w-2 h-6 rounded-full -mr-1.5 ${theme.dotClass}` }),
|
|
26742
26467
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
26743
26468
|
className: "flex items-center gap-2 px-3",
|
|
26744
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
26745
|
-
|
|
26746
|
-
width: 18,
|
|
26469
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Clock, {
|
|
26470
|
+
size: 18,
|
|
26747
26471
|
className: theme.iconClass
|
|
26748
26472
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
26749
26473
|
className: `text-xl font-mono font-medium ${theme.textClass}`,
|
|
26750
26474
|
children: log.timestamp
|
|
26751
26475
|
})]
|
|
26752
26476
|
}),
|
|
26753
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: `w-
|
|
26477
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: `w-2 h-6 rounded-full -ml-1.5 ${theme.dotClass}` })
|
|
26754
26478
|
]
|
|
26755
26479
|
}),
|
|
26756
26480
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
26757
26481
|
className: "absolute bottom-2 right-6 pointer-events-none",
|
|
26758
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.
|
|
26759
|
-
className: `text-
|
|
26760
|
-
children: log.level
|
|
26482
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", {
|
|
26483
|
+
className: `text-6xl font-black uppercase leading-none tracking-tight ${theme.levelClass}`,
|
|
26484
|
+
children: [log.level, "」"]
|
|
26761
26485
|
})
|
|
26762
26486
|
}),
|
|
26763
26487
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
@@ -26960,21 +26684,16 @@ var handlerError = (props) => {
|
|
|
26960
26684
|
style: { color: mutedColor },
|
|
26961
26685
|
children: [data.buildTime && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
26962
26686
|
className: "flex items-center gap-3",
|
|
26963
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
26964
|
-
icon: "material-symbols:schedule-outline",
|
|
26965
|
-
className: "w-6 h-6"
|
|
26966
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
26687
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MdSchedule, { size: 24 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
|
|
26967
26688
|
"Built Time: ",
|
|
26968
26689
|
data.buildTime,
|
|
26969
|
-
"
|
|
26970
|
-
formatDistanceToNow(parse(data.buildTime, "yyyy年MM月dd日 HH:mm", /* @__PURE__ */ new Date()), { locale: zhCN })
|
|
26690
|
+
" 于 ",
|
|
26691
|
+
formatDistanceToNow(parse(data.buildTime, "yyyy年MM月dd日 HH:mm", /* @__PURE__ */ new Date()), { locale: zhCN }),
|
|
26692
|
+
"前"
|
|
26971
26693
|
] })]
|
|
26972
26694
|
}), data.commitHash && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
26973
26695
|
className: "flex items-center gap-3",
|
|
26974
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
26975
|
-
icon: "lucide:git-branch",
|
|
26976
|
-
className: "w-6 h-6"
|
|
26977
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["Commit Hash: ", data.commitHash] })]
|
|
26696
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(GitBranch, { size: 24 }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: ["Commit Hash: ", data.commitHash] })]
|
|
26978
26697
|
})]
|
|
26979
26698
|
}),
|
|
26980
26699
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
@@ -27064,15 +26783,158 @@ var handlerError = (props) => {
|
|
|
27064
26783
|
};
|
|
27065
26784
|
handlerError.displayName = "handlerError";
|
|
27066
26785
|
//#endregion
|
|
26786
|
+
//#region ../template/src/components/common/iconRegistry.ts
|
|
26787
|
+
/**
|
|
26788
|
+
* Maps old iconify icon name strings to their replacement React components.
|
|
26789
|
+
* Used by Help.tsx for dynamic icon resolution from plugin config data.
|
|
26790
|
+
*/
|
|
26791
|
+
var iconRegistry = {
|
|
26792
|
+
"lucide:alert-circle": CircleAlert,
|
|
26793
|
+
"lucide:alert-triangle": TriangleAlert,
|
|
26794
|
+
"lucide:bookmark": Bookmark,
|
|
26795
|
+
"lucide:bot": Bot,
|
|
26796
|
+
"lucide:box": Box,
|
|
26797
|
+
"lucide:calendar": Calendar,
|
|
26798
|
+
"lucide:camera": Camera,
|
|
26799
|
+
"lucide:check": Check,
|
|
26800
|
+
"lucide:check-circle": CircleCheckBig,
|
|
26801
|
+
"lucide:check-circle-2": CircleCheck,
|
|
26802
|
+
"lucide:circle-ellipsis": CircleEllipsis,
|
|
26803
|
+
"lucide:circle-fading-arrow-up": CircleFadingArrowUp,
|
|
26804
|
+
"lucide:clock": Clock,
|
|
26805
|
+
"lucide:code": Code,
|
|
26806
|
+
"lucide:copy": Copy,
|
|
26807
|
+
"lucide:corner-down-left": CornerDownLeft,
|
|
26808
|
+
"lucide:cpu": Cpu,
|
|
26809
|
+
"lucide:crown": Crown,
|
|
26810
|
+
"lucide:download": Download,
|
|
26811
|
+
"lucide:edit": SquarePen,
|
|
26812
|
+
"lucide:external-link": ExternalLink,
|
|
26813
|
+
"lucide:eye": Eye,
|
|
26814
|
+
"lucide:eye-off": EyeOff,
|
|
26815
|
+
"lucide:file-text": FileText,
|
|
26816
|
+
"lucide:file-video": FilePlay,
|
|
26817
|
+
"lucide:git-branch": GitBranch,
|
|
26818
|
+
"lucide:hash": Hash,
|
|
26819
|
+
"lucide:heart": Heart,
|
|
26820
|
+
"lucide:info": Info,
|
|
26821
|
+
"lucide:layout-template": LayoutTemplate,
|
|
26822
|
+
"lucide:loader-2": LoaderCircle,
|
|
26823
|
+
"lucide:map-pin": MapPin,
|
|
26824
|
+
"lucide:maximize": Maximize,
|
|
26825
|
+
"lucide:message-circle": MessageCircle,
|
|
26826
|
+
"lucide:monitor": Monitor,
|
|
26827
|
+
"lucide:moon": Moon,
|
|
26828
|
+
"lucide:music": Music,
|
|
26829
|
+
"lucide:palette": Palette,
|
|
26830
|
+
"lucide:pencil": Pencil,
|
|
26831
|
+
"lucide:play": Play,
|
|
26832
|
+
"lucide:plus": Plus,
|
|
26833
|
+
"lucide:puzzle": Puzzle,
|
|
26834
|
+
"lucide:qr-code": QrCode,
|
|
26835
|
+
"lucide:quote": Quote,
|
|
26836
|
+
"lucide:refresh-cw": RefreshCw,
|
|
26837
|
+
"lucide:rotate-ccw": RotateCcw,
|
|
26838
|
+
"lucide:save": Save,
|
|
26839
|
+
"lucide:scan-line": ScanLine,
|
|
26840
|
+
"lucide:search": Search,
|
|
26841
|
+
"lucide:settings-2": Settings2,
|
|
26842
|
+
"lucide:share-2": Share2,
|
|
26843
|
+
"lucide:shield": Shield,
|
|
26844
|
+
"lucide:shield-check": ShieldCheck,
|
|
26845
|
+
"lucide:shopping-bag": ShoppingBag,
|
|
26846
|
+
"lucide:smartphone": Smartphone,
|
|
26847
|
+
"lucide:sparkles": Sparkles,
|
|
26848
|
+
"lucide:square": Square,
|
|
26849
|
+
"lucide:star": Star,
|
|
26850
|
+
"lucide:sun": Sun,
|
|
26851
|
+
"lucide:terminal": Terminal,
|
|
26852
|
+
"lucide:trash-2": Trash2,
|
|
26853
|
+
"lucide:upload": Upload,
|
|
26854
|
+
"lucide:user": User,
|
|
26855
|
+
"lucide:user-plus": UserPlus,
|
|
26856
|
+
"lucide:users": Users,
|
|
26857
|
+
"lucide:wand-2": WandSparkles,
|
|
26858
|
+
"lucide:x": X,
|
|
26859
|
+
"lucide:zap": Zap,
|
|
26860
|
+
"mingcute:article-line": FileText,
|
|
26861
|
+
"mingcute:bell-ringing-fill": BellRing,
|
|
26862
|
+
"mingcute:bookmark-fill": Bookmark,
|
|
26863
|
+
"mingcute:chart-bar-fill": ChartColumn,
|
|
26864
|
+
"mingcute:comment-2-fill": MessageCircle,
|
|
26865
|
+
"mingcute:eye-fill": Eye,
|
|
26866
|
+
"mingcute:file-text-line": FileText,
|
|
26867
|
+
"mingcute:game-1-fill": Gamepad2,
|
|
26868
|
+
"mingcute:gift-fill": Gift,
|
|
26869
|
+
"mingcute:group-fill": UsersRound,
|
|
26870
|
+
"mingcute:group-line": UsersRound,
|
|
26871
|
+
"mingcute:hashtag-fill": Hash,
|
|
26872
|
+
"mingcute:hashtag-line": Hash,
|
|
26873
|
+
"mingcute:heart-line": Heart,
|
|
26874
|
+
"mingcute:live-line": Radio,
|
|
26875
|
+
"mingcute:pic-line": Image$1,
|
|
26876
|
+
"mingcute:radio-fill": Radio,
|
|
26877
|
+
"mingcute:share-forward-line": Share2,
|
|
26878
|
+
"mingcute:time-fill": Clock,
|
|
26879
|
+
"mingcute:user-add-line": UserPlus,
|
|
26880
|
+
"mingcute:video-line": Video,
|
|
26881
|
+
"ri:arrow-right-fill": RiArrowRightFill,
|
|
26882
|
+
"ri:group-line": RiGroupLine,
|
|
26883
|
+
"ri:hashtag": RiHashtag,
|
|
26884
|
+
"ri:heart-3-fill": RiHeart3Fill,
|
|
26885
|
+
"ri:heart-3-line": RiHeart3Line,
|
|
26886
|
+
"ri:heart-line": RiHeartLine,
|
|
26887
|
+
"ri:live-line": RiLiveLine,
|
|
26888
|
+
"ri:message-3-fill": RiMessage3Fill,
|
|
26889
|
+
"ri:pie-chart-2-fill": RiPieChart2Fill,
|
|
26890
|
+
"ri:share-forward-fill": RiShareForwardFill,
|
|
26891
|
+
"ri:star-fill": RiStarFill,
|
|
26892
|
+
"ri:star-line": RiStarLine,
|
|
26893
|
+
"ri:thumb-up-fill": RiThumbUpFill,
|
|
26894
|
+
"ri:tiktok-fill": RiTiktokFill,
|
|
26895
|
+
"ri:trophy-fill": RiTrophyFill,
|
|
26896
|
+
"ri:user-follow-line": RiUserFollowLine,
|
|
26897
|
+
"ri:verified-badge-fill": RiVerifiedBadgeFill,
|
|
26898
|
+
"ri:video-line": RiVideoLine,
|
|
26899
|
+
"material-symbols:fit-screen": MdFitScreen,
|
|
26900
|
+
"material-symbols:info-outline": MdInfoOutline,
|
|
26901
|
+
"material-symbols:lightbulb-outline": MdLightbulbOutline,
|
|
26902
|
+
"material-symbols:location-on": MdLocationOn,
|
|
26903
|
+
"material-symbols:schedule-outline": MdSchedule,
|
|
26904
|
+
"ant-design:heart-filled": AiFillHeart,
|
|
26905
|
+
"ant-design:pushpin-filled": AiFillPushpin,
|
|
26906
|
+
"ant-design:star-filled": AiFillStar,
|
|
26907
|
+
"ant-design:video-camera-outlined": AiOutlineVideoCamera,
|
|
26908
|
+
"fa6-solid:music": FaMusic,
|
|
26909
|
+
"fa6-solid:comment-dots": FaCommentDots,
|
|
26910
|
+
"fa6-solid:user-group": FaUserGroup,
|
|
26911
|
+
"fa6-brands:tiktok": FaTiktok,
|
|
26912
|
+
"simple-icons:github": SiGithub,
|
|
26913
|
+
"simple-icons:bilibili": SiBilibili,
|
|
26914
|
+
"simple-icons:openai": Sparkles,
|
|
26915
|
+
"simple-icons:anthropic": SiAnthropic,
|
|
26916
|
+
"tabler:message-circle": MessageCircle,
|
|
26917
|
+
"tabler:scan": ScanLine,
|
|
26918
|
+
"ph:play-fill": n,
|
|
26919
|
+
"ph:question-fill": m,
|
|
26920
|
+
"solar:calendar-linear": Calendar,
|
|
26921
|
+
"heroicons-outline:menu-alt-2": Menu,
|
|
26922
|
+
"bi:image": BiImage
|
|
26923
|
+
};
|
|
26924
|
+
var DEFAULT_FALLBACK_ICON = CircleQuestionMark;
|
|
26925
|
+
function resolveIcon(iconName) {
|
|
26926
|
+
return iconRegistry[iconName] ?? DEFAULT_FALLBACK_ICON;
|
|
26927
|
+
}
|
|
26928
|
+
//#endregion
|
|
27067
26929
|
//#region ../template/src/components/platforms/other/Help.tsx
|
|
27068
26930
|
/**
|
|
27069
|
-
*
|
|
26931
|
+
* 获取图标组件,兜底为默认图标
|
|
27070
26932
|
* @param icon - 图标:可以是字符串或带颜色的对象
|
|
27071
|
-
* @returns
|
|
26933
|
+
* @returns React 图标组件类型
|
|
27072
26934
|
*/
|
|
27073
26935
|
var getIconForItem = (icon) => {
|
|
27074
|
-
if (!icon) return "ph:question-fill";
|
|
27075
|
-
return typeof icon === "string" ? icon : icon.name;
|
|
26936
|
+
if (!icon) return resolveIcon("ph:question-fill");
|
|
26937
|
+
return resolveIcon(typeof icon === "string" ? icon : icon.name);
|
|
27076
26938
|
};
|
|
27077
26939
|
/**
|
|
27078
26940
|
* 菜单项组件
|
|
@@ -27083,8 +26945,7 @@ var MenuItemComponent = ({ item, themeColor }) => {
|
|
|
27083
26945
|
className: "flex flex-row gap-8 py-2 relative",
|
|
27084
26946
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
27085
26947
|
className: "pt-2 shrink-0 relative",
|
|
27086
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
27087
|
-
icon: getIconForItem(item.icon),
|
|
26948
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(getIconForItem(item.icon), {
|
|
27088
26949
|
className: "w-16 h-16 relative z-10 text-foreground",
|
|
27089
26950
|
style: { color: typeof item.icon === "object" && item.icon?.color ? item.icon.color : themeColor }
|
|
27090
26951
|
})
|
|
@@ -27426,8 +27287,7 @@ var QrLogin = import_react.memo((props) => {
|
|
|
27426
27287
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(GlowImage, {
|
|
27427
27288
|
glowStrength: .8,
|
|
27428
27289
|
blurRadius: 25,
|
|
27429
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
27430
|
-
icon: "lucide:smartphone",
|
|
27290
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Smartphone, {
|
|
27431
27291
|
className: "w-20 h-20",
|
|
27432
27292
|
style: { color: accentColor }
|
|
27433
27293
|
})
|
|
@@ -27462,8 +27322,7 @@ var QrLogin = import_react.memo((props) => {
|
|
|
27462
27322
|
background: isDark ? "linear-gradient(135deg, #f87171 0%, #dc2626 100%)" : "linear-gradient(135deg, #ef4444 0%, #dc2626 100%)",
|
|
27463
27323
|
boxShadow: isDark ? "0 0 40px rgba(248,113,113,0.6)" : "0 0 40px rgba(239,68,68,0.5)"
|
|
27464
27324
|
},
|
|
27465
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
27466
|
-
icon: "lucide:alert-triangle",
|
|
27325
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TriangleAlert, {
|
|
27467
27326
|
className: "w-16 h-16 text-white",
|
|
27468
27327
|
strokeWidth: 3
|
|
27469
27328
|
})
|
|
@@ -27559,8 +27418,7 @@ var QrLogin = import_react.memo((props) => {
|
|
|
27559
27418
|
})
|
|
27560
27419
|
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
27561
27420
|
className: "flex flex-col gap-8 justify-center items-center w-200 h-200",
|
|
27562
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
27563
|
-
icon: "lucide:qr-code",
|
|
27421
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(QrCode, {
|
|
27564
27422
|
className: "w-40 h-40",
|
|
27565
27423
|
style: { color: mutedColor }
|
|
27566
27424
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -27577,8 +27435,7 @@ var QrLogin = import_react.memo((props) => {
|
|
|
27577
27435
|
}),
|
|
27578
27436
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
27579
27437
|
className: "flex items-center gap-4",
|
|
27580
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
27581
|
-
icon: "lucide:smartphone",
|
|
27438
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Smartphone, {
|
|
27582
27439
|
className: "w-12 h-12",
|
|
27583
27440
|
style: { color: mutedColor }
|
|
27584
27441
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
@@ -27943,7 +27800,7 @@ var VersionWarning = (props) => {
|
|
|
27943
27800
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
27944
27801
|
className: "flex-1 flex flex-col justify-center",
|
|
27945
27802
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
27946
|
-
className: "rounded-
|
|
27803
|
+
className: "rounded-7xl p-12",
|
|
27947
27804
|
style: { backgroundColor: isDark ? "rgba(0,0,0,0.2)" : "rgba(255,255,255,0.5)" },
|
|
27948
27805
|
children: [
|
|
27949
27806
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
@@ -27992,7 +27849,7 @@ var VersionWarning = (props) => {
|
|
|
27992
27849
|
children: "需要/建议的版本"
|
|
27993
27850
|
}),
|
|
27994
27851
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Chip, {
|
|
27995
|
-
className: "text-
|
|
27852
|
+
className: "text-xl font-bold rounded-full px-4 py-2",
|
|
27996
27853
|
style: {
|
|
27997
27854
|
backgroundColor: accentColor,
|
|
27998
27855
|
color: bgColor
|
|
@@ -28020,7 +27877,7 @@ var VersionWarning = (props) => {
|
|
|
28020
27877
|
className: "flex items-center space-x-4 mb-6",
|
|
28021
27878
|
children: [
|
|
28022
27879
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
28023
|
-
className: "flex items-center justify-center w-10 h-10 rounded-
|
|
27880
|
+
className: "flex items-center justify-center w-10 h-10 rounded-xl",
|
|
28024
27881
|
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
28025
27882
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
28026
27883
|
className: "text-[28px] font-black",
|
|
@@ -28054,7 +27911,7 @@ var VersionWarning = (props) => {
|
|
|
28054
27911
|
children: "Web 控制台更新"
|
|
28055
27912
|
}),
|
|
28056
27913
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Chip, {
|
|
28057
|
-
className: "text-
|
|
27914
|
+
className: "text-2xl font-semibold px-5 py-3 rounded-full",
|
|
28058
27915
|
style: {
|
|
28059
27916
|
backgroundColor: isDark ? "rgba(251,146,60,0.2)" : "rgba(194,65,12,0.15)",
|
|
28060
27917
|
color: accentColor
|
|
@@ -28112,7 +27969,7 @@ var VersionWarning = (props) => {
|
|
|
28112
27969
|
className: "flex items-center space-x-4 mb-6",
|
|
28113
27970
|
children: [
|
|
28114
27971
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
28115
|
-
className: "flex items-center justify-center w-10 h-10 rounded-
|
|
27972
|
+
className: "flex items-center justify-center w-10 h-10 rounded-xl",
|
|
28116
27973
|
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
28117
27974
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
28118
27975
|
className: "text-[28px] font-black",
|
|
@@ -28120,8 +27977,7 @@ var VersionWarning = (props) => {
|
|
|
28120
27977
|
children: "2"
|
|
28121
27978
|
})
|
|
28122
27979
|
}),
|
|
28123
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28124
|
-
icon: "lucide:puzzle",
|
|
27980
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Puzzle, {
|
|
28125
27981
|
className: clsx("w-10 h-auto"),
|
|
28126
27982
|
style: { color: mutedColor }
|
|
28127
27983
|
}),
|
|
@@ -28131,7 +27987,7 @@ var VersionWarning = (props) => {
|
|
|
28131
27987
|
children: "使用 basic 插件命令更新"
|
|
28132
27988
|
}),
|
|
28133
27989
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Chip, {
|
|
28134
|
-
className: "text-
|
|
27990
|
+
className: "text-2xl font-semibold px-5 py-3 rounded-full",
|
|
28135
27991
|
style: {
|
|
28136
27992
|
backgroundColor: isDark ? "rgba(251,146,60,0.2)" : "rgba(194,65,12,0.15)",
|
|
28137
27993
|
color: accentColor
|
|
@@ -28192,7 +28048,7 @@ var VersionWarning = (props) => {
|
|
|
28192
28048
|
className: "flex items-center space-x-4 mb-6",
|
|
28193
28049
|
children: [
|
|
28194
28050
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
28195
|
-
className: "flex items-center justify-center w-10 h-10 rounded-
|
|
28051
|
+
className: "flex items-center justify-center w-10 h-10 rounded-xl",
|
|
28196
28052
|
style: { backgroundColor: isDark ? "rgba(251,146,60,0.15)" : "rgba(194,65,12,0.1)" },
|
|
28197
28053
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
28198
28054
|
className: "text-[28px] font-black",
|
|
@@ -28253,7 +28109,7 @@ var VersionWarning = (props) => {
|
|
|
28253
28109
|
style: { backgroundColor: isDark ? "rgba(251,146,60,0.2)" : "rgba(180,83,9,0.15)" }
|
|
28254
28110
|
}),
|
|
28255
28111
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
28256
|
-
className: "rounded-
|
|
28112
|
+
className: "rounded-4xl p-6 flex items-start space-x-5",
|
|
28257
28113
|
style: { backgroundColor: isDark ? "rgba(251,146,60,0.08)" : "rgba(194,65,12,0.08)" },
|
|
28258
28114
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", {
|
|
28259
28115
|
className: "w-10 h-10 mt-1 shrink-0",
|
|
@@ -28405,8 +28261,7 @@ var QRCodeSection = ({ qrCodeDataUrl }) => {
|
|
|
28405
28261
|
src: qrCodeDataUrl,
|
|
28406
28262
|
alt: "二维码",
|
|
28407
28263
|
className: "object-contain"
|
|
28408
|
-
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28409
|
-
icon: "lucide:qr-code",
|
|
28264
|
+
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(QrCode, {
|
|
28410
28265
|
width: 200,
|
|
28411
28266
|
className: "text-muted"
|
|
28412
28267
|
})
|
|
@@ -28544,9 +28399,8 @@ var CommentItemComponent = ({ comment, isLast = false }) => {
|
|
|
28544
28399
|
className: "flex items-center space-x-6",
|
|
28545
28400
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
28546
28401
|
className: "flex items-center space-x-2 transition-colors cursor-pointer",
|
|
28547
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28548
|
-
|
|
28549
|
-
width: 60,
|
|
28402
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
28403
|
+
size: 60,
|
|
28550
28404
|
className: comment.liked ? "text-red-500 fill-current" : "text-muted"
|
|
28551
28405
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
28552
28406
|
className: "text-[50px] select-text",
|
|
@@ -28554,9 +28408,8 @@ var CommentItemComponent = ({ comment, isLast = false }) => {
|
|
|
28554
28408
|
})]
|
|
28555
28409
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
28556
28410
|
className: "flex items-center transition-colors cursor-pointer",
|
|
28557
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28558
|
-
|
|
28559
|
-
width: 60,
|
|
28411
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, {
|
|
28412
|
+
size: 60,
|
|
28560
28413
|
className: "stroke-current text-muted"
|
|
28561
28414
|
})
|
|
28562
28415
|
})]
|
|
@@ -28606,9 +28459,8 @@ var CommentItemComponent = ({ comment, isLast = false }) => {
|
|
|
28606
28459
|
})]
|
|
28607
28460
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
28608
28461
|
className: "flex items-center space-x-2",
|
|
28609
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28610
|
-
|
|
28611
|
-
width: 40,
|
|
28462
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, {
|
|
28463
|
+
size: 40,
|
|
28612
28464
|
className: subComment.liked ? "text-red-500 fill-current" : "text-muted"
|
|
28613
28465
|
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
|
|
28614
28466
|
className: "text-[35px]",
|
|
@@ -28719,37 +28571,25 @@ var XiaohongshuNoteInfo = import_react.memo((props) => {
|
|
|
28719
28571
|
/** 统计数据配置 - 小红书特色配色 */
|
|
28720
28572
|
const statsData = (0, import_react.useMemo)(() => [
|
|
28721
28573
|
{
|
|
28722
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28723
|
-
icon: "lucide:heart",
|
|
28724
|
-
width: 48
|
|
28725
|
-
}),
|
|
28574
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Heart, { size: 48 }),
|
|
28726
28575
|
value: props.data.statistics.liked_count,
|
|
28727
28576
|
label: "点赞",
|
|
28728
28577
|
iconColor: "text-red-500"
|
|
28729
28578
|
},
|
|
28730
28579
|
{
|
|
28731
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28732
|
-
icon: "lucide:message-circle",
|
|
28733
|
-
width: 48
|
|
28734
|
-
}),
|
|
28580
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MessageCircle, { size: 48 }),
|
|
28735
28581
|
value: props.data.statistics.comment_count,
|
|
28736
28582
|
label: "评论",
|
|
28737
28583
|
iconColor: "text-blue-500"
|
|
28738
28584
|
},
|
|
28739
28585
|
{
|
|
28740
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28741
|
-
icon: "lucide:star",
|
|
28742
|
-
width: 48
|
|
28743
|
-
}),
|
|
28586
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Star, { size: 48 }),
|
|
28744
28587
|
value: props.data.statistics.collected_count,
|
|
28745
28588
|
label: "收藏",
|
|
28746
28589
|
iconColor: "text-yellow-500"
|
|
28747
28590
|
},
|
|
28748
28591
|
{
|
|
28749
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28750
|
-
icon: "lucide:share-2",
|
|
28751
|
-
width: 48
|
|
28752
|
-
}),
|
|
28592
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Share2, { size: 48 }),
|
|
28753
28593
|
value: props.data.statistics.share_count,
|
|
28754
28594
|
label: "分享",
|
|
28755
28595
|
iconColor: "text-green-500"
|
|
@@ -28783,16 +28623,10 @@ var XiaohongshuNoteInfo = import_react.memo((props) => {
|
|
|
28783
28623
|
className: "flex gap-8 items-center text-5xl text-muted",
|
|
28784
28624
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
28785
28625
|
className: "flex gap-2 items-center",
|
|
28786
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28787
|
-
icon: "lucide:calendar",
|
|
28788
|
-
width: 32
|
|
28789
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formattedDate })]
|
|
28626
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Calendar, { size: 32 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: formattedDate })]
|
|
28790
28627
|
}), props.data.ip_location && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
28791
28628
|
className: "flex gap-2 items-center",
|
|
28792
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28793
|
-
icon: "lucide:map-pin",
|
|
28794
|
-
width: 32
|
|
28795
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: props.data.ip_location })]
|
|
28629
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MapPin, { size: 32 }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: props.data.ip_location })]
|
|
28796
28630
|
})]
|
|
28797
28631
|
})
|
|
28798
28632
|
]
|
|
@@ -28855,10 +28689,7 @@ var XiaohongshuNoteInfo = import_react.memo((props) => {
|
|
|
28855
28689
|
className: "text-white bg-[#FF2442]",
|
|
28856
28690
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
|
|
28857
28691
|
className: "flex items-center",
|
|
28858
|
-
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
28859
|
-
icon: "lucide:external-link",
|
|
28860
|
-
className: "mr-1 w-4 h-4"
|
|
28861
|
-
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "查看原文" })]
|
|
28692
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(ExternalLink, { className: "mr-1 w-4 h-4" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "查看原文" })]
|
|
28862
28693
|
})
|
|
28863
28694
|
})
|
|
28864
28695
|
})]
|
|
@@ -29733,14 +29564,6 @@ var DevDataManager = class {
|
|
|
29733
29564
|
};
|
|
29734
29565
|
//#endregion
|
|
29735
29566
|
//#region ../template/src/main.ts
|
|
29736
|
-
addCollection(lucide_default);
|
|
29737
|
-
addCollection(ri_default);
|
|
29738
|
-
addCollection(ant_design_default);
|
|
29739
|
-
addCollection(tabler_default);
|
|
29740
|
-
addCollection(simple_icons_default);
|
|
29741
|
-
addCollection(material_symbols_default);
|
|
29742
|
-
addCollection(mingcute_default);
|
|
29743
|
-
addCollection(solar_default);
|
|
29744
29567
|
var isPlainObject = (value) => {
|
|
29745
29568
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
29746
29569
|
};
|
|
@@ -36710,11 +36533,6 @@ var Bilibili = class extends Base {
|
|
|
36710
36533
|
dynamic_id: iddata.dynamic_id,
|
|
36711
36534
|
typeMode: "strict"
|
|
36712
36535
|
});
|
|
36713
|
-
const dynamicInfoCard = await this.amagi.bilibili.fetcher.fetchDynamicCard({
|
|
36714
|
-
dynamic_id: dynamicInfo.data.data.item.id_str,
|
|
36715
|
-
typeMode: "strict"
|
|
36716
|
-
});
|
|
36717
|
-
const dynamicCARD = JSON.parse(dynamicInfoCard.data.data.card.card);
|
|
36718
36536
|
const userProfileData = await this.amagi.bilibili.fetcher.fetchUserCard({
|
|
36719
36537
|
host_mid: dynamicInfo.data.data.item.modules.module_author.mid,
|
|
36720
36538
|
typeMode: "strict"
|
|
@@ -36822,7 +36640,6 @@ var Bilibili = class extends Base {
|
|
|
36822
36640
|
for (const item of temp) await Common.removeFile(item.filepath, true);
|
|
36823
36641
|
}
|
|
36824
36642
|
}
|
|
36825
|
-
const dynamicCARD = JSON.parse(dynamicInfoCard.data.data.card.card);
|
|
36826
36643
|
if ("topic" in dynamicInfo.data.data.item.modules.module_dynamic && dynamicInfo.data.data.item.modules.module_dynamic.topic !== null) {
|
|
36827
36644
|
const name = dynamicInfo.data.data.item.modules.module_dynamic.topic.name;
|
|
36828
36645
|
dynamicInfo.data.data.item.modules.module_dynamic.major.opus.summary.rich_text_nodes.unshift({
|
|
@@ -36834,7 +36651,7 @@ var Bilibili = class extends Base {
|
|
|
36834
36651
|
dynamicInfo.data.data.item.modules.module_dynamic.major.opus.summary.text = `${name}\n` + dynamicInfo.data.data.item.modules.module_dynamic.major.opus.summary.text;
|
|
36835
36652
|
}
|
|
36836
36653
|
this.e.reply(await Render(this.e, "bilibili/dynamic/DYNAMIC_TYPE_DRAW", {
|
|
36837
|
-
image_url:
|
|
36654
|
+
image_url: Object.values(dynamicInfo.data.data.item.modules.module_dynamic.major.opus.pics).filter((item) => typeof item?.url === "string").map((item) => ({ image_src: item.url })),
|
|
36838
36655
|
title: dynamicInfo.data.data.item.modules.module_dynamic.major.opus.title ?? void 0,
|
|
36839
36656
|
text: dynamicInfo.data.data.item.modules.module_dynamic.major ? buildBilibiliDynamicRichText(dynamicInfo.data.data.item.modules.module_dynamic.major.opus?.summary?.text ?? "", dynamicInfo.data.data.item.modules.module_dynamic.major.opus?.summary?.rich_text_nodes ?? []) : null,
|
|
36840
36657
|
dianzan: Count(dynamicInfo.data.data.item.modules.module_stat.like.count),
|
|
@@ -36924,12 +36741,7 @@ var Bilibili = class extends Base {
|
|
|
36924
36741
|
frame: dynamicInfo.data.data.item.orig.modules.module_author.pendant.image
|
|
36925
36742
|
};
|
|
36926
36743
|
break;
|
|
36927
|
-
case DynamicType.DRAW:
|
|
36928
|
-
const dynamicCARD2 = await this.amagi.bilibili.fetcher.fetchDynamicCard({
|
|
36929
|
-
dynamic_id: dynamicInfo.data.data.item.orig.id_str,
|
|
36930
|
-
typeMode: "strict"
|
|
36931
|
-
});
|
|
36932
|
-
const cardData = JSON.parse(dynamicCARD2.data.data.card.card);
|
|
36744
|
+
case DynamicType.DRAW:
|
|
36933
36745
|
if ("topic" in dynamicInfo.data.data.item.orig.modules.module_dynamic && dynamicInfo.data.data.item.orig.modules.module_dynamic.topic !== null) {
|
|
36934
36746
|
const name = dynamicInfo.data.data.item.orig.modules.module_dynamic.topic.name;
|
|
36935
36747
|
const origSummary = dynamicInfo.data.data.item.orig.modules.module_dynamic.major?.opus?.summary;
|
|
@@ -36939,7 +36751,9 @@ var Bilibili = class extends Base {
|
|
|
36939
36751
|
orig_text: name,
|
|
36940
36752
|
jump_url: "",
|
|
36941
36753
|
text: name,
|
|
36942
|
-
type: "topic"
|
|
36754
|
+
type: "topic",
|
|
36755
|
+
rid: "",
|
|
36756
|
+
style: { "1114514": "1919810" }
|
|
36943
36757
|
});
|
|
36944
36758
|
origSummary.text = `${name}\n` + (origSummary.text || "");
|
|
36945
36759
|
}
|
|
@@ -36950,12 +36764,11 @@ var Bilibili = class extends Base {
|
|
|
36950
36764
|
create_time: TimeFormatter.toDateTime(dynamicInfo.data.data.item.orig.modules.module_author.pub_ts),
|
|
36951
36765
|
avatar_url: dynamicInfo.data.data.item.orig.modules.module_author.face,
|
|
36952
36766
|
text: buildBilibiliDynamicRichText(dynamicInfo.data.data.item.orig.modules.module_dynamic.major.opus.summary.text, dynamicInfo.data.data.item.orig.modules.module_dynamic.major.opus.summary.rich_text_nodes),
|
|
36953
|
-
image_url:
|
|
36767
|
+
image_url: Object.values(dynamicInfo.data.data.item.orig.modules.module_dynamic.major.opus.pics).filter((item) => typeof item?.url === "string").map((item) => ({ image_src: item.url })),
|
|
36954
36768
|
decoration_card: generateDecorationCard(dynamicInfo.data.data.item.orig.modules.module_author.decoration_card),
|
|
36955
36769
|
frame: dynamicInfo.data.data.item.orig.modules.module_author.pendant.image
|
|
36956
36770
|
};
|
|
36957
36771
|
break;
|
|
36958
|
-
}
|
|
36959
36772
|
case DynamicType.WORD:
|
|
36960
36773
|
if ("topic" in dynamicInfo.data.data.item.orig.modules.module_dynamic && dynamicInfo.data.data.item.orig.modules.module_dynamic.topic !== null) {
|
|
36961
36774
|
const name = dynamicInfo.data.data.item.orig.modules.module_dynamic.topic.name;
|
|
@@ -36996,7 +36809,6 @@ var Bilibili = class extends Base {
|
|
|
36996
36809
|
};
|
|
36997
36810
|
break;
|
|
36998
36811
|
}
|
|
36999
|
-
case DynamicType.FORWARD:
|
|
37000
36812
|
default:
|
|
37001
36813
|
logger.warn(`UP主:${userProfileData.data.data.card.name}的${logger.green("转发动态")}转发的原动态类型为「${logger.yellow(dynamicInfo.data.item.orig.type)}」暂未支持解析`);
|
|
37002
36814
|
break;
|
|
@@ -37031,7 +36843,6 @@ var Bilibili = class extends Base {
|
|
|
37031
36843
|
bvid,
|
|
37032
36844
|
typeMode: "strict"
|
|
37033
36845
|
});
|
|
37034
|
-
const dycrad = dynamicInfoCard.data.data.card && dynamicInfoCard.data.data.card.card && JSON.parse(dynamicInfoCard.data.data.card.card);
|
|
37035
36846
|
let staff = void 0;
|
|
37036
36847
|
if (INFODATA.data.data.staff && Array.isArray(INFODATA.data.data.staff)) {
|
|
37037
36848
|
const currentMid = dynamicInfo.data.data.item.modules.module_author.mid;
|
|
@@ -37055,8 +36866,8 @@ var Bilibili = class extends Base {
|
|
|
37055
36866
|
dianzan: Count(INFODATA.data.data.stat.like),
|
|
37056
36867
|
pinglun: Count(INFODATA.data.data.stat.reply),
|
|
37057
36868
|
share: Count(INFODATA.data.data.stat.share),
|
|
37058
|
-
view: Count(
|
|
37059
|
-
coin: Count(
|
|
36869
|
+
view: Count(INFODATA.data.data.stat.view),
|
|
36870
|
+
coin: Count(INFODATA.data.data.stat.coin),
|
|
37060
36871
|
duration_text: dynamicInfo.data.data.item.modules.module_dynamic.major.archive.duration_text,
|
|
37061
36872
|
create_time: TimeFormatter.toDateTime(INFODATA.data.data.ctime),
|
|
37062
36873
|
avatar_url: userProfileData.data.data.card.face,
|
|
@@ -37081,17 +36892,18 @@ var Bilibili = class extends Base {
|
|
|
37081
36892
|
host_mid: dynamicInfo.data.data.item.modules.module_author.mid,
|
|
37082
36893
|
typeMode: "strict"
|
|
37083
36894
|
});
|
|
36895
|
+
const liveInfo = JSON.parse(dynamicInfo.data.data.item.modules.module_dynamic.major.live_rcmd.content);
|
|
37084
36896
|
img$1 = await Render(this.e, "bilibili/dynamic/DYNAMIC_TYPE_LIVE_RCMD", {
|
|
37085
|
-
image_url:
|
|
37086
|
-
text: buildBilibiliDynamicRichText(
|
|
37087
|
-
liveinf: br$1(`${
|
|
36897
|
+
image_url: liveInfo.live_play_info.cover,
|
|
36898
|
+
text: buildBilibiliDynamicRichText(liveInfo.live_play_info.title, []),
|
|
36899
|
+
liveinf: br$1(`${liveInfo.live_play_info.area_name} | 房间号: ${liveInfo.live_play_info.room_id}`),
|
|
37088
36900
|
usernameMeta: getUsernameMetadata(userINFO.data.data.card),
|
|
37089
36901
|
avatar_url: userINFO.data.data.card.face,
|
|
37090
36902
|
frame: dynamicInfo.data.data.item.modules.module_author.pendant.image,
|
|
37091
36903
|
fans: Count(userINFO.data.data.follower),
|
|
37092
36904
|
create_time: TimeFormatter.toDateTime(dynamicInfo.data.data.item.modules.module_author.pub_ts),
|
|
37093
36905
|
now_time: TimeFormatter.now(),
|
|
37094
|
-
share_url: "https://live.bilibili.com/" +
|
|
36906
|
+
share_url: "https://live.bilibili.com/" + liveInfo.live_play_info.room_id,
|
|
37095
36907
|
dynamicTYPE: "直播动态"
|
|
37096
36908
|
});
|
|
37097
36909
|
this.e.reply(img$1);
|
|
@@ -37168,7 +36980,7 @@ var Bilibili = class extends Base {
|
|
|
37168
36980
|
if (Config.bilibili.sendContent.some((content) => content === "comment") && dynamicInfo.data.data.item.type !== DynamicType.LIVE_RCMD) {
|
|
37169
36981
|
const commentsData = await softFetch(() => this.amagi.bilibili.fetcher.fetchComments({
|
|
37170
36982
|
type: mapping_table(dynamicInfo.data.data.item.type),
|
|
37171
|
-
oid: oid(dynamicInfo.data,
|
|
36983
|
+
oid: oid(dynamicInfo.data.data.item.type, dynamicInfo.data),
|
|
37172
36984
|
number: Config.bilibili.numcomment,
|
|
37173
36985
|
typeMode: "strict"
|
|
37174
36986
|
}), [SOFT_ERROR_CODES.BILIBILI_COMMENTS_DISABLED]);
|
|
@@ -37436,19 +37248,6 @@ var qnd = {
|
|
|
37436
37248
|
127: "超高清 8K"
|
|
37437
37249
|
};
|
|
37438
37250
|
/**
|
|
37439
|
-
* 将给定的图片源数组转换为一个新的对象数组,每个对象包含单个图片源
|
|
37440
|
-
* @param pic 一个包含图片源字符串的数组
|
|
37441
|
-
* @returns 返回一个对象数组,每个对象包含单个图片源
|
|
37442
|
-
*/
|
|
37443
|
-
var cover = (pic) => {
|
|
37444
|
-
const imgArray = [];
|
|
37445
|
-
for (const i of pic) {
|
|
37446
|
-
const obj = { image_src: i.img_src };
|
|
37447
|
-
imgArray.push(obj);
|
|
37448
|
-
}
|
|
37449
|
-
return imgArray;
|
|
37450
|
-
};
|
|
37451
|
-
/**
|
|
37452
37251
|
* 生成装饰卡片数据
|
|
37453
37252
|
* @param decorate 装饰对象,包含卡片的URL和颜色信息
|
|
37454
37253
|
* @returns 返回装饰卡片数据对象或undefined
|
|
@@ -37558,11 +37357,17 @@ var mapping_table = (type) => {
|
|
|
37558
37357
|
for (const key in Array) if (Array[key].includes(type)) return parseInt(key, 10);
|
|
37559
37358
|
return 1;
|
|
37560
37359
|
};
|
|
37561
|
-
|
|
37562
|
-
|
|
37563
|
-
|
|
37564
|
-
|
|
37565
|
-
|
|
37360
|
+
/**
|
|
37361
|
+
* 根据动态类型获取对应的oid(对象ID),用于后续评论接口调用
|
|
37362
|
+
* @param dynamicType 动态类型
|
|
37363
|
+
* @param dynamicData 动态数据
|
|
37364
|
+
* @returns
|
|
37365
|
+
*/
|
|
37366
|
+
var oid = (dynamicType, dynamicData) => {
|
|
37367
|
+
switch (dynamicType) {
|
|
37368
|
+
case DynamicType.WORD:
|
|
37369
|
+
case DynamicType.FORWARD: return dynamicData.data.item.id_str;
|
|
37370
|
+
default: return dynamicData.data.item.basic.rid_str.toString();
|
|
37566
37371
|
}
|
|
37567
37372
|
};
|
|
37568
37373
|
/**
|
|
@@ -38350,11 +38155,6 @@ var Bilibilipush = class extends Base {
|
|
|
38350
38155
|
skip && logger.warn(`动态 https://t.bilibili.com/${dynamicId} 已被处理,跳过`);
|
|
38351
38156
|
let send_video = true;
|
|
38352
38157
|
let img = [];
|
|
38353
|
-
const dynamicCARDINFO = await this.amagi.bilibili.fetcher.fetchDynamicCard({
|
|
38354
|
-
dynamic_id: dynamicId,
|
|
38355
|
-
typeMode: "strict"
|
|
38356
|
-
});
|
|
38357
|
-
const dycrad = dynamicCARDINFO.data.data.card && dynamicCARDINFO.data.data.card.card && JSON.parse(dynamicCARDINFO.data.data.card.card);
|
|
38358
38158
|
this.injectBotToEventForRender(data[dynamicId].targets);
|
|
38359
38159
|
if (!skip) {
|
|
38360
38160
|
const userINFO = await this.amagi.bilibili.fetcher.fetchUserCard({
|
|
@@ -38377,7 +38177,7 @@ var Bilibilipush = class extends Base {
|
|
|
38377
38177
|
data[dynamicId].Dynamic_Data.modules.module_dynamic.major.opus.summary.text = `${name}\n\n` + data[dynamicId].Dynamic_Data.modules.module_dynamic.major?.opus?.summary?.text;
|
|
38378
38178
|
}
|
|
38379
38179
|
img = await Render(this.e, "bilibili/dynamic/DYNAMIC_TYPE_DRAW", {
|
|
38380
|
-
image_url:
|
|
38180
|
+
image_url: Object.values(data[dynamicId].Dynamic_Data.modules.module_dynamic.major?.opus?.pics ?? []).filter((item) => typeof item?.url === "string").map((item) => ({ image_src: item.url })),
|
|
38381
38181
|
title: data[dynamicId].Dynamic_Data.modules.module_dynamic.major?.opus?.title ?? void 0,
|
|
38382
38182
|
text: buildBilibiliDynamicRichText(data[dynamicId].Dynamic_Data.modules.module_dynamic.major?.opus?.summary?.text ?? "", data[dynamicId].Dynamic_Data.modules.module_dynamic.major?.opus?.summary?.rich_text_nodes ?? []),
|
|
38383
38183
|
dianzan: Count(data[dynamicId].Dynamic_Data.modules.module_stat.like.count),
|
|
@@ -38401,13 +38201,13 @@ var Bilibilipush = class extends Base {
|
|
|
38401
38201
|
break;
|
|
38402
38202
|
/** 处理纯文动态 */
|
|
38403
38203
|
case DynamicType.WORD: {
|
|
38404
|
-
if (data[dynamicId].Dynamic_Data.modules.module_dynamic.topic !== null) {
|
|
38405
|
-
const name = data[dynamicId].Dynamic_Data.modules.module_dynamic.topic.name;
|
|
38204
|
+
if ("topic" in data[dynamicId].Dynamic_Data.orig.modules.module_dynamic && data[dynamicId].Dynamic_Data.modules.module_dynamic.topic !== null) {
|
|
38205
|
+
const name = data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.topic.name;
|
|
38406
38206
|
data[dynamicId].Dynamic_Data.modules.module_dynamic.major?.opus.summary.rich_text_nodes.unshift({
|
|
38407
38207
|
orig_text: name,
|
|
38408
38208
|
text: name,
|
|
38409
38209
|
type: "topic",
|
|
38410
|
-
rid: data[dynamicId].Dynamic_Data.modules.module_dynamic.topic.id.toString()
|
|
38210
|
+
rid: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.topic.id.toString()
|
|
38411
38211
|
});
|
|
38412
38212
|
data[dynamicId].Dynamic_Data.modules.module_dynamic.major.opus.summary.text = `${name}\n\n` + data[dynamicId].Dynamic_Data.modules.module_dynamic.major?.opus?.summary?.text;
|
|
38413
38213
|
}
|
|
@@ -38469,8 +38269,8 @@ var Bilibilipush = class extends Base {
|
|
|
38469
38269
|
dianzan: Count(INFODATA.data.data.stat.like),
|
|
38470
38270
|
pinglun: Count(INFODATA.data.data.stat.reply),
|
|
38471
38271
|
share: Count(INFODATA.data.data.stat.share),
|
|
38472
|
-
view: Count(
|
|
38473
|
-
coin: Count(
|
|
38272
|
+
view: Count(INFODATA.data.data.stat.view),
|
|
38273
|
+
coin: Count(INFODATA.data.data.stat.coin),
|
|
38474
38274
|
duration_text: data[dynamicId].Dynamic_Data.modules.module_dynamic.major?.archive?.duration_text ?? "0:00",
|
|
38475
38275
|
create_time: TimeFormatter.toDateTime(data[dynamicId].Dynamic_Data.modules.module_author.pub_ts),
|
|
38476
38276
|
avatar_url: userINFO.data.data.card.face,
|
|
@@ -38489,21 +38289,23 @@ var Bilibilipush = class extends Base {
|
|
|
38489
38289
|
}
|
|
38490
38290
|
break;
|
|
38491
38291
|
/** 处理直播动态 */
|
|
38492
|
-
case DynamicType.LIVE_RCMD:
|
|
38292
|
+
case DynamicType.LIVE_RCMD: {
|
|
38293
|
+
const liveInfo = JSON.parse(data[dynamicId].Dynamic_Data.modules.module_dynamic.major.live_rcmd.content);
|
|
38493
38294
|
img = await Render(this.e, "bilibili/dynamic/DYNAMIC_TYPE_LIVE_RCMD", {
|
|
38494
|
-
image_url:
|
|
38495
|
-
text: buildBilibiliDynamicRichText(
|
|
38496
|
-
liveinf: br(`${
|
|
38295
|
+
image_url: liveInfo.live_play_info.cover,
|
|
38296
|
+
text: buildBilibiliDynamicRichText(liveInfo.live_play_info.title, []),
|
|
38297
|
+
liveinf: br(`${liveInfo.live_play_info.area_name} | 房间号: ${liveInfo.live_play_info.room_id}`),
|
|
38497
38298
|
usernameMeta: getUsernameMetadata(userINFO.data.data.card),
|
|
38498
38299
|
avatar_url: userINFO.data.data.card.face,
|
|
38499
38300
|
frame: data[dynamicId].Dynamic_Data.modules.module_author.pendant.image,
|
|
38500
38301
|
fans: Count(userINFO.data.data.follower),
|
|
38501
38302
|
create_time: TimeFormatter.toDateTime(data[dynamicId].Dynamic_Data.modules.module_author.pub_ts),
|
|
38502
38303
|
now_time: TimeFormatter.now(),
|
|
38503
|
-
share_url: "https://live.bilibili.com/" +
|
|
38304
|
+
share_url: "https://live.bilibili.com/" + liveInfo.live_play_info.room_id,
|
|
38504
38305
|
dynamicTYPE: "直播动态推送"
|
|
38505
38306
|
});
|
|
38506
38307
|
break;
|
|
38308
|
+
}
|
|
38507
38309
|
/** 处理转发动态 */
|
|
38508
38310
|
case DynamicType.FORWARD: {
|
|
38509
38311
|
if ("topic" in data[dynamicId].Dynamic_Data.modules.module_dynamic && data[dynamicId].Dynamic_Data.modules.module_dynamic.topic !== null) {
|
|
@@ -38540,12 +38342,7 @@ var Bilibilipush = class extends Base {
|
|
|
38540
38342
|
frame: data[dynamicId].Dynamic_Data.orig.modules.module_author.pendant.image
|
|
38541
38343
|
};
|
|
38542
38344
|
break;
|
|
38543
|
-
case DynamicType.DRAW:
|
|
38544
|
-
const dynamicCARD = await bilibiliFetcher.fetchDynamicCard({
|
|
38545
|
-
dynamic_id: data[dynamicId].Dynamic_Data.orig.id_str,
|
|
38546
|
-
typeMode: "strict"
|
|
38547
|
-
});
|
|
38548
|
-
const cardData = JSON.parse(dynamicCARD.data.data.card.card);
|
|
38345
|
+
case DynamicType.DRAW:
|
|
38549
38346
|
if ("topic" in data[dynamicId].Dynamic_Data.orig.modules.module_dynamic && data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.topic !== null) {
|
|
38550
38347
|
const name = data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.topic.name;
|
|
38551
38348
|
const origSummary = data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major?.opus?.summary;
|
|
@@ -38555,7 +38352,9 @@ var Bilibilipush = class extends Base {
|
|
|
38555
38352
|
orig_text: name,
|
|
38556
38353
|
text: name,
|
|
38557
38354
|
type: "topic",
|
|
38558
|
-
rid: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.topic.id.toString()
|
|
38355
|
+
rid: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.topic.id.toString(),
|
|
38356
|
+
jump_url: "114514",
|
|
38357
|
+
style: { "114514": "1919810" }
|
|
38559
38358
|
});
|
|
38560
38359
|
origSummary.text = `${name}\n` + (origSummary.text || "");
|
|
38561
38360
|
}
|
|
@@ -38566,12 +38365,11 @@ var Bilibilipush = class extends Base {
|
|
|
38566
38365
|
create_time: TimeFormatter.toDateTime(data[dynamicId].Dynamic_Data.orig.modules.module_author.pub_ts),
|
|
38567
38366
|
avatar_url: data[dynamicId].Dynamic_Data.orig.modules.module_author.face,
|
|
38568
38367
|
text: buildBilibiliDynamicRichText(data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.opus.summary.text, data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.opus.summary.rich_text_nodes),
|
|
38569
|
-
image_url:
|
|
38368
|
+
image_url: Object.values(data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.opus.pics).filter((item) => typeof item?.url === "string").map((item) => ({ image_src: item.url })),
|
|
38570
38369
|
decoration_card: generateDecorationCard(data[dynamicId].Dynamic_Data.orig.modules.module_author.decoration_card),
|
|
38571
38370
|
frame: data[dynamicId].Dynamic_Data.orig.modules.module_author.pendant.image
|
|
38572
38371
|
};
|
|
38573
38372
|
break;
|
|
38574
|
-
}
|
|
38575
38373
|
case DynamicType.WORD:
|
|
38576
38374
|
if ("topic" in data[dynamicId].Dynamic_Data.orig.modules.module_dynamic && data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.topic !== null) {
|
|
38577
38375
|
const name = data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.topic.name;
|
|
@@ -38612,10 +38410,11 @@ var Bilibilipush = class extends Base {
|
|
|
38612
38410
|
};
|
|
38613
38411
|
break;
|
|
38614
38412
|
}
|
|
38615
|
-
|
|
38616
|
-
|
|
38617
|
-
logger.warn(`UP主:${data[
|
|
38413
|
+
default: {
|
|
38414
|
+
const key = dynamicId;
|
|
38415
|
+
logger.warn(`UP主:${data[key].remark}的${logger.green("转发动态")}转发的原动态类型为「${logger.yellow(data[key].Dynamic_Data.orig?.type)}」暂未支持解析`);
|
|
38618
38416
|
break;
|
|
38417
|
+
}
|
|
38619
38418
|
}
|
|
38620
38419
|
img = await Render(this.e, "bilibili/dynamic/DYNAMIC_TYPE_FORWARD", {
|
|
38621
38420
|
text,
|
|
@@ -38674,10 +38473,12 @@ var Bilibilipush = class extends Base {
|
|
|
38674
38473
|
break;
|
|
38675
38474
|
}
|
|
38676
38475
|
/** 未处理的动态类型 */
|
|
38677
|
-
default:
|
|
38476
|
+
default: {
|
|
38678
38477
|
skip = true;
|
|
38679
|
-
|
|
38478
|
+
const key = dynamicId;
|
|
38479
|
+
logger.warn(`UP主:${data[key].remark}「${data[key].dynamic_type}」动态类型的暂未支持推送\n动态地址:${"https://t.bilibili.com/" + data[key].Dynamic_Data.id_str}\n可通过 https://github.com/ikenxuan/karin-plugin-kkk/issues/new/choose 提交反馈`);
|
|
38680
38480
|
break;
|
|
38481
|
+
}
|
|
38681
38482
|
}
|
|
38682
38483
|
}
|
|
38683
38484
|
for (const target of data[dynamicId].targets) {
|
|
@@ -38693,8 +38494,8 @@ var Bilibilipush = class extends Base {
|
|
|
38693
38494
|
let correctList;
|
|
38694
38495
|
let videoSize = "";
|
|
38695
38496
|
const playUrlData = await this.amagi.bilibili.fetcher.fetchVideoStreamUrl({
|
|
38696
|
-
avid:
|
|
38697
|
-
cid:
|
|
38497
|
+
avid: parseInt(data[dynamicId].Dynamic_Data.modules.module_dynamic.major.archive.aid),
|
|
38498
|
+
cid: data[dynamicId].Dynamic_Data.modules.module_dynamic.major.archive.cid,
|
|
38698
38499
|
typeMode: "strict"
|
|
38699
38500
|
});
|
|
38700
38501
|
/** 提取出视频流信息对象,并排除清晰度重复的视频流 */
|
|
@@ -38708,21 +38509,21 @@ var Bilibilipush = class extends Base {
|
|
|
38708
38509
|
/** 给视频信息对象删除不符合条件的视频流 */
|
|
38709
38510
|
correctList = await bilibiliProcessVideos({
|
|
38710
38511
|
accept_description: playUrlData.data.data.accept_description,
|
|
38711
|
-
bvid:
|
|
38512
|
+
bvid: data[dynamicId].Dynamic_Data.modules.module_dynamic.major.archive.bvid,
|
|
38712
38513
|
qn: Config.bilibili.push.pushVideoQuality,
|
|
38713
38514
|
maxAutoVideoSize: Config.bilibili.push.pushMaxAutoVideoSize
|
|
38714
38515
|
}, simplify, playUrlData.data.data.dash.audio[0].base_url);
|
|
38715
38516
|
playUrlData.data.data.dash.video = correctList.videoList;
|
|
38716
38517
|
playUrlData.data.data.accept_description = correctList.accept_description;
|
|
38717
38518
|
/** 获取第一个视频流的大小 */
|
|
38718
|
-
videoSize = await getvideosize(correctList.videoList[0].base_url, playUrlData.data.data.dash.audio[0].base_url,
|
|
38519
|
+
videoSize = await getvideosize(correctList.videoList[0].base_url, playUrlData.data.data.dash.audio[0].base_url, data[dynamicId].Dynamic_Data.modules.module_dynamic.major.archive.bvid);
|
|
38719
38520
|
if (Config.upload.usefilelimit && Number(videoSize) > Number(Config.upload.filelimit) && !Config.upload.compress) {
|
|
38720
38521
|
await karin$1.sendMsg(botId, Contact, [segment.text(`设定的最大上传大小为 ${Config.upload.filelimit}MB\n当前解析到的视频大小为 ${Number(videoSize)}MB\n视频太大了,还是去B站看吧~`), segment.reply(status.messageId)]);
|
|
38721
38522
|
break;
|
|
38722
38523
|
}
|
|
38723
38524
|
logger.mark(`当前处于自动推送状态,解析到的视频大小为 ${logger.yellow(Number(videoSize))} MB`);
|
|
38724
38525
|
const infoData = await this.amagi.bilibili.fetcher.fetchVideoInfo({
|
|
38725
|
-
bvid:
|
|
38526
|
+
bvid: data[dynamicId].Dynamic_Data.modules.module_dynamic.major.archive.bvid,
|
|
38726
38527
|
typeMode: "strict"
|
|
38727
38528
|
});
|
|
38728
38529
|
const mp4File = await downloadFile(playUrlData.data?.data?.dash?.video[0].base_url, {
|
|
@@ -39135,7 +38936,8 @@ var Bilibilipush = class extends Base {
|
|
|
39135
38936
|
renderOpt,
|
|
39136
38937
|
groupInfo: {
|
|
39137
38938
|
groupId: groupInfo.groupId || "",
|
|
39138
|
-
groupName: groupInfo.groupName || ""
|
|
38939
|
+
groupName: groupInfo.groupName || "",
|
|
38940
|
+
groupAvatar: groupInfo.avatar || ""
|
|
39139
38941
|
}
|
|
39140
38942
|
});
|
|
39141
38943
|
await this.e.reply(img);
|
|
@@ -40365,18 +40167,28 @@ var DouYin = class DouYin extends Base {
|
|
|
40365
40167
|
if (VideoData.data.aweme_detail?.suggest_words?.suggest_words) {
|
|
40366
40168
|
for (const item of VideoData.data.aweme_detail.suggest_words.suggest_words) if (item.words && item.scene === "comment_top_rec") for (const v of item.words) v.word && suggest.push(v.word);
|
|
40367
40169
|
}
|
|
40170
|
+
const aweme = VideoData.data.aweme_detail;
|
|
40368
40171
|
const img = await Render(this.e, "douyin/comment", {
|
|
40369
40172
|
Type: isArticle ? "文章" : isVideo ? "视频" : this.is_slides ? "合辑" : "图集",
|
|
40370
40173
|
CommentsData: douyinCommentsRes.CommentsData,
|
|
40371
|
-
CommentLength: Config.douyin.realCommentCount ?
|
|
40372
|
-
share_url: isVideo ? `https://aweme.snssdk.com/aweme/v1/play/?video_id=${
|
|
40174
|
+
CommentLength: Config.douyin.realCommentCount ? aweme.statistics.comment_count : douyinCommentsRes.CommentsData.length ?? 0,
|
|
40175
|
+
share_url: isVideo ? `https://aweme.snssdk.com/aweme/v1/play/?video_id=${aweme.video.play_addr.uri}&ratio=1080p&line=0` : aweme.share_url,
|
|
40373
40176
|
VideoSize: mp4size,
|
|
40374
40177
|
VideoFPS: FPS,
|
|
40375
40178
|
ImageLength: imagenum,
|
|
40376
|
-
Region:
|
|
40179
|
+
Region: aweme.region,
|
|
40377
40180
|
suggestWrod: suggest,
|
|
40378
40181
|
Resolution: isVideo && video ? `${video.bit_rate[0].play_addr.width} x ${video.bit_rate[0].play_addr.height}` : null,
|
|
40379
|
-
maxDepth: Config.douyin.subCommentDepth
|
|
40182
|
+
maxDepth: Config.douyin.subCommentDepth,
|
|
40183
|
+
Author: aweme.author.nickname,
|
|
40184
|
+
AuthorAvatar: aweme.author.avatar_thumb.url_list[0],
|
|
40185
|
+
Statistics: {
|
|
40186
|
+
digg_count: aweme.statistics.digg_count,
|
|
40187
|
+
comment_count: aweme.statistics.comment_count,
|
|
40188
|
+
share_count: aweme.statistics.share_count,
|
|
40189
|
+
collect_count: aweme.statistics.collect_count
|
|
40190
|
+
},
|
|
40191
|
+
CreateTime: aweme.create_time
|
|
40380
40192
|
});
|
|
40381
40193
|
const messageElements = [];
|
|
40382
40194
|
if (Config.douyin.commentImageCollection && douyinCommentsRes.image_url.length > 0) {
|
|
@@ -40611,17 +40423,31 @@ var DouYin = class DouYin extends Base {
|
|
|
40611
40423
|
web_rid: room_data.owner.web_rid,
|
|
40612
40424
|
typeMode: "strict"
|
|
40613
40425
|
});
|
|
40426
|
+
const liveItem = live_data.data.data[0];
|
|
40427
|
+
const user = UserInfoData.data.user;
|
|
40428
|
+
const streamExtra = liveItem.stream_url?.extra;
|
|
40429
|
+
const resolution = streamExtra ? `${streamExtra.width}x${streamExtra.height}` : liveItem.stream_url?.default_resolution || "";
|
|
40614
40430
|
const img = await Render(this.e, "douyin/live", {
|
|
40615
|
-
image_url:
|
|
40616
|
-
text:
|
|
40617
|
-
|
|
40618
|
-
|
|
40619
|
-
|
|
40620
|
-
|
|
40621
|
-
|
|
40622
|
-
|
|
40431
|
+
image_url: liveItem.cover?.url_list[0],
|
|
40432
|
+
text: liveItem.title,
|
|
40433
|
+
partition_title: live_data.data.partition_road_map?.partition?.title || "未知分区",
|
|
40434
|
+
room_id: room_data.owner.web_rid,
|
|
40435
|
+
online_viewers: Count(Number(liveItem.room_view_stats?.display_value)),
|
|
40436
|
+
total_viewers: liveItem.stats?.total_user_str || "刚开播无法获取",
|
|
40437
|
+
username: user.nickname,
|
|
40438
|
+
avater_url: user.avatar_larger.url_list[0],
|
|
40439
|
+
fans: Count(user.follower_count),
|
|
40623
40440
|
share_url: "https://live.douyin.com/" + room_data.owner.web_rid,
|
|
40624
|
-
dynamicTYPE: "直播间信息"
|
|
40441
|
+
dynamicTYPE: "直播间信息",
|
|
40442
|
+
like_count: Count(Number(liveItem.like_count || 0)),
|
|
40443
|
+
user_count_str: liveItem.user_count_str || "",
|
|
40444
|
+
resolution,
|
|
40445
|
+
signature: user.signature || "",
|
|
40446
|
+
city: user.city || "",
|
|
40447
|
+
aweme_count: Count(Number(user.aweme_count || 0)),
|
|
40448
|
+
following_count: Count(Number(user.following_count || 0)),
|
|
40449
|
+
total_favorited: Count(Number(user.total_favorited || 0)),
|
|
40450
|
+
has_commerce_goods: liveItem.has_commerce_goods || false
|
|
40625
40451
|
});
|
|
40626
40452
|
await this.e.reply(img);
|
|
40627
40453
|
} else this.e.reply(`「${UserInfoData.data.user.nickname}」\n未开播,正在休息中~`);
|
|
@@ -41987,7 +41813,8 @@ var DouYinpush = class extends Base {
|
|
|
41987
41813
|
renderOpt,
|
|
41988
41814
|
groupInfo: {
|
|
41989
41815
|
groupId: groupInfo.groupId || "",
|
|
41990
|
-
groupName: groupInfo.groupName || ""
|
|
41816
|
+
groupName: groupInfo.groupName || "",
|
|
41817
|
+
groupAvatar: groupInfo.avatar || ""
|
|
41991
41818
|
}
|
|
41992
41819
|
});
|
|
41993
41820
|
await this.e.reply(img);
|
|
@@ -44142,7 +43969,7 @@ var getChangelogImage = async (ctx, props) => {
|
|
|
44142
43969
|
remoteVersion: props.remoteVersion,
|
|
44143
43970
|
lagVersionCount,
|
|
44144
43971
|
buildTime,
|
|
44145
|
-
share_url: `https://karin-plugin-kkk-docs.vercel.app/
|
|
43972
|
+
share_url: `https://karin-plugin-kkk-docs.vercel.app/diff?old=${props.localVersion}&new=latest`
|
|
44146
43973
|
}) || null;
|
|
44147
43974
|
};
|
|
44148
43975
|
//#endregion
|
|
@@ -44286,7 +44113,6 @@ var update = karin$1.task("kkk-更新检测", "*/3 * * * *", Handler, {
|
|
|
44286
44113
|
//#endregion
|
|
44287
44114
|
//#region src/platform/bilibili/api/contents.ts
|
|
44288
44115
|
var import_lib = /* @__PURE__ */ __toESM(require_lib(), 1);
|
|
44289
|
-
var import_dist = /* @__PURE__ */ __toESM(require_dist(), 1);
|
|
44290
44116
|
/**
|
|
44291
44117
|
* B站内容管理 API
|
|
44292
44118
|
*/
|
|
@@ -47862,7 +47688,7 @@ var proxyOptions = {
|
|
|
47862
47688
|
changeOrigin: true
|
|
47863
47689
|
};
|
|
47864
47690
|
server.use(import_lib.default());
|
|
47865
|
-
server.use("/",
|
|
47691
|
+
server.use("/", createProxyMiddleware(proxyOptions));
|
|
47866
47692
|
if (process.env.NODE_ENV !== "test") checkPort(3780).then((isOpen) => {
|
|
47867
47693
|
if (isOpen) {
|
|
47868
47694
|
const s = server.listen(3780);
|