mirror of
https://github.com/woodchen-ink/nezha-dash-v1.git
synced 2025-07-18 17:41:56 +08:00
feat: new setting api model
This commit is contained in:
parent
1fcabdd45b
commit
f5fd018422
12
src/App.tsx
12
src/App.tsx
@ -32,11 +32,11 @@ const App: React.FC = () => {
|
|||||||
(window.ForceTheme as string) !== "" ? window.ForceTheme : undefined
|
(window.ForceTheme as string) !== "" ? window.ForceTheme : undefined
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (settingData?.data?.custom_code) {
|
if (settingData?.data?.config?.custom_code) {
|
||||||
InjectContext(settingData?.data?.custom_code)
|
InjectContext(settingData?.data?.config?.custom_code)
|
||||||
setIsCustomCodeInjected(true)
|
setIsCustomCodeInjected(true)
|
||||||
}
|
}
|
||||||
}, [settingData?.data?.custom_code])
|
}, [settingData?.data?.config?.custom_code])
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (forceTheme === "dark" || forceTheme === "light") {
|
if (forceTheme === "dark" || forceTheme === "light") {
|
||||||
@ -52,12 +52,12 @@ const App: React.FC = () => {
|
|||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
if (settingData?.data?.custom_code && !isCustomCodeInjected) {
|
if (settingData?.data?.config?.custom_code && !isCustomCodeInjected) {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
if (settingData?.data?.language && !localStorage.getItem("language")) {
|
if (settingData?.data?.config?.language && !localStorage.getItem("language")) {
|
||||||
i18n.changeLanguage(settingData?.data?.language)
|
i18n.changeLanguage(settingData?.data?.config?.language)
|
||||||
}
|
}
|
||||||
|
|
||||||
const customBackgroundImage =
|
const customBackgroundImage =
|
||||||
|
@ -30,7 +30,7 @@ function Header() {
|
|||||||
|
|
||||||
const onlineCount = connected ? (lastMessage ? JSON.parse(lastMessage.data).online || 0 : 0) : "..."
|
const onlineCount = connected ? (lastMessage ? JSON.parse(lastMessage.data).online || 0 : 0) : "..."
|
||||||
|
|
||||||
const siteName = settingData?.data?.site_name
|
const siteName = settingData?.data?.config?.site_name
|
||||||
|
|
||||||
// @ts-expect-error CustomLogo is a global variable
|
// @ts-expect-error CustomLogo is a global variable
|
||||||
const customLogo = window.CustomLogo || "/apple-touch-icon.png"
|
const customLogo = window.CustomLogo || "/apple-touch-icon.png"
|
||||||
|
@ -140,12 +140,19 @@ export interface CycleTransferData {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type SettingConfig = {
|
||||||
|
debug: boolean
|
||||||
|
language: string
|
||||||
|
site_name: string
|
||||||
|
user_template: string
|
||||||
|
admin_template: string
|
||||||
|
custom_code: string
|
||||||
|
}
|
||||||
|
|
||||||
export interface SettingResponse {
|
export interface SettingResponse {
|
||||||
success: boolean
|
success: boolean
|
||||||
data: {
|
data: {
|
||||||
language: string
|
config: SettingConfig
|
||||||
site_name: string
|
|
||||||
custom_code: string
|
|
||||||
version: string
|
version: string
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user