mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-05 23:26:38 +08:00
前端优化
This commit is contained in:
@@ -5,7 +5,7 @@ WAVELET_FRONTEND_URL=http://localhost:3000
|
||||
WAVELET_BACKEND_URL=http://localhost:3000
|
||||
|
||||
# Session Cookie
|
||||
WAVELET_SESSION_COOKIE_NAME=wavelet_session_id
|
||||
WAVELET_SESSION_COOKIE_NAME=openflare_session_id
|
||||
|
||||
# 环境
|
||||
NODE_ENV=production
|
||||
@@ -9,7 +9,7 @@ export default function ApiDocPage() {
|
||||
sections={apiSections}
|
||||
description={
|
||||
<p className="text-muted-foreground text-sm leading-relaxed">
|
||||
Wavelet 提供简单、强大的 API 接口,支持多种编程语言和开发环境。通过标准化的 RESTful 接口,您可以轻松地与后端服务进行集成与二次开发。
|
||||
OpenFlare 提供简单、强大的 API 接口,支持多种编程语言和开发环境。通过标准化的 RESTful 接口,您可以轻松地与后端服务进行集成与二次开发。
|
||||
</p>
|
||||
}
|
||||
/>
|
||||
|
||||
@@ -10,7 +10,7 @@ export default function HowToUsePage() {
|
||||
sections={howToUseSections}
|
||||
description={
|
||||
<p className="text-muted-foreground text-sm leading-relaxed">
|
||||
欢迎使用 Wavelet 脚手架系统。本文档将引导您快速了解平台的核心组件、角色权限设计及二次开发流程,帮助您快速上手开发。
|
||||
欢迎使用 OpenFlare 管理平台。本文档将引导您快速了解平台的核心组件、角色权限设计及二次开发流程,帮助您快速上手开发。
|
||||
</p>
|
||||
}
|
||||
/>
|
||||
|
||||
@@ -306,7 +306,7 @@ export function StorageConfigTab() {
|
||||
<TextField label="用户名" value={config.webdav.username} onChange={(username) => setConfig({...config, webdav: {...config.webdav, username}})} />
|
||||
<TextField label="密码" type="password" value={config.webdav.password} onChange={(password) => setConfig({...config, webdav: {...config.webdav, password}})} />
|
||||
<div className="md:col-span-2">
|
||||
<TextField label="基础路径" value={config.webdav.base_path} placeholder="wavelet" onChange={(base_path) => setConfig({...config, webdav: {...config.webdav, base_path}})} />
|
||||
<TextField label="基础路径" value={config.webdav.base_path} placeholder="openflare" onChange={(base_path) => setConfig({...config, webdav: {...config.webdav, base_path}})} />
|
||||
</div>
|
||||
</>
|
||||
)}
|
||||
|
||||
@@ -11,8 +11,8 @@ import {RobotsMeta} from "@/components/layout/robots-meta";
|
||||
import "./globals.css";
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Wavelet Platform",
|
||||
description: "通用二次开发标准范式平台",
|
||||
title: "OpenFlare",
|
||||
description: "OpenFlare 边缘节点与反向代理管理平台",
|
||||
};
|
||||
|
||||
export default function RootLayout({
|
||||
|
||||
@@ -46,7 +46,7 @@ interface AuthHeadingProps {
|
||||
export function AuthHeading({
|
||||
title,
|
||||
description,
|
||||
siteName = "Wavelet",
|
||||
siteName = "OpenFlare",
|
||||
}: AuthHeadingProps) {
|
||||
return (
|
||||
<header className="flex flex-col gap-6 [@media(max-height:700px)]:gap-3">
|
||||
|
||||
@@ -241,7 +241,7 @@ export const apiSections: PolicySection[] = [
|
||||
code={`{
|
||||
"error_msg": "",
|
||||
"data": {
|
||||
"site_name": "Wavelet",
|
||||
"site_name": "OpenFlare",
|
||||
"registration_enabled": "true",
|
||||
"password_login_enabled": "true",
|
||||
"password_register_enabled": "true",
|
||||
|
||||
@@ -395,7 +395,7 @@ export function LegalPageLayout({
|
||||
对这些内容有疑问?
|
||||
</p>
|
||||
<div className="flex justify-center gap-4">
|
||||
<Link href="https://github.com/Rain-kl/Wavelet/issues" target="_blank">
|
||||
<Link href="https://github.com/Rain-kl/OpenFlare/issues" target="_blank">
|
||||
<Button variant="outline" className="h-9 text-xs">
|
||||
联系支持
|
||||
</Button>
|
||||
|
||||
@@ -216,7 +216,7 @@ export function SystemTab({ configs, systemConfigsQuery }: SystemTabProps) {
|
||||
type="text"
|
||||
value={siteName}
|
||||
onChange={(e) => setSiteName(e.target.value)}
|
||||
placeholder="例如: Wavelet"
|
||||
placeholder="例如: OpenFlare"
|
||||
className="border-dashed bg-card text-xs"
|
||||
/>
|
||||
<p className="text-[11px] leading-relaxed text-muted-foreground">
|
||||
|
||||
@@ -303,7 +303,7 @@ export function TemplatesManager() {
|
||||
type="text"
|
||||
value={subject}
|
||||
onChange={(e) => setSubject(e.target.value)}
|
||||
placeholder="例如: Wavelet 登录验证码"
|
||||
placeholder="例如: OpenFlare 登录验证码"
|
||||
className="bg-card border-dashed text-xs"
|
||||
/>
|
||||
<p className="text-[10px] text-muted-foreground leading-normal">
|
||||
|
||||
@@ -20,15 +20,15 @@ export const FooterSection = React.memo(function FooterSection({ className }: Fo
|
||||
<div className="lg:col-span-2 space-y-6">
|
||||
<Link href="/" className="flex items-center gap-2">
|
||||
<div className="w-10 h-10 p-2 rounded bg-primary text-sm text-primary-foreground flex items-center justify-center font-bold">
|
||||
MP
|
||||
OF
|
||||
</div>
|
||||
<span className="text-2xl font-bold tracking-tight text-foreground">Modern Platform</span>
|
||||
<span className="text-2xl font-bold tracking-tight text-foreground">OpenFlare</span>
|
||||
</Link>
|
||||
<p className="text-muted-foreground text-base leading-relaxed max-w-sm">
|
||||
通用的、现代化的后台管理系统脚手架。基于 Go + React 构建,开箱即用、完整基建、极易扩展。
|
||||
开源边缘节点与反向代理管理平台。基于 Go + React 构建,统一管理 OpenResty 节点、网站规则与 WAF 配置。
|
||||
</p>
|
||||
<div className="flex gap-4 pt-2">
|
||||
<SocialLink icon={Github} href="https://github.com/Rain-kl/Wavelet/" />
|
||||
<SocialLink icon={Github} href="https://github.com/Rain-kl/OpenFlare/" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -45,15 +45,15 @@ export const FooterSection = React.memo(function FooterSection({ className }: Fo
|
||||
<ul className="space-y-4 text-sm text-muted-foreground">
|
||||
<li><FooterLink href="/docs/how-to-use">快速开始</FooterLink></li>
|
||||
<li><FooterLink href="/docs/api">API 文档</FooterLink></li>
|
||||
<li><FooterLink href="https://github.com/Rain-kl/Wavelet">源代码</FooterLink></li>
|
||||
<li><FooterLink href="https://github.com/Rain-kl/OpenFlare">源代码</FooterLink></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div className="lg:col-span-1">
|
||||
<h3 className="font-semibold text-foreground mb-6">社区</h3>
|
||||
<ul className="space-y-4 text-sm text-muted-foreground">
|
||||
<li><FooterLink href="https://github.com/Rain-kl/Wavelet/issues">GitHub Issues</FooterLink></li>
|
||||
<li><FooterLink href="https://github.com/Rain-kl/Wavelet/discussions">讨论</FooterLink></li>
|
||||
<li><FooterLink href="https://github.com/Rain-kl/OpenFlare/issues">GitHub Issues</FooterLink></li>
|
||||
<li><FooterLink href="https://github.com/Rain-kl/OpenFlare/discussions">讨论</FooterLink></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -13,7 +13,7 @@ export function SiteTitleUpdater() {
|
||||
})
|
||||
|
||||
useEffect(() => {
|
||||
const siteName = publicConfigQuery.data?.site_name || "Wavelet Platform"
|
||||
const siteName = publicConfigQuery.data?.site_name || "OpenFlare"
|
||||
|
||||
// Determine the page suffix based on path
|
||||
let suffix = ""
|
||||
|
||||
@@ -52,7 +52,7 @@ export class DbManageService extends BaseService {
|
||||
} as InternalAxiosRequestConfig);
|
||||
|
||||
const disposition = response.headers['content-disposition'] as string | undefined;
|
||||
let filename = 'wavelet_export';
|
||||
let filename = 'openflare_export';
|
||||
if (disposition) {
|
||||
const match = disposition.match(/filename="?([^";]+)"?/);
|
||||
if (match) filename = match[1];
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "wavelet",
|
||||
"name": "openflare",
|
||||
"version": "dev",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
|
||||
Reference in New Issue
Block a user