This commit is contained in:
谢宇宁
2026-11-05 23:05:32 +07:00
parent 6fb2b1e486
commit 35d5d5f8f8
747 changed files with 849639 additions and 5277 deletions
@@ -0,0 +1,18 @@
module.exports = [
"[externals]/node:dns [external] (node:dns, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("node:dns", () => require("node:dns"));
module.exports = mod;
}),
"[project]/src/instrumentation-node.ts [instrumentation] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
var __TURBOPACK__imported__module__$5b$externals$5d2f$node$3a$dns__$5b$external$5d$__$28$node$3a$dns$2c$__cjs$29$__ = __turbopack_context__.i("[externals]/node:dns [external] (node:dns, cjs)");
;
/** 仅由 instrumentation.ts 在 Node runtime 动态加载。 */ (0, __TURBOPACK__imported__module__$5b$externals$5d2f$node$3a$dns__$5b$external$5d$__$28$node$3a$dns$2c$__cjs$29$__["setDefaultResultOrder"])("ipv4first");
}),
];
//# sourceMappingURL=%5Broot-of-the-server%5D__0dp3pn7va0j9e._.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 10, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdjb_h5/src/instrumentation-node.ts"],"sourcesContent":["import { setDefaultResultOrder } from \"node:dns\";\n\n/** 仅由 instrumentation.ts 在 Node runtime 动态加载。 */\nsetDefaultResultOrder(\"ipv4first\");\n"],"names":[],"mappings":";AAAA;;AAEA,+CAA+C,GAC/C,IAAA,wIAAqB,EAAC"}}]
}
@@ -0,0 +1,843 @@
module.exports = [
(()=>{"use strict";return[
"[project]/src/app/robots--route-entry.js [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"GET",
()=>__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$app$2f$robots$2d2d$route$2d$entry$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__$3c$locals$3e$__["GET"]
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$app$2f$robots$2d2d$route$2d$entry$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/src/app/robots--route-entry.js [app-route] (ecmascript) <locals>");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$app$2f$robots$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/app/robots.ts [app-route] (ecmascript)");
}),
"[project]/src/app/robots--route-entry.js [app-route] (ecmascript) <locals>", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"GET",
()=>GET
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/server.js [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$app$2f$robots$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/app/robots.ts [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$build$2f$webpack$2f$loaders$2f$metadata$2f$resolve$2d$route$2d$data$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/build/webpack/loaders/metadata/resolve-route-data.js [app-route] (ecmascript)");
;
;
;
const contentType = "text/plain";
const cacheControl = "public, max-age=0, must-revalidate";
const fileType = "robots";
if (typeof __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$app$2f$robots$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["default"] !== 'function') {
throw new Error('Default export is missing in "./robots.ts"');
}
async function GET() {
const data = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$app$2f$robots$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["default"])();
const content = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$build$2f$webpack$2f$loaders$2f$metadata$2f$resolve$2d$route$2d$data$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__["resolveRouteData"])(data, fileType);
return new __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__["NextResponse"](content, {
headers: {
'Content-Type': contentType,
'Cache-Control': cacheControl
}
});
}
;
}),
"[project]/src/app/robots.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"default",
()=>robots
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/server.js [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$resolve$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/resolve.ts [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$site$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/site.ts [app-route] (ecmascript)");
;
;
;
function sitemapOrigin(foreverUrlAddr, requestOrigin) {
if (foreverUrlAddr.startsWith("http")) return foreverUrlAddr.replace(/\/$/, "");
const configured = ("TURBOPACK compile-time value", "http://localhost:26149")?.trim().replace(/\/$/, "");
return configured || requestOrigin;
}
async function robots() {
await (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__["connection"])();
const [site, requestOrigin] = await Promise.all([
(0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$resolve$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["getSiteSEOCached"])(),
(0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$site$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["getRequestOrigin"])()
]);
const origin = sitemapOrigin(site.foreverUrlAddr, requestOrigin);
return {
rules: {
userAgent: "*",
allow: "/",
disallow: [
"/search",
"/api/"
]
},
sitemap: `${origin}/sitemap.xml`
};
}
}),
"[project]/src/lib/api/app-config-server.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"getAppConfigInfo",
()=>getAppConfigInfo
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$server$2d$fetch$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/server-fetch.ts [app-route] (ecmascript)");
;
async function getAppConfigInfo() {
try {
const data = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$server$2d$fetch$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["serverFetchJson"])("/api/app/config/info", {
maxAttempts: 2,
timeoutMs: 10_000,
revalidate: 60,
tags: [
"app-config"
]
});
return {
data,
error: ""
};
} catch (reason) {
const error = reason instanceof Error ? reason.message : "公共配置加载失败";
if ("TURBOPACK compile-time truthy", 1) {
console.warn("[app-config]", error);
}
return {
data: null,
error
};
}
}
}),
"[project]/src/lib/api/client-headers.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"buildBrowserApiHeaders",
()=>buildBrowserApiHeaders,
"clientHeaders",
()=>clientHeaders,
"clientIp",
()=>clientIp
]);
const APP_VER = ("TURBOPACK compile-time value", "1.0.0")?.trim() || "1.0.0";
function clean(value) {
return value.replace(/[^\x20-\x7E]|[;=]/g, " ").trim();
}
/** 不依赖 node:net,避免被浏览器端打包。 */ function isIP(value) {
if (/^(?:\d{1,3}\.){3}\d{1,3}$/.test(value)) {
return value.split(".").every((part)=>{
const n = Number(part);
return String(n) === part && n >= 0 && n <= 255;
});
}
// 宽松校验 IPv6,够用来转发 X-Real-IP。
return value.includes(":") && /^[0-9a-fA-F:.]+$/.test(value);
}
function sysType(ua) {
const value = ua.toLowerCase();
if (value.includes("android")) return "h5_android";
if (value.includes("iphone") || value.includes("ipad") || value.includes("ipod")) return "h5_ios";
return "h5_pc";
}
function guessAndroidBrand(model, ua) {
const value = `${model} ${ua}`;
const brands = [
[
/Build\/HONOR|\bHONOR\b/i,
"Honor"
],
[
/Build\/HUAWEI|HUAWEI|HW-/i,
"Huawei"
],
[
/SM-|samsung|Galaxy/i,
"Samsung"
],
[
/Pixel/i,
"Google"
],
[
/Redmi|POCO|XiaoMi|\bMi\b/i,
"Xiaomi"
],
[
/OPPO|\bCPH\d{3,4}/i,
"OPPO"
],
[
/vivo|\bV\d{4}/i,
"vivo"
],
[
/OnePlus|ONEPLUS/i,
"OnePlus"
],
[
/realme|\bRMX\d{3,4}/i,
"realme"
]
];
return brands.find(([pattern])=>pattern.test(value))?.[1] || "";
}
function parseBrowser(ua) {
const edge = ua.match(/Edg\/([\d.]+)/i);
if (edge) return `Edge ${edge[1]}`;
const opera = ua.match(/(?:OPR|Opera)\/([\d.]+)/i);
if (opera) return `Opera ${opera[1]}`;
const chrome = ua.match(/Chrome\/([\d.]+)/i);
if (chrome && !/Edg\//i.test(ua)) return `Chrome ${chrome[1]}`;
const safari = ua.match(/Version\/([\d.]+).*Safari/i);
if (safari) return `Safari ${safari[1]}`;
const firefox = ua.match(/Firefox\/([\d.]+)/i);
if (firefox) return `Firefox ${firefox[1]}`;
const ie = ua.match(/(?:MSIE\s|Trident.*rv:)([\d.]+)/i);
if (ie) return `IE ${ie[1]}`;
return "";
}
/** 从浏览器 User-Agent 解析设备公共字段,口径对齐 jha-1040 useragent.ParseDeviceFromUA。 */ function parseDeviceFromUA(ua) {
const raw = ua.trim();
let deviceBrand = "";
let deviceModel = "";
let deviceType = "desktop";
let systemName = "Other";
let systemVersion = "";
if (/iPhone|iPad|iPod/i.test(raw)) {
systemName = "iOS";
deviceBrand = "Apple";
const ios = raw.match(/OS (\d+[_\d]*) like Mac OS X/i);
if (ios) systemVersion = ios[1].replace(/_/g, ".");
if (/iPad/i.test(raw)) {
deviceModel = "iPad";
deviceType = "tablet";
} else if (/iPod/i.test(raw)) {
deviceModel = "iPod";
deviceType = "mobile";
} else {
deviceModel = "iPhone";
deviceType = "mobile";
}
} else if (/Android/i.test(raw)) {
systemName = "Android";
const version = raw.match(/Android ([\d.]+)/i);
if (version) systemVersion = version[1];
const model = raw.match(/Android\s+[\d.]+;\s*([^;)]+?)(?:\s+Build\/|\))/i);
if (model?.[1]) deviceModel = model[1].trim();
deviceBrand = guessAndroidBrand(deviceModel, raw);
deviceType = /Mobile/i.test(raw) ? "mobile" : "tablet";
} else if (/Windows/i.test(raw)) {
systemName = "Windows";
const win = raw.match(/Windows NT ([\d.]+)/i);
if (win) systemVersion = win[1];
} else if (/Mac OS X|Macintosh/i.test(raw)) {
systemName = "macOS";
deviceBrand = "Apple";
deviceModel = "Mac";
const mac = raw.match(/Mac OS X ([\d_]+)/i);
if (mac) systemVersion = mac[1].replace(/_/g, ".");
} else if (/Linux/i.test(raw)) {
systemName = "Linux";
}
const devType = [
deviceBrand,
deviceModel,
deviceType
].map((part)=>part.trim()).filter(Boolean).join(" ");
return {
devType: devType || "desktop",
sysType: sysType(raw),
buildID: clean(parseBrowser(raw)) || "web",
deviceBrand,
deviceModel,
systemName,
systemVersion
};
}
function xUserAgent(ua, extra = {}) {
const info = parseDeviceFromUA(ua);
return [
extra.devID ? `DevID=${clean(extra.devID)}` : "",
`DevType=${clean(info.devType)}`,
`SysType=${info.sysType}`,
`Ver=${clean(APP_VER)}`,
`BuildID=${clean(info.buildID) || "web"}`,
`device_brand=${clean(info.deviceBrand)}`,
`device_model=${clean(info.deviceModel)}`,
`system_name=${clean(info.systemName)}`,
`system_version=${clean(info.systemVersion)}`,
`sid=${clean(extra.sid || "")}`
].filter((part)=>part !== "").join(";");
}
function sessionId(source) {
const cookies = new Map((source.get("cookie") || "").split(";").map((value)=>{
const index = value.indexOf("=");
if (index < 0) return [
"",
""
];
return [
value.slice(0, index).trim(),
value.slice(index + 1).trim()
];
}));
const sid = cookies.get("sid");
if (sid) return sid;
const token = cookies.get("_s_token_") || "";
if (token.startsWith("{")) {
try {
return String(JSON.parse(token).sid || "");
} catch {
/* ignore */ }
}
return token;
}
function buildBrowserApiHeaders(devID = "", sid = "") {
const ua = typeof navigator !== "undefined" ? navigator.userAgent : "";
return {
"X-User-Agent": xUserAgent(ua, {
devID,
sid
})
};
}
function clientIp(source, fallback = "") {
const candidates = [
source.get("x-real-ip"),
source.get("x-forwarded-for")?.split(",")[0],
fallback
];
for (const value of candidates){
const ip = value?.trim() || "";
if (ip && isIP(ip)) return ip;
}
return "";
}
function clientHeaders(source, overrides = {}) {
const result = {};
const ua = (overrides.userAgent || source?.get("user-agent") || "").trim();
if (ua) result["User-Agent"] = ua;
const incomingXua = source?.get("x-user-agent")?.trim() || "";
if (incomingXua) {
result["X-User-Agent"] = incomingXua;
} else if (ua) {
result["X-User-Agent"] = xUserAgent(ua, {
sid: source ? sessionId(source) : ""
});
} else {
Object.assign(result, buildBrowserApiHeaders(overrides.devID || "web-ssr"));
}
const ip = overrides.clientIp || (source ? clientIp(source) : "");
if (ip) result["X-Real-IP"] = ip;
return result;
}
}),
"[project]/src/lib/api/config.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"API_BASE_URL",
()=>API_BASE_URL,
"getServerApiBaseUrl",
()=>getServerApiBaseUrl,
"pointsAtThisServer",
()=>pointsAtThisServer
]);
/**
* 浏览器接口根地址。
* 留空时走同域 `/api/*`,由服务端转到 API_PROXY_TARGET。
*/ const DEFAULT_UPSTREAM = "https://sgdj-h5.80sygtm.com";
const raw = ("TURBOPACK compile-time value", "");
const API_BASE_URL = (raw ?? "").replace(/\/$/, "");
function pointsAtThisServer(base) {
try {
const url = new URL(base);
const loopback = url.hostname === "127.0.0.1" || url.hostname === "localhost" || url.hostname === "::1";
if (!loopback) return false;
const port = url.port || (url.protocol === "https:" ? "443" : "80");
const listen = process.env.PORT?.trim();
return !listen || port === listen;
} catch {
return false;
}
}
function getServerApiBaseUrl() {
const proxy = process.env.API_PROXY_TARGET?.trim().replace(/\/$/, "");
const configured = proxy || raw?.trim().replace(/\/$/, "") || "";
if (configured && !pointsAtThisServer(configured)) return configured;
return DEFAULT_UPSTREAM;
}
}),
"[project]/src/lib/api/server-fetch.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"isRequestAborted",
()=>isRequestAborted,
"serverFetchJson",
()=>serverFetchJson
]);
var __TURBOPACK__imported__module__$5b$externals$5d2f$node$3a$dns__$5b$external$5d$__$28$node$3a$dns$2c$__cjs$29$__ = __turbopack_context__.i("[externals]/node:dns [external] (node:dns, cjs)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$headers$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/headers.js [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$client$2d$headers$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/client-headers.ts [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$config$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/config.ts [app-route] (ecmascript)");
;
;
;
;
(0, __TURBOPACK__imported__module__$5b$externals$5d2f$node$3a$dns__$5b$external$5d$__$28$node$3a$dns$2c$__cjs$29$__["setDefaultResultOrder"])("ipv4first");
const MAX_ATTEMPTS = 3;
const RETRY_BASE_MS = 400;
function networkErrorCode(error) {
if (!(error instanceof Error)) return "";
const withCode = error;
if (withCode.code) return withCode.code;
if (withCode.cause?.code) return withCode.cause.code;
const nested = withCode.cause?.errors?.[0];
return nested?.code || "";
}
function isRequestAborted(error) {
if (!(error instanceof Error)) return false;
if (error.name === "TimeoutError") return false;
return error.name === "AbortError" || /this operation was aborted/i.test(error.message);
}
function isRetryableNetworkError(error) {
if (!(error instanceof Error)) return false;
if (isRequestAborted(error)) return false;
if (error.name === "TimeoutError" || error.name === "AbortError") return true;
const message = error.message.toLowerCase();
if (message.includes("fetch failed") || message.includes("network")) return true;
const code = networkErrorCode(error);
if (/ENETUNREACH|ECONNRESET|ECONNREFUSED|ETIMEDOUT|EAI_AGAIN|ENOTFOUND|UND_ERR/i.test(code)) {
return true;
}
const cause = error.cause;
if (Array.isArray(cause?.errors)) return true;
return false;
}
function wait(ms) {
return new Promise((resolve)=>setTimeout(resolve, ms));
}
function networkMessage(error) {
const code = networkErrorCode(error);
const message = error instanceof Error ? error.message : "";
if (error instanceof Error && (error.name === "TimeoutError" || /aborted due to timeout/i.test(message))) {
return "接口暂时不可用(服务端网络超时)";
}
if (/ETIMEDOUT|ENETUNREACH|ECONNREFUSED|fetch failed/i.test(`${code} ${message}`)) {
return "接口暂时不可用(服务端网络超时)";
}
return message || "请求失败";
}
async function requestIdentityHeaders() {
try {
return (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$client$2d$headers$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["clientHeaders"])(await (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$headers$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__["headers"])());
} catch {
return (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$client$2d$headers$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["buildBrowserApiHeaders"])("web-ssr");
}
}
async function serverFetchJson(pathWithQuery, options) {
const base = (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$config$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["getServerApiBaseUrl"])();
const url = `${base}${pathWithQuery}`;
const timeoutMs = options?.timeoutMs ?? 12_000;
const maxAttempts = options?.maxAttempts ?? MAX_ATTEMPTS;
const identity = await requestIdentityHeaders();
const nextInit = options?.revalidate !== undefined || options?.tags?.length ? {
...options.revalidate !== undefined ? {
revalidate: options.revalidate
} : {},
...options.tags?.length ? {
tags: options.tags
} : {}
} : undefined;
let lastError;
for(let attempt = 1; attempt <= maxAttempts; attempt++){
try {
const response = await fetch(url, {
headers: {
Accept: "application/json",
...identity,
...options?.headers
},
signal: AbortSignal.timeout(timeoutMs),
...nextInit ? {
next: nextInit
} : {}
});
const text = await response.text();
let payload = null;
try {
payload = text ? JSON.parse(text) : null;
} catch {
payload = null;
}
if (!payload || typeof payload.code !== "number") {
throw new Error(response.ok ? "接口响应格式异常" : `接口暂时不可用 (${response.status})`);
}
if (!response.ok || payload.code !== 200) {
throw new Error(payload.tip || payload.msg || "请求失败");
}
return payload.data;
} catch (error) {
lastError = error;
if (attempt >= maxAttempts || !isRetryableNetworkError(error)) break;
await wait(RETRY_BASE_MS * attempt);
}
}
throw new Error(networkMessage(lastError));
}
}),
"[project]/src/lib/seo/metadata.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"OG_DEFAULT_IMAGE",
()=>OG_DEFAULT_IMAGE,
"SITE_NAME",
()=>SITE_NAME,
"brandText",
()=>brandText,
"buildPageMetadata",
()=>buildPageMetadata,
"isPlaceholderSeoText",
()=>isPlaceholderSeoText,
"normalizeSEO",
()=>normalizeSEO,
"paginateSEO",
()=>paginateSEO,
"resolveShareImage",
()=>resolveShareImage,
"siteSEOFromConfig",
()=>siteSEOFromConfig,
"withSiteSuffix",
()=>withSiteSuffix
]);
const SITE_NAME = "黄果短剧";
/** 后台文案里残留的旧站名统一换成 SITE_NAME。 */ const LEGACY_SITE_NAMES = /91短剧|黄豆魔改短剧|黄豆短剧|熟果短剧/g;
function brandText(value) {
return (value || "").trim().replace(LEGACY_SITE_NAMES, SITE_NAME);
}
const OG_DEFAULT_IMAGE = "/og-default.png";
const PLACEHOLDER_SEO = /^(网站标题|网站描述|网站名称|导航标题)$/;
function cleanText(value) {
const text = value?.replace(/\s+/g, " ").trim() || "";
if (!text || PLACEHOLDER_SEO.test(text)) return "";
return text;
}
function cleanKeywords(value) {
const source = Array.isArray(value) ? value : value?.split(/[,,]/) || [];
const seen = new Set();
const keywords = [];
for (const item of source){
const text = cleanText(item);
const key = text.toLowerCase();
if (!text || seen.has(key)) continue;
seen.add(key);
keywords.push(text);
}
return keywords;
}
function isPlaceholderSeoText(value) {
return !cleanText(value);
}
function normalizeSEO(source, fallback = {}) {
return {
title: cleanText(source?.title) || cleanText(source?.webTitle) || cleanText(fallback.title) || SITE_NAME,
description: cleanText(source?.description) || cleanText(source?.desc) || cleanText(source?.webDescription) || cleanText(fallback.description) || "",
keywords: cleanKeywords(source?.keywords).length ? cleanKeywords(source?.keywords) : cleanKeywords(source?.keyword).length ? cleanKeywords(source?.keyword) : cleanKeywords(source?.keyworld).length ? cleanKeywords(source?.keyworld) : cleanKeywords(source?.webKeyworld).length ? cleanKeywords(source?.webKeyworld) : cleanKeywords(fallback.keywords)
};
}
function withSiteSuffix(title, siteName = SITE_NAME) {
const name = siteName.trim() || SITE_NAME;
if (!title || title === name || title.includes(name)) return title || name;
return `${title} - ${name}`;
}
function paginateSEO(seo, page = 1, siteName = SITE_NAME) {
if (!Number.isFinite(page) || page <= 1) return seo;
const marker = `第${page}页`;
return {
title: seo.title.includes(marker) ? seo.title : `${seo.title} ${marker}`,
description: seo.description ? `${seo.description} ${marker}` : seo.description,
keywords: seo.keywords.includes(marker) ? seo.keywords : [
...seo.keywords,
marker
]
};
}
function resolveShareImage(image) {
const value = image?.trim();
if (value && /^https?:\/\//i.test(value)) return value;
return OG_DEFAULT_IMAGE;
}
function siteSEOFromConfig(config) {
return normalizeSEO({
title: config?.webTitle,
description: config?.webDescription,
keywords: config?.webKeyworld
});
}
function buildPageMetadata(options) {
const siteName = options.siteName?.trim() || SITE_NAME;
// 标题直接用接口/页面 seoInfo,不再拼接「- 站点名」
const title = options.title.trim() || siteName;
const description = options.description?.trim() || undefined;
const keywords = options.keywords?.filter(Boolean);
const image = resolveShareImage(options.image);
return {
title,
description,
keywords: keywords?.length ? keywords.join(",") : undefined,
robots: options.robots,
alternates: {
canonical: options.canonical
},
openGraph: {
type: options.ogType === "website" || !options.ogType ? "website" : options.ogType,
locale: "zh_CN",
siteName,
title,
description,
url: options.canonical,
images: [
{
url: image,
alt: title
}
]
},
twitter: {
card: "summary_large_image",
title,
description,
images: [
image
]
}
};
}
}),
"[project]/src/lib/seo/resolve.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"configSiteName",
()=>configSiteName,
"configToSiteSEO",
()=>configToSiteSEO,
"getSiteSEOCached",
()=>getSiteSEOCached,
"mergeSEO",
()=>mergeSEO,
"resolveContentMetadata",
()=>resolveContentMetadata,
"resolvePageMetadata",
()=>resolvePageMetadata
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react.js [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$app$2d$config$2d$server$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/app-config-server.ts [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/metadata.ts [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$site$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/site.ts [app-route] (ecmascript)");
;
;
;
;
function mergeSEO(primary, fallback = {}) {
const main = (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["normalizeSEO"])(primary);
const extra = (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["normalizeSEO"])(null, fallback);
return {
title: main.title && main.title !== __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["SITE_NAME"] ? main.title : extra.title || main.title,
description: main.description || extra.description,
keywords: main.keywords.length ? main.keywords : extra.keywords
};
}
function configToSiteSEO(config) {
return (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["normalizeSEO"])({
title: config?.webTitle,
description: config?.webDescription,
keywords: config?.webKeyworld
}, {
title: ""
});
}
function configSiteName(name) {
return (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$site$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["getSiteName"])(name);
}
const getSiteSEOCached = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__["cache"])(async ()=>{
const { data } = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$app$2d$config$2d$server$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["getAppConfigInfo"])();
const config = data?.config;
return {
seo: mergeSEO(data?.seoInfo, configToSiteSEO(config)),
siteName: configSiteName(config?.webSiteName || data?.seoInfo?.webSiteName),
foreverUrlAddr: config?.foreverUrlAddr?.trim() || ""
};
});
async function resolvePageMetadata(options) {
const site = await getSiteSEOCached();
const pageSEO = options.siteFallback === false ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["normalizeSEO"])(options.seoInfo, {
title: options.fallbackTitle,
description: options.fallbackDescription,
keywords: options.fallbackKeywords
}) : mergeSEO(options.seoInfo, mergeSEO({
title: options.fallbackTitle,
description: options.fallbackDescription,
keywords: options.fallbackKeywords
}, site.seo));
const seo = (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["paginateSEO"])(pageSEO, options.page, site.siteName);
return (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["buildPageMetadata"])({
title: seo.title,
description: seo.description,
keywords: seo.keywords,
canonical: await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$site$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["absoluteRequestUrl"])(options.canonical),
robots: options.robots,
siteName: site.siteName,
ogType: options.ogType
});
}
function resolveContentMetadata(options) {
return resolvePageMetadata({
...options,
siteFallback: false
});
}
}),
"[project]/src/lib/seo/site.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"absoluteRequestUrl",
()=>absoluteRequestUrl,
"absoluteUrl",
()=>absoluteUrl,
"getRequestOrigin",
()=>getRequestOrigin,
"getSiteName",
()=>getSiteName,
"getSiteOrigin",
()=>getSiteOrigin
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$headers$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/headers.js [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/metadata.ts [app-route] (ecmascript)");
;
;
function getSiteOrigin() {
const configured = ("TURBOPACK compile-time value", "http://localhost:26149")?.trim().replace(/\/$/, "");
if (configured) return configured;
return "http://localhost:26149";
}
function getSiteName(name) {
const value = name?.trim();
return value || __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$metadata$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["SITE_NAME"];
}
async function getRequestOrigin() {
const configured = getSiteOrigin();
if (("TURBOPACK compile-time value", "http://localhost:26149")?.trim()) return configured;
if (process.env.NEXT_PHASE === "phase-production-build") return configured;
try {
const headerList = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$headers$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__["headers"])();
const host = headerList.get("x-forwarded-host") || headerList.get("host");
if (!host) return configured;
const forwarded = headerList.get("x-forwarded-proto");
const proto = forwarded || (host.startsWith("localhost") || host.startsWith("127.0.0.1") ? "http" : "https");
return `${proto}://${host.split(",")[0].trim()}`;
} catch {
return configured;
}
}
function absoluteUrl(path = "/", origin = getSiteOrigin()) {
if (/^https?:\/\//i.test(path)) return path;
const base = origin.replace(/\/$/, "");
if (!path || path === "/") return `${base}/`;
return `${base}${path.startsWith("/") ? path : `/${path}`}`;
}
async function absoluteRequestUrl(path = "/") {
return absoluteUrl(path, getSiteOrigin());
}
}),
]})(),
"[externals]/crypto [external] (crypto, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("crypto", () => require("crypto"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/@opentelemetry/api [external] (next/dist/compiled/@opentelemetry/api, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/@opentelemetry/api", () => require("next/dist/compiled/@opentelemetry/api"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/next-server/app-page-turbo.runtime.dev.js [external] (next/dist/compiled/next-server/app-page-turbo.runtime.dev.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/next-server/app-page-turbo.runtime.dev.js", () => require("next/dist/compiled/next-server/app-page-turbo.runtime.dev.js"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/next-server/app-route-turbo.runtime.dev.js [external] (next/dist/compiled/next-server/app-route-turbo.runtime.dev.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/next-server/app-route-turbo.runtime.dev.js", () => require("next/dist/compiled/next-server/app-route-turbo.runtime.dev.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/action-async-storage.external.js [external] (next/dist/server/app-render/action-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/action-async-storage.external.js", () => require("next/dist/server/app-render/action-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/after-task-async-storage.external.js [external] (next/dist/server/app-render/after-task-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/after-task-async-storage.external.js", () => require("next/dist/server/app-render/after-task-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/work-async-storage.external.js [external] (next/dist/server/app-render/work-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/work-async-storage.external.js", () => require("next/dist/server/app-render/work-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/work-unit-async-storage.external.js [external] (next/dist/server/app-render/work-unit-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/work-unit-async-storage.external.js", () => require("next/dist/server/app-render/work-unit-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/runtime-reacts.external.js [external] (next/dist/server/runtime-reacts.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/runtime-reacts.external.js", () => require("next/dist/server/runtime-reacts.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/shared/lib/no-fallback-error.external.js [external] (next/dist/shared/lib/no-fallback-error.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/shared/lib/no-fallback-error.external.js", () => require("next/dist/shared/lib/no-fallback-error.external.js"));
module.exports = mod;
}),
"[externals]/node:dns [external] (node:dns, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("node:dns", () => require("node:dns"));
module.exports = mod;
}),
"[externals]/node:stream [external] (node:stream, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("node:stream", () => require("node:stream"));
module.exports = mod;
}),
"[externals]/path [external] (path, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("path", () => require("path"));
module.exports = mod;
}),
];
//# sourceMappingURL=%5Broot-of-the-server%5D__0z0x9rv1e76b9._.js.map
File diff suppressed because one or more lines are too long
@@ -0,0 +1,469 @@
module.exports = [
(()=>{"use strict";return[
"[project]/src/app/api/[...path]/route.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"DELETE",
()=>DELETE,
"GET",
()=>GET,
"HEAD",
()=>HEAD,
"PATCH",
()=>PATCH,
"POST",
()=>POST,
"PUT",
()=>PUT
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$upstream$2d$proxy$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/upstream-proxy.ts [app-route] (ecmascript)");
;
const { GET, POST, PUT, PATCH, DELETE, HEAD } = (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$upstream$2d$proxy$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["createUpstreamHandlers"])("/api");
}),
"[project]/src/lib/api/client-headers.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"buildBrowserApiHeaders",
()=>buildBrowserApiHeaders,
"clientHeaders",
()=>clientHeaders,
"clientIp",
()=>clientIp
]);
const APP_VER = ("TURBOPACK compile-time value", "1.0.0")?.trim() || "1.0.0";
function clean(value) {
return value.replace(/[^\x20-\x7E]|[;=]/g, " ").trim();
}
/** 不依赖 node:net,避免被浏览器端打包。 */ function isIP(value) {
if (/^(?:\d{1,3}\.){3}\d{1,3}$/.test(value)) {
return value.split(".").every((part)=>{
const n = Number(part);
return String(n) === part && n >= 0 && n <= 255;
});
}
// 宽松校验 IPv6,够用来转发 X-Real-IP。
return value.includes(":") && /^[0-9a-fA-F:.]+$/.test(value);
}
function sysType(ua) {
const value = ua.toLowerCase();
if (value.includes("android")) return "h5_android";
if (value.includes("iphone") || value.includes("ipad") || value.includes("ipod")) return "h5_ios";
return "h5_pc";
}
function guessAndroidBrand(model, ua) {
const value = `${model} ${ua}`;
const brands = [
[
/Build\/HONOR|\bHONOR\b/i,
"Honor"
],
[
/Build\/HUAWEI|HUAWEI|HW-/i,
"Huawei"
],
[
/SM-|samsung|Galaxy/i,
"Samsung"
],
[
/Pixel/i,
"Google"
],
[
/Redmi|POCO|XiaoMi|\bMi\b/i,
"Xiaomi"
],
[
/OPPO|\bCPH\d{3,4}/i,
"OPPO"
],
[
/vivo|\bV\d{4}/i,
"vivo"
],
[
/OnePlus|ONEPLUS/i,
"OnePlus"
],
[
/realme|\bRMX\d{3,4}/i,
"realme"
]
];
return brands.find(([pattern])=>pattern.test(value))?.[1] || "";
}
function parseBrowser(ua) {
const edge = ua.match(/Edg\/([\d.]+)/i);
if (edge) return `Edge ${edge[1]}`;
const opera = ua.match(/(?:OPR|Opera)\/([\d.]+)/i);
if (opera) return `Opera ${opera[1]}`;
const chrome = ua.match(/Chrome\/([\d.]+)/i);
if (chrome && !/Edg\//i.test(ua)) return `Chrome ${chrome[1]}`;
const safari = ua.match(/Version\/([\d.]+).*Safari/i);
if (safari) return `Safari ${safari[1]}`;
const firefox = ua.match(/Firefox\/([\d.]+)/i);
if (firefox) return `Firefox ${firefox[1]}`;
const ie = ua.match(/(?:MSIE\s|Trident.*rv:)([\d.]+)/i);
if (ie) return `IE ${ie[1]}`;
return "";
}
/** 从浏览器 User-Agent 解析设备公共字段,口径对齐 jha-1040 useragent.ParseDeviceFromUA。 */ function parseDeviceFromUA(ua) {
const raw = ua.trim();
let deviceBrand = "";
let deviceModel = "";
let deviceType = "desktop";
let systemName = "Other";
let systemVersion = "";
if (/iPhone|iPad|iPod/i.test(raw)) {
systemName = "iOS";
deviceBrand = "Apple";
const ios = raw.match(/OS (\d+[_\d]*) like Mac OS X/i);
if (ios) systemVersion = ios[1].replace(/_/g, ".");
if (/iPad/i.test(raw)) {
deviceModel = "iPad";
deviceType = "tablet";
} else if (/iPod/i.test(raw)) {
deviceModel = "iPod";
deviceType = "mobile";
} else {
deviceModel = "iPhone";
deviceType = "mobile";
}
} else if (/Android/i.test(raw)) {
systemName = "Android";
const version = raw.match(/Android ([\d.]+)/i);
if (version) systemVersion = version[1];
const model = raw.match(/Android\s+[\d.]+;\s*([^;)]+?)(?:\s+Build\/|\))/i);
if (model?.[1]) deviceModel = model[1].trim();
deviceBrand = guessAndroidBrand(deviceModel, raw);
deviceType = /Mobile/i.test(raw) ? "mobile" : "tablet";
} else if (/Windows/i.test(raw)) {
systemName = "Windows";
const win = raw.match(/Windows NT ([\d.]+)/i);
if (win) systemVersion = win[1];
} else if (/Mac OS X|Macintosh/i.test(raw)) {
systemName = "macOS";
deviceBrand = "Apple";
deviceModel = "Mac";
const mac = raw.match(/Mac OS X ([\d_]+)/i);
if (mac) systemVersion = mac[1].replace(/_/g, ".");
} else if (/Linux/i.test(raw)) {
systemName = "Linux";
}
const devType = [
deviceBrand,
deviceModel,
deviceType
].map((part)=>part.trim()).filter(Boolean).join(" ");
return {
devType: devType || "desktop",
sysType: sysType(raw),
buildID: clean(parseBrowser(raw)) || "web",
deviceBrand,
deviceModel,
systemName,
systemVersion
};
}
function xUserAgent(ua, extra = {}) {
const info = parseDeviceFromUA(ua);
return [
extra.devID ? `DevID=${clean(extra.devID)}` : "",
`DevType=${clean(info.devType)}`,
`SysType=${info.sysType}`,
`Ver=${clean(APP_VER)}`,
`BuildID=${clean(info.buildID) || "web"}`,
`device_brand=${clean(info.deviceBrand)}`,
`device_model=${clean(info.deviceModel)}`,
`system_name=${clean(info.systemName)}`,
`system_version=${clean(info.systemVersion)}`,
`sid=${clean(extra.sid || "")}`
].filter((part)=>part !== "").join(";");
}
function sessionId(source) {
const cookies = new Map((source.get("cookie") || "").split(";").map((value)=>{
const index = value.indexOf("=");
if (index < 0) return [
"",
""
];
return [
value.slice(0, index).trim(),
value.slice(index + 1).trim()
];
}));
const sid = cookies.get("sid");
if (sid) return sid;
const token = cookies.get("_s_token_") || "";
if (token.startsWith("{")) {
try {
return String(JSON.parse(token).sid || "");
} catch {
/* ignore */ }
}
return token;
}
function buildBrowserApiHeaders(devID = "", sid = "") {
const ua = typeof navigator !== "undefined" ? navigator.userAgent : "";
return {
"X-User-Agent": xUserAgent(ua, {
devID,
sid
})
};
}
function clientIp(source, fallback = "") {
const candidates = [
source.get("x-real-ip"),
source.get("x-forwarded-for")?.split(",")[0],
fallback
];
for (const value of candidates){
const ip = value?.trim() || "";
if (ip && isIP(ip)) return ip;
}
return "";
}
function clientHeaders(source, overrides = {}) {
const result = {};
const ua = (overrides.userAgent || source?.get("user-agent") || "").trim();
if (ua) result["User-Agent"] = ua;
const incomingXua = source?.get("x-user-agent")?.trim() || "";
if (incomingXua) {
result["X-User-Agent"] = incomingXua;
} else if (ua) {
result["X-User-Agent"] = xUserAgent(ua, {
sid: source ? sessionId(source) : ""
});
} else {
Object.assign(result, buildBrowserApiHeaders(overrides.devID || "web-ssr"));
}
const ip = overrides.clientIp || (source ? clientIp(source) : "");
if (ip) result["X-Real-IP"] = ip;
return result;
}
}),
"[project]/src/lib/api/config.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"API_BASE_URL",
()=>API_BASE_URL,
"getServerApiBaseUrl",
()=>getServerApiBaseUrl,
"pointsAtThisServer",
()=>pointsAtThisServer
]);
/**
* 浏览器接口根地址。
* 留空时走同域 `/api/*`,由服务端转到 API_PROXY_TARGET。
*/ const DEFAULT_UPSTREAM = "https://sgdj-h5.80sygtm.com";
const raw = ("TURBOPACK compile-time value", "");
const API_BASE_URL = (raw ?? "").replace(/\/$/, "");
function pointsAtThisServer(base) {
try {
const url = new URL(base);
const loopback = url.hostname === "127.0.0.1" || url.hostname === "localhost" || url.hostname === "::1";
if (!loopback) return false;
const port = url.port || (url.protocol === "https:" ? "443" : "80");
const listen = process.env.PORT?.trim();
return !listen || port === listen;
} catch {
return false;
}
}
function getServerApiBaseUrl() {
const proxy = process.env.API_PROXY_TARGET?.trim().replace(/\/$/, "");
const configured = proxy || raw?.trim().replace(/\/$/, "") || "";
if (configured && !pointsAtThisServer(configured)) return configured;
return DEFAULT_UPSTREAM;
}
}),
"[project]/src/lib/api/upstream-proxy.ts [app-route] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"createUpstreamHandlers",
()=>createUpstreamHandlers,
"proxyUpstream",
()=>proxyUpstream
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/server.js [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$externals$5d2f$node$3a$dns__$5b$external$5d$__$28$node$3a$dns$2c$__cjs$29$__ = __turbopack_context__.i("[externals]/node:dns [external] (node:dns, cjs)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$client$2d$headers$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/client-headers.ts [app-route] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$config$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/config.ts [app-route] (ecmascript)");
;
;
;
;
(0, __TURBOPACK__imported__module__$5b$externals$5d2f$node$3a$dns__$5b$external$5d$__$28$node$3a$dns$2c$__cjs$29$__["setDefaultResultOrder"])("ipv4first");
const DROP_REQUEST_HEADERS = new Set([
"host",
"connection",
"content-length",
"transfer-encoding",
"keep-alive",
"accept-encoding",
// 由 clientHeaders 重新写入,避免把代理链原样带给上游。
"x-real-ip",
"x-forwarded-for",
"x-forwarded-host",
"x-forwarded-proto",
"user-agent",
"x-user-agent"
]);
const DROP_RESPONSE_HEADERS = new Set([
"content-encoding",
"content-length",
"transfer-encoding",
"connection"
]);
async function proxyUpstream(request, pathname) {
await (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$route$5d$__$28$ecmascript$29$__["connection"])();
if (request.headers.get("x-sgdj-proxy") === "1") {
return new Response("接口代理回环", {
status: 508
});
}
const base = (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$config$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["getServerApiBaseUrl"])();
const incoming = new URL(request.url);
const target = `${base}${pathname}${incoming.search}`;
const headers = new Headers();
for (const [key, value] of request.headers){
if (DROP_REQUEST_HEADERS.has(key.toLowerCase())) continue;
headers.set(key, value);
}
for (const [name, value] of Object.entries((0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$client$2d$headers$2e$ts__$5b$app$2d$route$5d$__$28$ecmascript$29$__["clientHeaders"])(request.headers))){
headers.set(name, value);
}
headers.set("x-sgdj-proxy", "1");
const method = request.method.toUpperCase();
const hasBody = method !== "GET" && method !== "HEAD";
let upstream;
try {
upstream = await fetch(target, {
method,
headers,
body: hasBody ? await request.arrayBuffer() : undefined,
redirect: "manual",
cache: "no-store",
signal: AbortSignal.timeout(20_000)
});
} catch (error) {
const message = error instanceof Error ? error.message : "请求失败";
return new Response(message, {
status: 502,
headers: {
"cache-control": "no-store"
}
});
}
const outgoing = new Headers(upstream.headers);
for (const name of DROP_RESPONSE_HEADERS)outgoing.delete(name);
outgoing.set("cache-control", "no-store");
return new Response(upstream.body, {
status: upstream.status,
statusText: upstream.statusText,
headers: outgoing
});
}
function createUpstreamHandlers(prefix) {
async function handle(request, context) {
const { path = [] } = await context.params;
const suffix = path.map((segment)=>encodeURIComponent(segment)).join("/");
return proxyUpstream(request, suffix ? `${prefix}/${suffix}` : prefix);
}
return {
GET: handle,
POST: handle,
PUT: handle,
PATCH: handle,
DELETE: handle,
HEAD: handle
};
}
}),
]})(),
"[externals]/crypto [external] (crypto, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("crypto", () => require("crypto"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/@opentelemetry/api [external] (next/dist/compiled/@opentelemetry/api, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/@opentelemetry/api", () => require("next/dist/compiled/@opentelemetry/api"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/next-server/app-page-turbo.runtime.dev.js [external] (next/dist/compiled/next-server/app-page-turbo.runtime.dev.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/next-server/app-page-turbo.runtime.dev.js", () => require("next/dist/compiled/next-server/app-page-turbo.runtime.dev.js"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/next-server/app-route-turbo.runtime.dev.js [external] (next/dist/compiled/next-server/app-route-turbo.runtime.dev.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/next-server/app-route-turbo.runtime.dev.js", () => require("next/dist/compiled/next-server/app-route-turbo.runtime.dev.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/action-async-storage.external.js [external] (next/dist/server/app-render/action-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/action-async-storage.external.js", () => require("next/dist/server/app-render/action-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/after-task-async-storage.external.js [external] (next/dist/server/app-render/after-task-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/after-task-async-storage.external.js", () => require("next/dist/server/app-render/after-task-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/work-async-storage.external.js [external] (next/dist/server/app-render/work-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/work-async-storage.external.js", () => require("next/dist/server/app-render/work-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/work-unit-async-storage.external.js [external] (next/dist/server/app-render/work-unit-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/work-unit-async-storage.external.js", () => require("next/dist/server/app-render/work-unit-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/runtime-reacts.external.js [external] (next/dist/server/runtime-reacts.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/runtime-reacts.external.js", () => require("next/dist/server/runtime-reacts.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/shared/lib/no-fallback-error.external.js [external] (next/dist/shared/lib/no-fallback-error.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/shared/lib/no-fallback-error.external.js", () => require("next/dist/shared/lib/no-fallback-error.external.js"));
module.exports = mod;
}),
"[externals]/node:dns [external] (node:dns, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("node:dns", () => require("node:dns"));
module.exports = mod;
}),
"[externals]/node:stream [external] (node:stream, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("node:stream", () => require("node:stream"));
module.exports = mod;
}),
"[externals]/path [external] (path, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("path", () => require("path"));
module.exports = mod;
}),
];
//# sourceMappingURL=%5Broot-of-the-server%5D__1uwtrlk1gqp4t._.js.map
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/api/[...path]/route/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_api_%5B___path%5D_route_actions_1xh_5e26dc5fg.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/robots.txt/route/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_robots_txt_route_actions_15vc_89wprgh5.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,12 @@
module.exports = [
"[project]/src/instrumentation-node.ts [instrumentation] (ecmascript, async loader)", ((__turbopack_context__) => {
__turbopack_context__.v((parentImport) => {
return Promise.all([
"server/chunks/[root-of-the-server]__0dp3pn7va0j9e._.js"
].map((chunk) => __turbopack_context__.l(chunk))).then(() => {
return parentImport("[project]/src/instrumentation-node.ts [instrumentation] (ecmascript)");
});
});
}),
];
@@ -0,0 +1,5 @@
{
"version": 3,
"sources": [],
"sections": []
}
@@ -0,0 +1,20 @@
module.exports = [
"[project]/src/instrumentation.ts [instrumentation] (ecmascript)", ((__turbopack_context__) => {
"use strict";
/**
* Node 启动时优先 IPv4。本机 IPv6 不通时连 Cloudflare 上游会 ENETUNREACH,
* 表现为本地 /api 500/502。dns 逻辑放在单独文件,避免 Edge 打包分析报错。
*/ __turbopack_context__.s([
"register",
()=>register
]);
async function register() {
if ("TURBOPACK compile-time truthy", 1) {
await __turbopack_context__.A("[project]/src/instrumentation-node.ts [instrumentation] (ecmascript, async loader)");
}
}
}),
];
//# sourceMappingURL=src_instrumentation_ts_07j_8w1ivtswj._.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdjb_h5/src/instrumentation.ts"],"sourcesContent":["/**\n * Node 启动时优先 IPv4。本机 IPv6 不通时连 Cloudflare 上游会 ENETUNREACH,\n * 表现为本地 /api 500/502。dns 逻辑放在单独文件,避免 Edge 打包分析报错。\n */\nexport async function register() {\n if (process.env.NEXT_RUNTIME === \"nodejs\") {\n await import(\"./instrumentation-node\");\n }\n}\n"],"names":["register"],"mappings":"AAAA;;;CAGC;;;;AACM,eAAeA;IACpB,wCAA2C;QACzC;IACF;AACF"}}]
}
@@ -0,0 +1,20 @@
module.exports = [
"[externals]/crypto [external] (crypto, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("crypto", () => require("crypto"));
module.exports = mod;
}),
"[externals]/next/dist/shared/lib/no-fallback-error.external.js [external] (next/dist/shared/lib/no-fallback-error.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/shared/lib/no-fallback-error.external.js", () => require("next/dist/shared/lib/no-fallback-error.external.js"));
module.exports = mod;
}),
"[externals]/node:stream [external] (node:stream, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("node:stream", () => require("node:stream"));
module.exports = mod;
}),
];
@@ -0,0 +1,5 @@
{
"version": 3,
"sources": [],
"sections": []
}
@@ -0,0 +1,92 @@
module.exports = [
"[externals]/crypto [external] (crypto, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("crypto", () => require("crypto"));
module.exports = mod;
}),
"[externals]/module [external] (module, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("module", () => require("module"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/@opentelemetry/api [external] (next/dist/compiled/@opentelemetry/api, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/@opentelemetry/api", () => require("next/dist/compiled/@opentelemetry/api"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/next-server/app-page-turbo.runtime.dev.js [external] (next/dist/compiled/next-server/app-page-turbo.runtime.dev.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/next-server/app-page-turbo.runtime.dev.js", () => require("next/dist/compiled/next-server/app-page-turbo.runtime.dev.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/action-async-storage.external.js [external] (next/dist/server/app-render/action-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/action-async-storage.external.js", () => require("next/dist/server/app-render/action-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/after-task-async-storage.external.js [external] (next/dist/server/app-render/after-task-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/after-task-async-storage.external.js", () => require("next/dist/server/app-render/after-task-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/dynamic-access-async-storage.external.js [external] (next/dist/server/app-render/dynamic-access-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/dynamic-access-async-storage.external.js", () => require("next/dist/server/app-render/dynamic-access-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/work-async-storage.external.js [external] (next/dist/server/app-render/work-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/work-async-storage.external.js", () => require("next/dist/server/app-render/work-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/app-render/work-unit-async-storage.external.js [external] (next/dist/server/app-render/work-unit-async-storage.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/work-unit-async-storage.external.js", () => require("next/dist/server/app-render/work-unit-async-storage.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/node-environment-extensions/fast-set-immediate.external.js [external] (next/dist/server/node-environment-extensions/fast-set-immediate.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/node-environment-extensions/fast-set-immediate.external.js", () => require("next/dist/server/node-environment-extensions/fast-set-immediate.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/server/runtime-reacts.external.js [external] (next/dist/server/runtime-reacts.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/runtime-reacts.external.js", () => require("next/dist/server/runtime-reacts.external.js"));
module.exports = mod;
}),
"[externals]/node:stream [external] (node:stream, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("node:stream", () => require("node:stream"));
module.exports = mod;
}),
"[externals]/node:zlib [external] (node:zlib, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("node:zlib", () => require("node:zlib"));
module.exports = mod;
}),
"[externals]/path [external] (path, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("path", () => require("path"));
module.exports = mod;
}),
"[externals]/util [external] (util, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("util", () => require("util"));
module.exports = mod;
}),
];
@@ -0,0 +1,5 @@
{
"version": 3,
"sources": [],
"sections": []
}
@@ -0,0 +1,32 @@
module.exports = [
"[externals]/next/dist/compiled/@opentelemetry/api [external] (next/dist/compiled/@opentelemetry/api, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/@opentelemetry/api", () => require("next/dist/compiled/@opentelemetry/api"));
module.exports = mod;
}),
"[externals]/next/dist/compiled/next-server/pages-turbo.runtime.dev.js [external] (next/dist/compiled/next-server/pages-turbo.runtime.dev.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/compiled/next-server/pages-turbo.runtime.dev.js", () => require("next/dist/compiled/next-server/pages-turbo.runtime.dev.js"));
module.exports = mod;
}),
"[externals]/path [external] (path, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("path", () => require("path"));
module.exports = mod;
}),
"[externals]/react [external] (react, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("react", () => require("react"));
module.exports = mod;
}),
"[externals]/react/jsx-runtime [external] (react/jsx-runtime, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("react/jsx-runtime", () => require("react/jsx-runtime"));
module.exports = mod;
}),
];
@@ -0,0 +1,5 @@
{
"version": 3,
"sources": [],
"sections": []
}
@@ -0,0 +1,14 @@
module.exports = [
"[externals]/next/dist/server/app-render/module-loading/track-module-loading.external.js [external] (next/dist/server/app-render/module-loading/track-module-loading.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/module-loading/track-module-loading.external.js", () => require("next/dist/server/app-render/module-loading/track-module-loading.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/shared/lib/no-fallback-error.external.js [external] (next/dist/shared/lib/no-fallback-error.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/shared/lib/no-fallback-error.external.js", () => require("next/dist/shared/lib/no-fallback-error.external.js"));
module.exports = mod;
}),
];
@@ -0,0 +1,5 @@
{
"version": 3,
"sources": [],
"sections": []
}
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,556 @@
module.exports = [
(()=>{"use strict";return[
"[project]/src/app/info/[slug]/page.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"__debugCreateInstantConfigStack",
()=>__debugCreateInstantConfigStack,
"default",
()=>InfoRoute,
"generateMetadata",
()=>generateMetadata,
"instant",
()=>instant
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/server.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$api$2f$navigation$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/node_modules/next/dist/api/navigation.react-server.js [app-rsc] (ecmascript) <locals>");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$navigation$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/client/components/navigation.react-server.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$common$2f$ListLoading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/common/ListLoading.tsx [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$info$2f$info$2d$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/info/info-page.tsx [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$footer$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/footer.ts [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$catalog$2f$info$2d$documents$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/catalog/info-documents.ts [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$index$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/src/lib/seo/index.ts [app-rsc] (ecmascript) <locals>");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$resolve$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/resolve.ts [app-rsc] (ecmascript)");
;
;
;
;
;
;
;
;
;
const instant = false;
async function infoMetadata(slug) {
const title = __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$catalog$2f$info$2d$documents$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["infoDocuments"][slug]?.title;
if (!title) return {
title: "页面不存在",
robots: {
index: false,
follow: false
}
};
return (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$resolve$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["resolvePageMetadata"])({
fallbackTitle: title,
fallbackDescription: title,
canonical: `/info/${slug}`
});
}
async function generateMetadata({ params }) {
const { slug } = await params;
return infoMetadata(slug);
}
function InfoRoute({ params }) {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["Suspense"], {
fallback: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$common$2f$ListLoading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["ListLoading"], {
label: "正在加载内容"
}, void 0, false, {
fileName: "[project]/src/app/info/[slug]/page.tsx",
lineNumber: 31,
columnNumber: 25
}, this),
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(InfoContent, {
params: params
}, void 0, false, {
fileName: "[project]/src/app/info/[slug]/page.tsx",
lineNumber: 32,
columnNumber: 7
}, this)
}, void 0, false, {
fileName: "[project]/src/app/info/[slug]/page.tsx",
lineNumber: 31,
columnNumber: 5
}, this);
}
async function InfoContent({ params }) {
await (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["connection"])();
const { slug } = await params;
if (!(0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$info$2f$info$2d$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["isInfoSlug"])(slug)) (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$navigation$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["notFound"])();
const footer = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$footer$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["getFooterInfo"])();
const policies = (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$footer$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["footerPolicyLinks"])(footer.data);
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$info$2f$info$2d$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["InfoDocumentPage"], {
slug: slug,
policies: policies
}, void 0, false, {
fileName: "[project]/src/app/info/[slug]/page.tsx",
lineNumber: 43,
columnNumber: 10
}, this);
}
const __debugCreateInstantConfigStack = process.env.NODE_ENV !== 'production' ? function instant() {
const error = new Error(' ');
error.name = 'Instant Validation';
return error;
} : null;
}),
"[project]/src/components/drama/breadcrumb.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"Breadcrumb",
()=>Breadcrumb
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/client/app-dir/link.react-server.js [app-rsc] (ecmascript)");
;
;
function Breadcrumb({ items }) {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("nav", {
className: "page-breadcrumb",
"aria-label": "面包屑导航",
children: items.map((item, index)=>/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
style: {
display: "contents"
},
children: [
index > 0 ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
className: "breadcrumb-separator",
"aria-hidden": "true",
children: "/"
}, void 0, false, {
fileName: "[project]/src/components/drama/breadcrumb.tsx",
lineNumber: 11,
columnNumber: 13
}, this) : null,
item.href ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["default"], {
href: item.href,
children: item.label
}, void 0, false, {
fileName: "[project]/src/components/drama/breadcrumb.tsx",
lineNumber: 15,
columnNumber: 24
}, this) : /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
"aria-current": "page",
children: item.label
}, void 0, false, {
fileName: "[project]/src/components/drama/breadcrumb.tsx",
lineNumber: 15,
columnNumber: 69
}, this)
]
}, `${item.label}-${index}`, true, {
fileName: "[project]/src/components/drama/breadcrumb.tsx",
lineNumber: 9,
columnNumber: 9
}, this))
}, void 0, false, {
fileName: "[project]/src/components/drama/breadcrumb.tsx",
lineNumber: 7,
columnNumber: 5
}, this);
}
}),
"[project]/src/components/info/info-page.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"InfoDocumentPage",
()=>InfoDocumentPage,
"isInfoSlug",
()=>isInfoSlug
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/client/app-dir/link.react-server.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$drama$2f$breadcrumb$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/drama/breadcrumb.tsx [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$ui$2f$empty$2d$state$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/ui/empty-state.tsx [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$richtext$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/richtext.ts [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$catalog$2f$info$2d$documents$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/catalog/info-documents.ts [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/site/routes.ts [app-rsc] (ecmascript)");
;
;
;
;
;
;
;
function shell(slug, title, subtitle, crumbs, body, policies, currentHref = __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["routes"].info(slug)) {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("main", {
id: "info-page",
className: "shell info-shell",
"data-info": slug,
"aria-labelledby": "info-title",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$drama$2f$breadcrumb$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["Breadcrumb"], {
items: crumbs
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 23,
columnNumber: 7
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("header", {
className: "info-heading",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("small", {
children: "INFORMATION & SUPPORT"
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 25,
columnNumber: 9
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("h1", {
id: "info-title",
tabIndex: -1,
children: title
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 26,
columnNumber: 9
}, this),
subtitle ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", {
id: "info-subtitle",
children: subtitle
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 29,
columnNumber: 21
}, this) : /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", {
id: "info-subtitle",
hidden: true
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 29,
columnNumber: 60
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 24,
columnNumber: 7
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
className: "info-layout",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("nav", {
className: "info-nav",
"aria-label": "信息页面",
children: policies?.length ? policies.map((item)=>item.external ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("a", {
href: item.href,
target: item.href.startsWith("mailto:") ? undefined : "_blank",
rel: "noreferrer",
children: item.name
}, item.id, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 36,
columnNumber: 19
}, this) : /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["default"], {
href: item.href,
"aria-current": item.href === currentHref ? "page" : undefined,
children: item.name
}, item.id, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 40,
columnNumber: 19
}, this)) : __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["infoNav"].map((item)=>/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["default"], {
href: __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["routes"].info(item.slug),
"data-info": item.slug,
"aria-current": item.slug === slug ? "page" : undefined,
children: item.label
}, item.slug, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 46,
columnNumber: 17
}, this))
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 32,
columnNumber: 9
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("article", {
className: "info-card",
id: "info-content",
children: body
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 51,
columnNumber: 9
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 31,
columnNumber: 7
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 22,
columnNumber: 5
}, this);
}
function isInfoSlug(slug) {
return Object.prototype.hasOwnProperty.call(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$catalog$2f$info$2d$documents$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["infoDocuments"], slug);
}
async function InfoDocumentPage({ slug, policies }) {
const document = __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$catalog$2f$info$2d$documents$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["infoDocuments"][slug];
if (!document) return null;
const rich = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$richtext$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["getRichTextByTitle"])(document.title);
const item = rich.item;
const body = item?.content ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
className: "richtext-body",
dangerouslySetInnerHTML: {
__html: item.content
}
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 70,
columnNumber: 5
}, this) : /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$ui$2f$empty$2d$state$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["EmptyState"], {
kind: rich.error ? "error" : "content",
title: rich.error ? "加载失败" : "暂无内容",
description: rich.error || "这篇内容暂时没有发布。",
action: false
}, void 0, false, {
fileName: "[project]/src/components/info/info-page.tsx",
lineNumber: 72,
columnNumber: 5
}, this);
return shell(slug, item?.title || document.title, item?.desc || "", [
{
label: "首页",
href: __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["routes"].home
},
{
label: item?.title || document.title
}
], body, policies, `/richtext/${encodeURIComponent(item?.title || document.title)}`);
}
}),
"[project]/src/components/ui/empty-state.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"EmptyState",
()=>EmptyState,
"emptyStateImages",
()=>emptyStateImages
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/client/app-dir/link.react-server.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/site/routes.ts [app-rsc] (ecmascript)");
;
;
;
const emptyStateImages = {
write: "/images/empty/write.png",
planet: "/images/empty/planet.png",
records: "/images/empty/records.png",
error: "/images/empty/error.png",
purchased: "/images/empty/purchased.png",
profile: "/images/empty/profile.png",
content: "/images/empty/content.png",
data: "/images/empty/data.png",
search: "/images/empty/search.png",
network: "/images/empty/network.png",
messages: "/images/empty/messages.png",
calendar: "/images/empty/calendar.png"
};
const defaults = {
search: [
"搜索无结果",
"换个关键词试试,也许下一部好剧就在这里。",
"查看全部短剧"
],
data: [
"暂无数据",
"这里还没有记录,去发现一些喜欢的短剧吧。",
"去发现好剧"
],
error: [
"加载失败",
"内容暂时未能加载,请稍后重试。",
"重新加载"
],
content: [
"暂无内容",
"精彩内容正在准备中,先去看看其他好剧吧。",
"随便逛逛"
]
};
function EmptyState({ kind = "content", image, title, description, action, href = __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["routes"].shorts, onAction, className, children }) {
const config = defaults[kind] ?? defaults.content;
const resolvedTitle = title ?? config[0];
const resolvedDescription = description ?? config[1];
const label = action === false ? "" : action ?? config[2];
const src = emptyStateImages[image ?? kind] ?? emptyStateImages.content;
const rootClass = className ? `ui-empty-state ${className}` : "ui-empty-state";
let actionNode = null;
if (label) {
if (onAction || kind === "error") {
actionNode = /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
type: "button",
className: "ui-empty-action",
onClick: onAction,
children: label
}, void 0, false, {
fileName: "[project]/src/components/ui/empty-state.tsx",
lineNumber: 66,
columnNumber: 9
}, this);
} else {
actionNode = /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["default"], {
className: "ui-empty-action",
href: href,
children: label
}, void 0, false, {
fileName: "[project]/src/components/ui/empty-state.tsx",
lineNumber: 72,
columnNumber: 9
}, this);
}
}
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
className: rootClass,
role: "status",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("img", {
src: src,
alt: "",
"aria-hidden": "true",
width: 210,
height: 210
}, void 0, false, {
fileName: "[project]/src/components/ui/empty-state.tsx",
lineNumber: 82,
columnNumber: 7
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("h3", {
children: resolvedTitle
}, void 0, false, {
fileName: "[project]/src/components/ui/empty-state.tsx",
lineNumber: 83,
columnNumber: 7
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", {
children: resolvedDescription
}, void 0, false, {
fileName: "[project]/src/components/ui/empty-state.tsx",
lineNumber: 84,
columnNumber: 7
}, this),
children,
actionNode
]
}, void 0, true, {
fileName: "[project]/src/components/ui/empty-state.tsx",
lineNumber: 80,
columnNumber: 5
}, this);
}
}),
"[project]/src/lib/api/richtext.ts [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"decodeRichTextTitle",
()=>decodeRichTextTitle,
"getRichTextByTitle",
()=>getRichTextByTitle
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$server$2d$fetch$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/server-fetch.ts [app-rsc] (ecmascript)");
;
function decodeRichTextTitle(raw) {
const value = raw.trim();
if (!value) return "";
try {
return decodeURIComponent(value).trim();
} catch {
return value;
}
}
async function getRichTextByTitle(title) {
const value = title.trim();
if (!value) return {
item: null,
error: ""
};
const query = new URLSearchParams({
titles: value
});
try {
const data = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$server$2d$fetch$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["serverFetchJson"])(`/api/app/config/richtext/list?${query}`, {
maxAttempts: 2,
timeoutMs: 10_000,
revalidate: 60,
tags: [
"richtext",
`richtext-${value}`
]
});
const item = (data.list || []).find((entry)=>entry?.title?.trim() === value) || null;
return {
item,
error: ""
};
} catch (reason) {
const error = reason instanceof Error ? reason.message : "富文本加载失败";
if ("TURBOPACK compile-time truthy", 1) {
console.warn("[richtext]", error);
}
return {
item: null,
error
};
}
}
}),
"[project]/src/lib/catalog/info-documents.ts [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
/** `/info/[slug]` 到富文本标题的对照。正文来自 GET /api/app/config/richtext/list。 */ __turbopack_context__.s([
"infoDocuments",
()=>infoDocuments
]);
const infoDocuments = {
"2257": {
title: "2257 合规声明"
},
"about-us": {
title: "关于我们"
},
"privacy-policy": {
title: "隐私政策"
},
"user-agreement": {
title: "用户协议"
},
"help-center": {
title: "常见问题"
},
dmca: {
title: "DMCA 版权声明"
}
};
}),
]})(),
"[externals]/next/dist/server/app-render/module-loading/track-module-loading.external.js [external] (next/dist/server/app-render/module-loading/track-module-loading.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/module-loading/track-module-loading.external.js", () => require("next/dist/server/app-render/module-loading/track-module-loading.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/shared/lib/no-fallback-error.external.js [external] (next/dist/shared/lib/no-fallback-error.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/shared/lib/no-fallback-error.external.js", () => require("next/dist/shared/lib/no-fallback-error.external.js"));
module.exports = mod;
}),
"[project]/src/app/info/[slug]/page.tsx [app-rsc] (ecmascript, Next.js Server Component)", (function(__turbopack_context__){
__turbopack_context__.n(__turbopack_context__.i("[project]/src/app/info/[slug]/page.tsx [app-rsc] (ecmascript)"));
}),
];
//# sourceMappingURL=%5Broot-of-the-server%5D__03k03zr7qdf4e._.js.map
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,287 @@
module.exports = [
(()=>{"use strict";return[
"[project]/node_modules/@swc/helpers/cjs/_interop_require_default.cjs [ssr] (ecmascript)", ((__turbopack_context__, module, exports) => {
"use strict";
function _interop_require_default(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
exports._ = _interop_require_default;
}),
"[project]/node_modules/next/dist/pages/_app.js [ssr] (ecmascript)", ((__turbopack_context__, module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function() {
return App;
}
});
const _interop_require_default = __turbopack_context__.r("[project]/node_modules/@swc/helpers/cjs/_interop_require_default.cjs [ssr] (ecmascript)");
const _jsxruntime = __turbopack_context__.r("[externals]/react/jsx-runtime [external] (react/jsx-runtime, cjs)");
const _react = /*#__PURE__*/ _interop_require_default._(__turbopack_context__.r("[externals]/react [external] (react, cjs)"));
const _utils = __turbopack_context__.r("[project]/node_modules/next/dist/shared/lib/utils.js [ssr] (ecmascript)");
/**
* `App` component is used for initialize of pages. It allows for overwriting and full control of the `page` initialization.
* This allows for keeping state between navigation, custom error handling, injecting additional data.
*/ async function appGetInitialProps({ Component, ctx }) {
const pageProps = await (0, _utils.loadGetInitialProps)(Component, ctx);
return {
pageProps
};
}
class App extends _react.default.Component {
static{
this.origGetInitialProps = appGetInitialProps;
}
static{
this.getInitialProps = appGetInitialProps;
}
render() {
const { Component, pageProps } = this.props;
return /*#__PURE__*/ (0, _jsxruntime.jsx)(Component, {
...pageProps
});
}
}
if ((typeof exports.default === 'function' || typeof exports.default === 'object' && exports.default !== null) && typeof exports.default.__esModule === 'undefined') {
Object.defineProperty(exports.default, '__esModule', {
value: true
});
Object.assign(exports.default, exports);
module.exports = exports.default;
}
}),
"[project]/node_modules/next/dist/shared/lib/utils.js [ssr] (ecmascript)", ((__turbopack_context__, module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
0 && (module.exports = {
DecodeError: null,
MiddlewareNotFoundError: null,
MissingStaticPage: null,
NormalizeError: null,
PageNotFoundError: null,
SP: null,
ST: null,
WEB_VITALS: null,
execOnce: null,
getDisplayName: null,
getLocationOrigin: null,
getURL: null,
isAbsoluteUrl: null,
isResSent: null,
loadGetInitialProps: null,
normalizeRepeatedSlashes: null,
stringifyError: null
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
DecodeError: function() {
return DecodeError;
},
MiddlewareNotFoundError: function() {
return MiddlewareNotFoundError;
},
MissingStaticPage: function() {
return MissingStaticPage;
},
NormalizeError: function() {
return NormalizeError;
},
PageNotFoundError: function() {
return PageNotFoundError;
},
SP: function() {
return SP;
},
ST: function() {
return ST;
},
WEB_VITALS: function() {
return WEB_VITALS;
},
execOnce: function() {
return execOnce;
},
getDisplayName: function() {
return getDisplayName;
},
getLocationOrigin: function() {
return getLocationOrigin;
},
getURL: function() {
return getURL;
},
isAbsoluteUrl: function() {
return isAbsoluteUrl;
},
isResSent: function() {
return isResSent;
},
loadGetInitialProps: function() {
return loadGetInitialProps;
},
normalizeRepeatedSlashes: function() {
return normalizeRepeatedSlashes;
},
stringifyError: function() {
return stringifyError;
}
});
const WEB_VITALS = [
'CLS',
'FCP',
'INP',
'LCP',
'TTFB'
];
function execOnce(fn) {
let used = false;
let result;
return (...args)=>{
if (!used) {
used = true;
result = fn(...args);
}
return result;
};
}
// Scheme: https://tools.ietf.org/html/rfc3986#section-3.1
// Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3
const ABSOLUTE_URL_REGEX = /^[a-zA-Z][a-zA-Z\d+\-.]*?:/;
const isAbsoluteUrl = (url)=>{
// Fast path: an absolute URL must start with a letter (the scheme).
// Check for a-z and A-Z without the cost of the regex.
const c = url.charCodeAt(0);
const isLetter = c >= 65 /* A */ && c <= 90 || c >= 97 /* a */ && c <= 122;
/* z */ if (!isLetter) {
return false;
}
return ABSOLUTE_URL_REGEX.test(url);
};
function getLocationOrigin() {
const { protocol, hostname, port } = window.location;
return `${protocol}//${hostname}${port ? ':' + port : ''}`;
}
function getURL() {
const { href } = window.location;
const origin = getLocationOrigin();
return href.substring(origin.length);
}
function getDisplayName(Component) {
return typeof Component === 'string' ? Component : Component.displayName || Component.name || 'Unknown';
}
function isResSent(res) {
return res.finished || res.headersSent;
}
function normalizeRepeatedSlashes(url) {
const urlParts = url.split('?');
const urlNoQuery = urlParts[0];
return urlNoQuery // first we replace any non-encoded backslashes with forward
// then normalize repeated forward slashes
.replace(/\\/g, '/').replace(/\/\/+/g, '/') + (urlParts[1] ? `?${urlParts.slice(1).join('?')}` : '');
}
async function loadGetInitialProps(App, ctx) {
if ("TURBOPACK compile-time truthy", 1) {
if (App.prototype?.getInitialProps) {
const message = `"${getDisplayName(App)}.getInitialProps()" is defined as an instance method - visit https://nextjs.org/docs/messages/get-initial-props-as-an-instance-method for more information.`;
throw new Error(message);
}
}
// when called from _app `ctx` is nested in `ctx`
const res = ctx.res || ctx.ctx && ctx.ctx.res;
if (!App.getInitialProps) {
if (ctx.ctx && ctx.Component) {
// @ts-ignore pageProps default
return {
pageProps: await loadGetInitialProps(ctx.Component, ctx.ctx)
};
}
return {};
}
const props = await App.getInitialProps(ctx);
if (res && isResSent(res)) {
return props;
}
if (!props) {
const message = `"${getDisplayName(App)}.getInitialProps()" should resolve to an object. But found "${props}" instead.`;
throw new Error(message);
}
if ("TURBOPACK compile-time truthy", 1) {
if (Object.keys(props).length === 0 && !ctx.ctx) {
console.warn(`${getDisplayName(App)} returned an empty object from \`getInitialProps\`. This de-optimizes and prevents automatic static optimization. https://nextjs.org/docs/messages/empty-object-getInitialProps`);
}
}
return props;
}
const SP = typeof performance !== 'undefined';
const ST = SP && [
'mark',
'measure',
'getEntriesByName'
].every((method)=>typeof performance[method] === 'function');
class DecodeError extends Error {
}
class NormalizeError extends Error {
}
class PageNotFoundError extends Error {
constructor(page){
super();
this.code = 'ENOENT';
this.name = 'PageNotFoundError';
this.message = `Cannot find module for page: ${page}`;
}
}
class MissingStaticPage extends Error {
constructor(page, message){
super();
this.message = `Failed to load static file for page: ${page} ${message}`;
}
}
class MiddlewareNotFoundError extends Error {
constructor(){
super();
this.code = 'ENOENT';
this.message = `Cannot find the middleware module`;
}
}
function stringifyError(error) {
return JSON.stringify({
message: error.message,
stack: error.stack
});
}
}),
]})(),
"[externals]/react [external] (react, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("react", () => require("react"));
module.exports = mod;
}),
"[externals]/react/jsx-runtime [external] (react/jsx-runtime, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("react/jsx-runtime", () => require("react/jsx-runtime"));
module.exports = mod;
}),
"[project]/node_modules/next/app.js [ssr] (ecmascript)", ((__turbopack_context__, module, exports) => {
module.exports = __turbopack_context__.r("[project]/node_modules/next/dist/pages/_app.js [ssr] (ecmascript)");
}),
];
//# sourceMappingURL=%5Broot-of-the-server%5D__0y0_snuizx-rh._.js.map
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,721 @@
module.exports = [
(()=>{"use strict";return[
"[project]/src/app/nav/page.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"default",
()=>Page,
"generateMetadata",
()=>generateMetadata
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/server.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$common$2f$ListLoading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/common/ListLoading.tsx [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$nav$2f$nav$2d$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/nav/nav-page.tsx [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$site$2f$json$2d$ld$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/site/json-ld.tsx [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$app$2d$config$2d$server$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/app-config-server.ts [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$index$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/src/lib/seo/index.ts [app-rsc] (ecmascript) <locals>");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$jsonld$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/jsonld.ts [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$resolve$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/resolve.ts [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/site/routes.ts [app-rsc] (ecmascript)");
;
;
;
;
;
;
;
;
;
async function navMetadata() {
const { data } = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$app$2d$config$2d$server$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["getAppConfigInfo"])();
const seoNavInfo = data?.seoNavInfo;
return (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$resolve$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["resolvePageMetadata"])({
seoInfo: {
title: seoNavInfo?.dhTitle,
description: seoNavInfo?.dhDescription,
keyworld: seoNavInfo?.dhKeyworld
},
fallbackTitle: seoNavInfo?.dhSiteName?.trim() || "黄果短剧 · 官方发布页",
canonical: __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["routes"].nav
});
}
async function generateMetadata() {
return navMetadata();
}
function Page() {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["Suspense"], {
fallback: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$common$2f$ListLoading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["ListLoading"], {
label: "正在加载导航"
}, void 0, false, {
fileName: "[project]/src/app/nav/page.tsx",
lineNumber: 32,
columnNumber: 25
}, this),
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(NavContent, {}, void 0, false, {
fileName: "[project]/src/app/nav/page.tsx",
lineNumber: 33,
columnNumber: 7
}, this)
}, void 0, false, {
fileName: "[project]/src/app/nav/page.tsx",
lineNumber: 32,
columnNumber: 5
}, this);
}
async function NavContent() {
await (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["connection"])();
const [{ data }, metadata] = await Promise.all([
(0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$app$2d$config$2d$server$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["getAppConfigInfo"])(),
navMetadata()
]);
const title = typeof metadata.title === "string" ? metadata.title : "官方发布页";
const description = typeof metadata.description === "string" ? metadata.description : undefined;
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["Fragment"], {
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$site$2f$json$2d$ld$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["JsonLd"], {
data: (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$jsonld$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["buildWebPageJSONLD"])({
path: __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$site$2f$routes$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["routes"].nav,
title,
description,
siteName: data?.seoNavInfo?.dhSiteName
})
}, void 0, false, {
fileName: "[project]/src/app/nav/page.tsx",
lineNumber: 45,
columnNumber: 7
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$nav$2f$nav$2d$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["NavPage"], {
config: data
}, void 0, false, {
fileName: "[project]/src/app/nav/page.tsx",
lineNumber: 53,
columnNumber: 7
}, this)
]
}, void 0, true, {
fileName: "[project]/src/app/nav/page.tsx",
lineNumber: 44,
columnNumber: 5
}, this);
}
}),
"[project]/src/components/nav/nav-page.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"NavPage",
()=>NavPage
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/client/app-dir/link.react-server.js [app-rsc] (ecmascript)");
;
;
const LINE_LABELS = [
"一",
"二",
"三",
"四",
"五",
"六",
"七",
"八",
"九",
"十"
];
function isExternalHref(href) {
return /^https?:\/\//i.test(href) || href.startsWith("mailto:");
}
function address(config, key) {
return config?.newAddressInfo?.[key]?.trim() || config?.config?.[key]?.trim() || "";
}
function lineLabel(line) {
return LINE_LABELS[line - 1] || String(line || "");
}
function routeItems(config) {
const siteName = config?.config?.webSiteName?.trim() || config?.seoInfo?.webSiteName?.trim() || "线路";
const listed = (config?.navPageList || []).filter((item)=>Boolean(item.url?.trim()));
if (listed.length) {
return listed.map((item)=>({
key: `${item.line}-${item.url}`,
title: `${siteName} · 线路${lineLabel(item.line || 0)}`,
note: item.line === 1 ? "推荐入口" : "备用入口",
href: item.url.trim()
}));
}
const backups = [
config?.config?.dhNewUrlAddr1,
config?.config?.dhNewUrlAddr2,
config?.config?.dhNewUrlAddr3
];
return backups.flatMap((url, index)=>{
const href = url?.trim();
if (!href) return [];
const line = index + 1;
return [
{
key: `${line}-${href}`,
title: `${siteName} · 线路${lineLabel(line)}`,
note: line === 1 ? "推荐入口" : "备用入口",
href
}
];
});
}
function EntryAnchor({ href, className, children }) {
if (isExternalHref(href)) {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("a", {
className: className,
href: href,
target: "_blank",
rel: "noopener noreferrer",
children: children
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 43,
columnNumber: 7
}, this);
}
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["default"], {
className: className,
href: href,
children: children
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 49,
columnNumber: 5
}, this);
}
function NavPage({ config = null }) {
const siteName = config?.config?.webSiteName?.trim() || config?.seoInfo?.webSiteName?.trim() || "";
const description = config?.seoNavInfo?.dhDescription?.trim() || "";
const siteLine = config?.seoNavInfo?.dhSiteName?.trim() || "";
const visibleRoutes = routeItems(config);
const foreverUrlAddr = address(config, "foreverUrlAddr");
const appAddr = address(config, "appAddr");
const officialAppAddr = address(config, "officialAppAddr") || config?.config?.webAddr?.trim() || "";
const twitterAddr = address(config, "twitterAddr");
const pdfAddr = address(config, "pdfAddr");
const translationAddr = config?.config?.translationAddr?.trim() || "";
const year = new Date().getFullYear();
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
id: "entry-navigation",
"aria-label": siteName ? `${siteName}官方入口` : "官方入口",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("img", {
className: "entry-background",
src: "/images/entry-cover.webp",
alt: ""
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 70,
columnNumber: 7
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
className: "entry-stage",
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("main", {
className: "entry-content",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("header", {
className: "entry-brand",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("img", {
className: "entry-brand-logo hg-complete-logo shuguo-logo-image",
src: "/logo.webp",
alt: siteName || "黄果短剧",
width: 444,
height: 108
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 74,
columnNumber: 13
}, this),
description ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", {
children: description
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 75,
columnNumber: 28
}, this) : null,
siteLine ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("strong", {
children: siteLine
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 76,
columnNumber: 25
}, this) : null
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 73,
columnNumber: 11
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("nav", {
className: "entry-routes",
"aria-label": "访问线路",
children: [
visibleRoutes.map((route)=>/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, {
className: "entry-route",
href: route.href,
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
className: "entry-route-copy",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("b", {
children: route.title
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 82,
columnNumber: 19
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("small", {
children: route.note
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 83,
columnNumber: 19
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 81,
columnNumber: 17
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
className: "entry-route-cta",
children: "立即进入"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 85,
columnNumber: 17
}, this)
]
}, route.key, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 80,
columnNumber: 15
}, this)),
foreverUrlAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, {
className: "entry-permanent",
href: foreverUrlAddr,
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
children: "永久入口"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 90,
columnNumber: 17
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
children: "收藏回家的路,获取最新地址"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 91,
columnNumber: 17
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 89,
columnNumber: 15
}, this) : null
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 78,
columnNumber: 11
}, this),
appAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, {
className: "entry-download",
href: appAddr,
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("img", {
src: "/images/entry-download.png",
alt: ""
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 97,
columnNumber: 15
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
children: siteName ? `${siteName} · APP 下载` : "APP 下载"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 98,
columnNumber: 15
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 96,
columnNumber: 13
}, this) : null,
officialAppAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("a", {
className: "entry-contact",
href: officialAppAddr,
target: "_blank",
rel: "noopener noreferrer",
children: [
"官方网站:",
officialAppAddr
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 102,
columnNumber: 13
}, this) : null,
officialAppAddr || twitterAddr || pdfAddr || appAddr || translationAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("nav", {
className: "entry-channels",
"aria-label": "官方渠道",
children: [
officialAppAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, {
className: "entry-channel",
href: officialAppAddr,
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, {
width: 16,
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(TelegramIcon, {}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 111,
columnNumber: 21
}, this)
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 110,
columnNumber: 19
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
children: "官方网站"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 113,
columnNumber: 19
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 109,
columnNumber: 17
}, this) : null,
twitterAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, {
className: "entry-channel",
href: twitterAddr,
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, {
width: 16,
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(XIcon, {}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 119,
columnNumber: 21
}, this)
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 118,
columnNumber: 19
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
children: "品牌主页"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 121,
columnNumber: 19
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 117,
columnNumber: 17
}, this) : null,
pdfAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, {
className: "entry-channel",
href: pdfAddr,
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, {
width: 16,
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(RoadIcon, {}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 127,
columnNumber: 21
}, this)
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 126,
columnNumber: 19
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
children: "回家的路"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 129,
columnNumber: 19
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 125,
columnNumber: 17
}, this) : null,
appAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, {
className: "entry-channel",
href: appAddr,
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, {
width: 18,
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(AppIcon, {}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 135,
columnNumber: 21
}, this)
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 134,
columnNumber: 19
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
children: "APP"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 137,
columnNumber: 19
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 133,
columnNumber: 17
}, this) : null,
translationAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, {
className: "entry-channel",
href: translationAddr,
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, {
width: 16,
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(AppsIcon, {}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 143,
columnNumber: 21
}, this)
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 142,
columnNumber: 19
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
children: "福利应用"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 145,
columnNumber: 19
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 141,
columnNumber: 17
}, this) : null
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 107,
columnNumber: 13
}, this) : null,
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("footer", {
className: "entry-footer",
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", {
children: [
"本站仅提供视频内容与产品服务",
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("br", {}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 153,
columnNumber: 15
}, this),
"请遵守当地法律法规,仅限成年人访问"
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 151,
columnNumber: 13
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", {
children: [
"© ",
year,
" ",
siteName ? `${siteName} · ` : "",
"官方发布页"
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 156,
columnNumber: 13
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 150,
columnNumber: 11
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 72,
columnNumber: 9
}, this)
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 71,
columnNumber: 7
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 69,
columnNumber: 5
}, this);
}
function ChannelIcon({ width, children }) {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
className: "entry-channel-icon",
children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("svg", {
className: "entry-channel-svg",
"aria-hidden": "true",
focusable: "false",
width: width,
height: width,
viewBox: `0 0 ${width} ${width}`,
fill: "none",
children: children
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 169,
columnNumber: 7
}, this)
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 168,
columnNumber: 5
}, this);
}
function TelegramIcon() {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", {
d: "M14.2291 1.84364C13.9819 1.64734 13.6874 1.51976 13.3752 1.47379C13.0629 1.42781 12.7441 1.46508 12.4509 1.58182L2.09451 5.68364C1.71253 5.83484 1.38148 6.09166 1.14009 6.42409C0.898696 6.75651 0.756934 7.15079 0.731378 7.56082C0.705823 7.97084 0.797532 8.37967 0.99578 8.7395C1.19403 9.09932 1.49062 9.39527 1.85088 9.59273L3.38179 10.44L3.41088 12.9855C3.41562 13.2326 3.48748 13.4739 3.61877 13.6834C3.75005 13.8929 3.93582 14.0627 4.1562 14.1748C4.37658 14.2869 4.62328 14.3369 4.8699 14.3196C5.11653 14.3022 5.3538 14.2182 5.55633 14.0764L7.53451 12.7273L10.3527 14.28C10.6588 14.4488 11.0013 14.5409 11.3508 14.5484C11.7003 14.5559 12.0465 14.4786 12.3596 14.3231C12.6727 14.1676 12.9434 13.9386 13.1487 13.6556C13.354 13.3726 13.4876 13.0441 13.5382 12.6982L14.9091 3.51273C14.9547 3.19916 14.9157 2.8791 14.7962 2.58565C14.6766 2.2922 14.4808 2.03603 14.2291 1.84364Z",
fill: "currentColor"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 178,
columnNumber: 5
}, this);
}
function XIcon() {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", {
d: "M11.9025 1.90609H13.97L9.45311 7.06859L14.7669 14.0936H10.6062L7.34748 9.83296L3.61872 14.0936H1.54998L6.38123 8.57171L1.28373 1.90609H5.54999L8.49561 5.80046L11.9025 1.90609ZM11.1769 12.8561H12.3225L4.92747 3.07859H3.69809L11.1769 12.8561Z",
fill: "currentColor"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 187,
columnNumber: 5
}, this);
}
function RoadIcon() {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", {
d: "M13.5164 4.22909L9.11636 1.74909C8.77667 1.5559 8.3926 1.45433 8.00182 1.45433C7.61104 1.45433 7.22696 1.5559 6.88727 1.74909L2.48364 4.22909C2.17124 4.40646 1.91143 4.66345 1.73066 4.97389C1.54989 5.28433 1.45462 5.63713 1.45455 5.99636L2.01455 12.5745C2.0267 13.0959 2.24022 13.5924 2.61037 13.9598C2.98051 14.3273 3.47852 14.5371 4 14.5455H12C12.5241 14.54 13.0256 14.3316 13.3993 13.9641C13.7729 13.5965 13.9896 13.0985 14.0036 12.5745L14.5455 6.07636V5.99636C14.5461 5.63698 14.4512 5.28388 14.2703 4.97331C14.0895 4.66274 13.8293 4.40588 13.5164 4.22909ZM9.15273 11.7636H6.86909C6.72443 11.7636 6.58569 11.7062 6.4834 11.6039C6.3811 11.5016 6.32364 11.3628 6.32364 11.2182C6.32364 11.0735 6.3811 10.9348 6.4834 10.8325C6.58569 10.7302 6.72443 10.6727 6.86909 10.6727H9.14545C9.29012 10.6727 9.42886 10.7302 9.53115 10.8325C9.63344 10.9348 9.69091 11.0735 9.69091 11.2182C9.69091 11.3628 9.63344 11.5016 9.53115 11.6039C9.42886 11.7062 9.29012 11.7636 9.14545 11.7636H9.15273Z",
fill: "currentColor"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 196,
columnNumber: 5
}, this);
}
function AppIcon() {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", {
d: "M13.2955 1.22727H4.70455C4.10814 1.22835 3.53647 1.46575 3.11475 1.88748C2.69303 2.3092 2.45563 2.88087 2.45455 3.47727V14.5227C2.45563 15.1191 2.69303 15.6908 3.11475 16.1125C3.53647 16.5342 4.10814 16.7716 4.70455 16.7727H13.2955C13.8922 16.7727 14.4645 16.5357 14.8864 16.1137C15.3084 15.6918 15.5455 15.1195 15.5455 14.5227V3.47727C15.5455 2.88053 15.3084 2.30824 14.8864 1.88628C14.4645 1.46432 13.8922 1.22727 13.2955 1.22727ZM10.8409 13.5H7.15909C6.99634 13.5 6.84026 13.4353 6.72518 13.3203C6.61011 13.2052 6.54546 13.0491 6.54546 12.8864C6.54546 12.7236 6.61011 12.5675 6.72518 12.4525C6.84026 12.3374 6.99634 12.2727 7.15909 12.2727H10.8409C11.0037 12.2727 11.1597 12.3374 11.2748 12.4525C11.3899 12.5675 11.4545 12.7236 11.4545 12.8864C11.4545 13.0491 11.3899 13.2052 11.2748 13.3203C11.1597 13.4353 11.0037 13.5 10.8409 13.5Z",
fill: "currentColor"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 205,
columnNumber: 5
}, this);
}
function AppsIcon() {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["Fragment"], {
children: [
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", {
d: "M4.43637 10.3782C4.35322 10.4255 4.25929 10.4505 4.16364 10.4509C4.04345 10.451 3.92659 10.4115 3.8312 10.3384C3.73581 10.2653 3.66725 10.1627 3.63615 10.0466C3.60505 9.93049 3.61317 9.80738 3.65924 9.69638C3.70531 9.58537 3.78675 9.49269 3.89091 9.43273L5.01818 8.78182L4.32364 8.38182C3.91526 8.16333 3.60971 7.79237 3.4735 7.3497C3.33729 6.90702 3.38145 6.42846 3.59636 6.01818C3.71269 5.81966 3.87027 5.64842 4.05848 5.51605C4.24668 5.38368 4.46111 5.29326 4.68727 5.25091C5.00863 5.18723 5.34112 5.20982 5.65091 5.31637V1.81818H2.74182C2.47813 1.81578 2.21657 1.86565 1.97226 1.9649C1.72795 2.06415 1.50572 2.21082 1.31841 2.39644C1.1311 2.58206 0.98242 2.80295 0.880959 3.04635C0.779497 3.28975 0.727263 3.55084 0.727274 3.81455V12.1782C0.726317 12.441 0.777248 12.7013 0.877146 12.9444C0.977044 13.1874 1.12394 13.4084 1.30942 13.5945C1.49489 13.7807 1.71529 13.9284 1.95798 14.0292C2.20066 14.1299 2.46086 14.1818 2.72364 14.1818H5.63273V9.68364L4.43637 10.3782Z",
fill: "currentColor"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 215,
columnNumber: 7
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", {
d: "M4.89091 6.32C4.81646 6.33243 4.74552 6.36059 4.68281 6.4026C4.62011 6.44461 4.56708 6.49951 4.52727 6.56364C4.45835 6.72444 4.45516 6.90584 4.51837 7.06897C4.58159 7.23211 4.70618 7.36399 4.86545 7.43637L5.63273 7.88V6.48364C5.56864 6.4752 5.50685 6.4542 5.45091 6.42182C5.28354 6.31906 5.08374 6.28274 4.89091 6.32ZM13.28 1.81818H6.73455V5.27637C7.00405 5.20499 7.28614 5.19505 7.56 5.24727C7.78608 5.28985 8.00042 5.38036 8.18859 5.51271C8.37676 5.64506 8.5344 5.81618 8.65091 6.01455C8.76587 6.21316 8.83645 6.43432 8.85779 6.66282C8.87914 6.89131 8.85074 7.12171 8.77455 7.33818C8.61873 7.77517 8.30827 8.13996 7.90182 8.36364L7.2 8.78182L8.33091 9.45455C8.43507 9.51451 8.51651 9.60719 8.56258 9.71819C8.60865 9.8292 8.61677 9.95231 8.58567 10.0684C8.55457 10.1845 8.48601 10.2871 8.39062 10.3602C8.29523 10.4333 8.17837 10.4729 8.05818 10.4727C7.96266 10.4714 7.86896 10.4464 7.78545 10.4L6.72727 9.77091V14.1818H13.2727C13.5352 14.1823 13.7952 14.131 14.0378 14.0309C14.2804 13.9308 14.501 13.7838 14.6867 13.5984C14.8725 13.413 15.0199 13.1927 15.1204 12.9503C15.221 12.7078 15.2727 12.4479 15.2727 12.1855V3.82182C15.2737 3.55935 15.2229 3.29926 15.1232 3.05645C15.0235 2.81364 14.877 2.59286 14.6919 2.40676C14.5068 2.22066 14.2868 2.07288 14.0445 1.97189C13.8023 1.87089 13.5425 1.81866 13.28 1.81818Z",
fill: "currentColor"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 219,
columnNumber: 7
}, this),
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", {
d: "M7.72364 6.99636C7.7495 6.92548 7.75996 6.8499 7.75432 6.77465C7.74868 6.69941 7.72706 6.62623 7.69091 6.56C7.65165 6.4954 7.59878 6.44013 7.53597 6.39805C7.47317 6.35598 7.40195 6.3281 7.32727 6.31636C7.13445 6.27837 6.93438 6.31474 6.76727 6.41818L6.72364 6.43636V7.79273L7.35273 7.42909C7.52486 7.33474 7.65672 7.1809 7.72364 6.99636Z",
fill: "currentColor"
}, void 0, false, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 223,
columnNumber: 7
}, this)
]
}, void 0, true, {
fileName: "[project]/src/components/nav/nav-page.tsx",
lineNumber: 214,
columnNumber: 5
}, this);
}
}),
"[project]/src/components/site/json-ld.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([
"JsonLd",
()=>JsonLd
]);
var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$index$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/src/lib/seo/index.ts [app-rsc] (ecmascript) <locals>");
var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$jsonld$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/jsonld.ts [app-rsc] (ecmascript)");
;
;
function JsonLd({ data }) {
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("script", {
type: "application/ld+json",
dangerouslySetInnerHTML: {
__html: (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$jsonld$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["serializeJSONLD"])(data)
}
}, void 0, false, {
fileName: "[project]/src/components/site/json-ld.tsx",
lineNumber: 5,
columnNumber: 5
}, this);
}
}),
]})(),
"[externals]/next/dist/server/app-render/module-loading/track-module-loading.external.js [external] (next/dist/server/app-render/module-loading/track-module-loading.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/server/app-render/module-loading/track-module-loading.external.js", () => require("next/dist/server/app-render/module-loading/track-module-loading.external.js"));
module.exports = mod;
}),
"[externals]/next/dist/shared/lib/no-fallback-error.external.js [external] (next/dist/shared/lib/no-fallback-error.external.js, cjs)", ((__turbopack_context__, module, exports) => {
var mod = __turbopack_context__.x("next/dist/shared/lib/no-fallback-error.external.js", () => require("next/dist/shared/lib/no-fallback-error.external.js"));
module.exports = mod;
}),
"[project]/src/app/nav/page.tsx [app-rsc] (ecmascript, Next.js Server Component)", (function(__turbopack_context__){
__turbopack_context__.n(__turbopack_context__.i("[project]/src/app/nav/page.tsx [app-rsc] (ecmascript)"));
}),
];
//# sourceMappingURL=%5Broot-of-the-server%5D__1w5t9ifid_9je._.js.map
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/_not-found/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app__not-found_page_actions_0pt47yrisjoev.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/drama/[id]/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_drama_%5Bid%5D_page_actions_1wt_vhfox0-o0.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/home-road/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_home-road_page_actions_1oo8jcu_t-3qv.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/info/[slug]/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_info_%5Bslug%5D_page_actions_004rqpkl1lzbo.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/nav/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_nav_page_actions_195zfex_c-c60.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_page_actions_0hhsz1jew5ls7.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/play/[id]/[episode]/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_play_%5Bid%5D_%5Bepisode%5D_page_actions_0t-3rtmrk8fvl.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/rank/[[...parts]]/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_rank_%5B%5B___parts%5D%5D_page_actions_19tydq2u76o09.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/search/[[...parts]]/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_search_%5B%5B___parts%5D%5D_page_actions_0e76ulz4ep-cg.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
@@ -0,0 +1,9 @@
module.exports = [
"[project]/.next-internal/server/app/shorts/[[...parts]]/page/actions.js [app-rsc] (server actions loader, ecmascript)", ((__turbopack_context__) => {
"use strict";
__turbopack_context__.s([]);
}),
];
//# sourceMappingURL=_next-internal_server_app_shorts_%5B%5B___parts%5D%5D_page_actions_0q6lzp5o_dynq.js.map
@@ -0,0 +1,6 @@
{
"version": 3,
"sources": [],
"sections": [
{"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":""}}]
}
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More