mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-03 15:06:36 +08:00
refactor(frontend): simplify routing paths for certificates, dns-accounts and ip-groups
- Remove /websites prefix from TLS certificates and DNS accounts routes. - Remove /waf prefix from IP groups route. - Correct relative import paths for shared components.
This commit is contained in:
@@ -22,6 +22,8 @@ sidebar: false
|
|||||||
|
|
||||||
### 变更
|
### 变更
|
||||||
|
|
||||||
|
- 前端路由调整:将 TLS 证书和 DNS 账号的路由地址移出 `/websites`(分别变更为顶级路由 `/certificates` 和 `/dns-accounts`),将 WAF IP 组的路由地址移出 `/waf`(变更为顶级路由 `/ip-groups`)。
|
||||||
|
|
||||||
- 前端页面鉴权改为默认私域:除 `/login`、`/register`、`/callback` 外,未登录访问任意页面(含数据看板 `/`)均重定向至登录页。
|
- 前端页面鉴权改为默认私域:除 `/login`、`/register`、`/callback` 外,未登录访问任意页面(含数据看板 `/`)均重定向至登录页。
|
||||||
|
|
||||||
### 修复
|
### 修复
|
||||||
|
|||||||
@@ -24,12 +24,12 @@ import type {TlsCertificateItem} from '@/lib/services/openflare';
|
|||||||
import {TlsCertificateService} from '@/lib/services/openflare';
|
import {TlsCertificateService} from '@/lib/services/openflare';
|
||||||
import {formatDateTime} from '@/lib/utils';
|
import {formatDateTime} from '@/lib/utils';
|
||||||
|
|
||||||
import {CertificateApplyDialog} from '../components/certificate-apply-dialog';
|
import {CertificateApplyDialog} from '../websites/components/certificate-apply-dialog';
|
||||||
import {CertificateDetailDialog} from '../components/certificate-detail-dialog';
|
import {CertificateDetailDialog} from '../websites/components/certificate-detail-dialog';
|
||||||
import {CertificateEditorDialog} from '../components/certificate-editor-dialog';
|
import {CertificateEditorDialog} from '../websites/components/certificate-editor-dialog';
|
||||||
import {CertificateImportDialog} from '../components/certificate-import-dialog';
|
import {CertificateImportDialog} from '../websites/components/certificate-import-dialog';
|
||||||
import {WebsiteStatusBadge} from '../components/status-badge';
|
import {WebsiteStatusBadge} from '../websites/components/status-badge';
|
||||||
import {getCertificateStatus, getErrorMessage} from '../components/website-utils';
|
import {getCertificateStatus, getErrorMessage} from '../websites/components/website-utils';
|
||||||
|
|
||||||
const certificatesQueryKey = ['openflare', 'tls-certificates'];
|
const certificatesQueryKey = ['openflare', 'tls-certificates'];
|
||||||
|
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ import type {DnsAccountItem} from '@/lib/services/openflare';
|
|||||||
import {DnsAccountService} from '@/lib/services/openflare';
|
import {DnsAccountService} from '@/lib/services/openflare';
|
||||||
import {formatDateTime} from '@/lib/utils';
|
import {formatDateTime} from '@/lib/utils';
|
||||||
|
|
||||||
import {DnsAccountCreateDialog} from '../components/dns-account-create-dialog';
|
import {DnsAccountCreateDialog} from '../websites/components/dns-account-create-dialog';
|
||||||
import {getErrorMessage} from '../components/website-utils';
|
import {getErrorMessage} from '../websites/components/website-utils';
|
||||||
|
|
||||||
const dnsAccountsQueryKey = ['openflare', 'dns-accounts'];
|
const dnsAccountsQueryKey = ['openflare', 'dns-accounts'];
|
||||||
|
|
||||||
|
|||||||
@@ -23,11 +23,11 @@ import {LoadingStateWithBorder} from '@/components/layout/loading';
|
|||||||
import type {WAFIPGroup, WAFIPGroupAutoTestResult, WAFIPGroupPayload,} from '@/lib/services/openflare';
|
import type {WAFIPGroup, WAFIPGroupAutoTestResult, WAFIPGroupPayload,} from '@/lib/services/openflare';
|
||||||
import {WafService} from '@/lib/services/openflare';
|
import {WafService} from '@/lib/services/openflare';
|
||||||
|
|
||||||
import {buildIPGroupPayloadFromGroup, getErrorMessage, parseAutomaticConfig} from '../components/helpers';
|
import {buildIPGroupPayloadFromGroup, getErrorMessage, parseAutomaticConfig} from '../waf/components/helpers';
|
||||||
import {IPGroupDialog} from '../components/ip-group-dialog';
|
import {IPGroupDialog} from '../waf/components/ip-group-dialog';
|
||||||
import {IPGroupTestDialog} from '../components/ip-group-test-dialog';
|
import {IPGroupTestDialog} from '../waf/components/ip-group-test-dialog';
|
||||||
import {IPGroupViewDialog} from '../components/ip-group-view-dialog';
|
import {IPGroupViewDialog} from '../waf/components/ip-group-view-dialog';
|
||||||
import {IPGroupsTable} from '../components/ip-groups-table';
|
import {IPGroupsTable} from '../waf/components/ip-groups-table';
|
||||||
|
|
||||||
const ipGroupsQueryKey = ['openflare', 'waf', 'ip-groups'];
|
const ipGroupsQueryKey = ['openflare', 'waf', 'ip-groups'];
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ export const openflareSecurityNavGroup: OpenFlareNavGroup = {
|
|||||||
icon: ShieldCheck,
|
icon: ShieldCheck,
|
||||||
items: [
|
items: [
|
||||||
{title: 'WAF', url: '/waf'},
|
{title: 'WAF', url: '/waf'},
|
||||||
{title: 'IP 组', url: '/waf/ip-groups'},
|
{title: 'IP 组', url: '/ip-groups'},
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -51,8 +51,8 @@ export const openflareWebsiteNavGroup: OpenFlareNavGroup = {
|
|||||||
icon: Globe,
|
icon: Globe,
|
||||||
items: [
|
items: [
|
||||||
{title: '域名列表', url: '/websites', childUrls: ['/websites/detail']},
|
{title: '域名列表', url: '/websites', childUrls: ['/websites/detail']},
|
||||||
{title: 'TLS证书', url: '/websites/certificates'},
|
{title: 'TLS证书', url: '/certificates'},
|
||||||
{title: 'DNS账号', url: '/websites/dns-accounts'},
|
{title: 'DNS账号', url: '/dns-accounts'},
|
||||||
{title: '源站地址', url: '/origins', childUrls: ['/origins/detail']},
|
{title: '源站地址', url: '/origins', childUrls: ['/origins/detail']},
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
@@ -85,8 +85,8 @@ export const openflareNavItems: OpenFlareNavItem[] = openflareSidebarNav
|
|||||||
/** 网站模块页内二级导航 */
|
/** 网站模块页内二级导航 */
|
||||||
export const openflareWebsiteSubNav = [
|
export const openflareWebsiteSubNav = [
|
||||||
{title: '网站列表', url: '/websites'},
|
{title: '网站列表', url: '/websites'},
|
||||||
{title: '证书', url: '/websites/certificates'},
|
{title: '证书', url: '/certificates'},
|
||||||
{title: 'DNS 账号', url: '/websites/dns-accounts'},
|
{title: 'DNS 账号', url: '/dns-accounts'},
|
||||||
] as const;
|
] as const;
|
||||||
|
|
||||||
const nonConsoleRoutePrefixes = ['/admin', '/settings', '/files', '/home', '/login', '/register', '/docs'];
|
const nonConsoleRoutePrefixes = ['/admin', '/settings', '/files', '/home', '/login', '/register', '/docs'];
|
||||||
|
|||||||
Reference in New Issue
Block a user