Merge branch 'main' into cloudflare

This commit is contained in:
hamster1963 2024-09-29 11:36:55 +08:00
commit fbe12ec57b
7 changed files with 27 additions and 15 deletions

View File

@ -1,5 +1,6 @@
NezhaBaseUrl=http://124.XX.XX.XX:8008
NezhaAuth=your-nezha-api-token
DefaultLocale=zh
NEXT_PUBLIC_NezhaFetchInterval=5000
NEXT_PUBLIC_ShowFlag=true
NEXT_PUBLIC_DisableCartoon=true

View File

@ -13,10 +13,10 @@
#### 环境变量
| 变量名 | 含义 | 示例 |
| ------------------------------ | -------------------- | -------------------------------- |
| ------------------------------ | -------------------------------- | -------------------------------- |
| NezhaBaseUrl | nezha 面板地址 | http://120.x.x.x:8008 |
| NezhaAuth | nezha 面板 API Token | 5hAY3QX6Nl9B3Uxxxx26KMvOMyXS1Udi |
| ServerDisablePrefetch | 是否禁用预加载 | **默认**false |
| DefaultLocale | 面板默认显示语言(代码参考下表) | **默认**en |
| NEXT_PUBLIC_NezhaFetchInterval | 获取数据间隔(毫秒) | **默认**2000 |
| NEXT_PUBLIC_ShowFlag | 是否显示旗帜 | **默认**false |
| NEXT_PUBLIC_DisableCartoon | 是否禁用卡通人物 | **默认**false |

View File

@ -14,11 +14,13 @@ export default function ServerListClient() {
<div className="flex flex-col items-center justify-center">
<p className="text-sm font-medium opacity-40">{error.message}</p>
<p className="text-sm font-medium opacity-40">
Please check your environment variables and review the server console logs for more details.
Please check your environment variables and review the server console
logs for more details.
</p>
</div>
);
if (!data) return null;
const { result } = data;
const positiveDisplayIndex = result
@ -38,6 +40,7 @@ export default function ServerListClient() {
...noDisplayIndex,
...negativeDisplayIndex,
];
return (
<section className="grid grid-cols-1 gap-2 md:grid-cols-2">
{sortedServers.map((serverInfo) => (

View File

@ -1,5 +1,6 @@
NezhaBaseUrl=http://124.XX.XX.XX:8008
NezhaAuth=your-nezha-api-token
DefaultLocale=zh
NEXT_PUBLIC_NezhaFetchInterval=5000
NEXT_PUBLIC_ShowFlag=true
NEXT_PUBLIC_DisableCartoon=true

View File

@ -1,5 +1,7 @@
// @auto-i18n-check. Please do not delete the line.
import getEnv from "./lib/env-entry";
export const localeItems = [
{ code: "en", name: "English" },
{ code: "ja", name: "日本語" },
@ -21,4 +23,4 @@ export const localeItems = [
];
export const locales = localeItems.map((item) => item.code);
export const defaultLocale = "en";
export const defaultLocale = getEnv("DefaultLocale") || "en";

View File

@ -10,8 +10,8 @@ export async function GetNezhaData() {
var nezhaBaseUrl = getEnv("NezhaBaseUrl");
if (!nezhaBaseUrl) {
console.error("NezhaBaseUrl is not set");
throw new Error("NezhaBaseUrl is not set");
console.log("NezhaBaseUrl is not set");
return { error: "NezhaBaseUrl is not set" };
}
// Remove trailing slash
@ -27,7 +27,12 @@ export async function GetNezhaData() {
revalidate: 0,
},
});
const nezhaData = (await response.json()).result as NezhaAPI[];
const resData = await response.json();
const nezhaData = resData.result as NezhaAPI[];
if (!nezhaData) {
console.log(resData);
return { error: "NezhaData fetch failed" };
}
const data: ServerApi = {
live_servers: 0,
offline_servers: 0,

View File

@ -1,14 +1,14 @@
// @auto-i18n-check. Please do not delete the line.
import createMiddleware from "next-intl/middleware";
import { locales } from "./i18n-metadata";
import { defaultLocale, locales } from "./i18n-metadata";
export default createMiddleware({
// A list of all locales that are supported
locales: locales,
// Used when no locale matches
defaultLocale: "en",
defaultLocale: defaultLocale,
// 'always': This is the default, The home page will also be redirected to the default language, such as www.abc.com to www.abc.com/en
// 'as-needed': The default page is not redirected. For example, if you open www.abc.com, it is still www.abc.com