forked from QuantumNous/new-api
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.tsx
More file actions
78 lines (70 loc) 路 2.61 KB
/
Copy pathindex.tsx
File metadata and controls
78 lines (70 loc) 路 2.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
/*
Copyright (C) 2023-2026 QuantumNous
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
For commercial licensing, please contact support@quantumnous.com
*/
import { useStatus } from '@/hooks/use-status'
import { SettingsPage } from '../components/settings-page'
import type { OperationsSettings } from '../types'
import {
OPERATIONS_DEFAULT_SECTION,
getOperationsSectionContent,
getOperationsSectionMeta,
} from './section-registry.tsx'
const defaultOperationsSettings: OperationsSettings = {
DefaultCollapseSidebar: false,
DemoSiteEnabled: false,
SelfUseModeEnabled: false,
QuotaRemindThreshold: '',
SMTPServer: '',
SMTPPort: '',
SMTPAccount: '',
SMTPFrom: '',
SMTPToken: '',
SMTPSSLEnabled: false,
SMTPStartTLSEnabled: false,
SMTPInsecureSkipVerify: false,
SMTPForceAuthLogin: false,
WorkerUrl: '',
WorkerValidKey: '',
WorkerAllowHttpImageRequestEnabled: false,
LogConsumeEnabled: false,
'performance_setting.disk_cache_enabled': false,
'performance_setting.disk_cache_threshold_mb': 10,
'performance_setting.disk_cache_max_size_mb': 1024,
'performance_setting.disk_cache_path': '',
'performance_setting.monitor_enabled': false,
'performance_setting.monitor_cpu_threshold': 90,
'performance_setting.monitor_memory_threshold': 90,
'performance_setting.monitor_disk_threshold': 95,
'perf_metrics_setting.enabled': true,
'perf_metrics_setting.flush_interval': 5,
'perf_metrics_setting.bucket_time': 'hour',
'perf_metrics_setting.retention_days': 0,
}
export function OperationsSettings() {
const { status } = useStatus()
return (
<SettingsPage
routePath='/_authenticated/system-settings/operations/$section'
defaultSettings={defaultOperationsSettings}
defaultSection={OPERATIONS_DEFAULT_SECTION}
getSectionContent={getOperationsSectionContent}
getSectionMeta={getOperationsSectionMeta}
extraArgs={[
status?.version as string | undefined,
status?.start_time as number | null | undefined,
]}
loadingMessage='Loading maintenance settings...'
/>
)
}