mirror of
https://github.com/Buriburizaem0n/admin-frontend-domain.git
synced 2026-02-04 04:30:06 +00:00
refactor: enum i18n
This commit is contained in:
@@ -93,18 +93,18 @@ export const AlertRuleCard: React.FC<AlertRuleCardProps> = ({ data, mutate }) =>
|
||||
resolver: zodResolver(alertRuleFormSchema),
|
||||
defaultValues: data
|
||||
? {
|
||||
...data,
|
||||
rules_raw: JSON.stringify(data.rules),
|
||||
}
|
||||
...data,
|
||||
rules_raw: JSON.stringify(data.rules),
|
||||
}
|
||||
: {
|
||||
name: "",
|
||||
rules_raw: "",
|
||||
rules: [],
|
||||
fail_trigger_tasks: [],
|
||||
recover_trigger_tasks: [],
|
||||
notification_group_id: 0,
|
||||
trigger_mode: 0,
|
||||
},
|
||||
name: "",
|
||||
rules_raw: "",
|
||||
rules: [],
|
||||
fail_trigger_tasks: [],
|
||||
recover_trigger_tasks: [],
|
||||
notification_group_id: 0,
|
||||
trigger_mode: 0,
|
||||
},
|
||||
resetOptions: {
|
||||
keepDefaultValues: false,
|
||||
},
|
||||
@@ -205,7 +205,7 @@ export const AlertRuleCard: React.FC<AlertRuleCardProps> = ({ data, mutate }) =>
|
||||
</SelectTrigger>
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
{Object.entries(triggerModes(t)).map(
|
||||
{Object.entries(triggerModes).map(
|
||||
([k, v]) => (
|
||||
<SelectItem key={k} value={k}>
|
||||
{v}
|
||||
|
||||
@@ -67,13 +67,13 @@ export const CronCard: React.FC<CronCardProps> = ({ data, mutate }) => {
|
||||
defaultValues: data
|
||||
? data
|
||||
: {
|
||||
name: "",
|
||||
task_type: 0,
|
||||
scheduler: "",
|
||||
servers: [],
|
||||
cover: 0,
|
||||
notification_group_id: 0,
|
||||
},
|
||||
name: "",
|
||||
task_type: 0,
|
||||
scheduler: "",
|
||||
servers: [],
|
||||
cover: 0,
|
||||
notification_group_id: 0,
|
||||
},
|
||||
resetOptions: {
|
||||
keepDefaultValues: false,
|
||||
},
|
||||
@@ -143,7 +143,7 @@ export const CronCard: React.FC<CronCardProps> = ({ data, mutate }) => {
|
||||
</SelectTrigger>
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
{Object.entries(cronTypes(t)).map(([k, v]) => (
|
||||
{Object.entries(cronTypes).map(([k, v]) => (
|
||||
<SelectItem key={k} value={k}>
|
||||
{v}
|
||||
</SelectItem>
|
||||
@@ -199,7 +199,7 @@ export const CronCard: React.FC<CronCardProps> = ({ data, mutate }) => {
|
||||
</SelectTrigger>
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
{Object.entries(cronCoverageTypes(t)).map(
|
||||
{Object.entries(cronCoverageTypes).map(
|
||||
([k, v]) => (
|
||||
<SelectItem key={k} value={k}>
|
||||
{v}
|
||||
|
||||
@@ -247,7 +247,7 @@ export const ServiceCard: React.FC<ServiceCardProps> = ({ data, mutate }) => {
|
||||
</SelectTrigger>
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
{Object.entries(serviceCoverageTypes(t)).map(
|
||||
{Object.entries(serviceCoverageTypes).map(
|
||||
([k, v]) => (
|
||||
<SelectItem key={k} value={k}>
|
||||
{v}
|
||||
|
||||
@@ -81,7 +81,7 @@ export default function AlertRulePage() {
|
||||
{
|
||||
header: t("TriggerMode"),
|
||||
accessorKey: "trigger Mode",
|
||||
accessorFn: (row) => triggerModes(t)[row.trigger_mode] || "",
|
||||
accessorFn: (row) => triggerModes[row.trigger_mode] || "",
|
||||
},
|
||||
{
|
||||
header: t("Rules"),
|
||||
|
||||
@@ -74,7 +74,7 @@ export default function CronPage() {
|
||||
{
|
||||
header: t("Type"),
|
||||
accessorKey: "taskType",
|
||||
accessorFn: (row) => cronTypes(t)[row.task_type] || "",
|
||||
accessorFn: (row) => cronTypes[row.task_type] || "",
|
||||
},
|
||||
{
|
||||
header: t("CronExpression"),
|
||||
|
||||
@@ -64,7 +64,7 @@ export default function SettingsPage() {
|
||||
}, [error])
|
||||
|
||||
useEffect(() => {
|
||||
;(async () => {
|
||||
; (async () => {
|
||||
try {
|
||||
const c = await getSettings()
|
||||
setConfig(c)
|
||||
@@ -78,20 +78,20 @@ export default function SettingsPage() {
|
||||
resolver: zodResolver(settingFormSchema),
|
||||
defaultValues: config
|
||||
? {
|
||||
...config,
|
||||
site_name: config.site_name || "",
|
||||
user_template:
|
||||
config.user_template ||
|
||||
Object.keys(config.frontend_templates.filter((t) => !t.is_admin) || {})[0] ||
|
||||
"user-dist",
|
||||
}
|
||||
...config,
|
||||
site_name: config.site_name || "",
|
||||
user_template:
|
||||
config.user_template ||
|
||||
Object.keys(config.frontend_templates.filter((t) => !t.is_admin) || {})[0] ||
|
||||
"user-dist",
|
||||
}
|
||||
: {
|
||||
ip_change_notification_group_id: 0,
|
||||
cover: 1,
|
||||
site_name: "",
|
||||
language: "",
|
||||
user_template: "user-dist",
|
||||
},
|
||||
ip_change_notification_group_id: 0,
|
||||
cover: 1,
|
||||
site_name: "",
|
||||
language: "",
|
||||
user_template: "user-dist",
|
||||
},
|
||||
resetOptions: {
|
||||
keepDefaultValues: false,
|
||||
},
|
||||
@@ -236,15 +236,15 @@ export default function SettingsPage() {
|
||||
{!config?.frontend_templates?.find(
|
||||
(t) => t.path === field.value,
|
||||
)?.is_official && (
|
||||
<div className="mt-2 text-sm text-yellow-700 dark:text-yellow-200 bg-yellow-100 dark:bg-yellow-900 border border-yellow-200 dark:border-yellow-700 rounded-md p-2">
|
||||
<div className="font-medium text-lg mb-1">
|
||||
{t("CommunityThemeWarning")}
|
||||
<div className="mt-2 text-sm text-yellow-700 dark:text-yellow-200 bg-yellow-100 dark:bg-yellow-900 border border-yellow-200 dark:border-yellow-700 rounded-md p-2">
|
||||
<div className="font-medium text-lg mb-1">
|
||||
{t("CommunityThemeWarning")}
|
||||
</div>
|
||||
<div className="text-yellow-700 dark:text-yellow-200">
|
||||
{t("CommunityThemeDescription")}
|
||||
</div>
|
||||
</div>
|
||||
<div className="text-yellow-700 dark:text-yellow-200">
|
||||
{t("CommunityThemeDescription")}
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
)}
|
||||
</FormItem>
|
||||
)}
|
||||
/>
|
||||
@@ -383,7 +383,7 @@ export default function SettingsPage() {
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
{Object.entries(
|
||||
settingCoverageTypes(t),
|
||||
settingCoverageTypes,
|
||||
).map(([k, v]) => (
|
||||
<SelectItem key={k} value={k}>
|
||||
{v}
|
||||
|
||||
@@ -70,7 +70,7 @@ export default function WAFPage() {
|
||||
accessorKey: "lastBlockReason",
|
||||
accessorFn: (row) => row.last_block_reason,
|
||||
cell: ({ row }) => (
|
||||
<span>{wafBlockReasons(t)[row.original.last_block_reason] || ""}</span>
|
||||
<span>{wafBlockReasons[row.original.last_block_reason] || ""}</span>
|
||||
),
|
||||
},
|
||||
{
|
||||
@@ -141,9 +141,9 @@ export default function WAFPage() {
|
||||
{header.isPlaceholder
|
||||
? null
|
||||
: flexRender(
|
||||
header.column.columnDef.header,
|
||||
header.getContext(),
|
||||
)}
|
||||
header.column.columnDef.header,
|
||||
header.getContext(),
|
||||
)}
|
||||
</TableHead>
|
||||
)
|
||||
})}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { TFunction } from "i18next"
|
||||
import i18n from "@/lib/i18n"
|
||||
|
||||
export const triggerModes = (t: TFunction<"translation", undefined>) => ({
|
||||
0: t("Always"),
|
||||
1: t("Once"),
|
||||
})
|
||||
export const triggerModes: Record<number, string> = {
|
||||
0: i18n.t("Always"),
|
||||
1: i18n.t("Once"),
|
||||
}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import { TFunction } from "i18next"
|
||||
import i18n from "@/lib/i18n"
|
||||
|
||||
export const cronTypes = (t: TFunction<"translation", undefined>) => ({
|
||||
0: t("Scheduled"),
|
||||
1: t("Trigger"),
|
||||
})
|
||||
export const cronTypes: Record<number, string> = {
|
||||
0: i18n.t("Scheduled"),
|
||||
1: i18n.t("Trigger"),
|
||||
}
|
||||
|
||||
export const cronCoverageTypes = (t: TFunction<"translation", undefined>) => ({
|
||||
0: t("Coverages.Only"),
|
||||
1: t("Coverages.Excludes"),
|
||||
2: t("Coverages.Alarmed"),
|
||||
})
|
||||
export const cronCoverageTypes: Record<number, string> = {
|
||||
0: i18n.t("Coverages.Only"),
|
||||
1: i18n.t("Coverages.Excludes"),
|
||||
2: i18n.t("Coverages.Alarmed"),
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
import { TFunction } from "i18next"
|
||||
import i18n from "@/lib/i18n"
|
||||
|
||||
export const serviceTypes: Record<number, string> = {
|
||||
1: "HTTP GET",
|
||||
@@ -6,7 +6,7 @@ export const serviceTypes: Record<number, string> = {
|
||||
3: "TCPing",
|
||||
}
|
||||
|
||||
export const serviceCoverageTypes = (t: TFunction<"translation", undefined>) => ({
|
||||
0: t("Coverages.Excludes"),
|
||||
1: t("Coverages.Only"),
|
||||
})
|
||||
export const serviceCoverageTypes: Record<number, string> = {
|
||||
0: i18n.t("Coverages.Excludes"),
|
||||
1: i18n.t("Coverages.Only"),
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
import { TFunction } from "i18next"
|
||||
import i18n from "@/lib/i18n"
|
||||
|
||||
export const settingCoverageTypes = (t: TFunction<"translation", undefined>) => ({
|
||||
1: t("Coverages.Excludes"),
|
||||
2: t("Coverages.Only"),
|
||||
})
|
||||
export const settingCoverageTypes: Record<number, string> = {
|
||||
1: i18n.t("Coverages.Excludes"),
|
||||
2: i18n.t("Coverages.Only"),
|
||||
}
|
||||
|
||||
export const nezhaLang: Record<string, string> = {
|
||||
"zh-CN": "简体中文(中国大陆)",
|
||||
@@ -11,8 +11,8 @@ export const nezhaLang: Record<string, string> = {
|
||||
"en-US": "English",
|
||||
}
|
||||
|
||||
export const wafBlockReasons = (t: TFunction<"translation", undefined>) => ({
|
||||
1: t("LoginFailed"),
|
||||
2: t("BruteForceAttackingToken"),
|
||||
3: t("BruteForceAttackingAgentSecret"),
|
||||
})
|
||||
export const wafBlockReasons: Record<number, string> = {
|
||||
1: i18n.t("LoginFailed"),
|
||||
2: i18n.t("BruteForceAttackingToken"),
|
||||
3: i18n.t("BruteForceAttackingAgentSecret"),
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user