33 lines
845 B
TypeScript
33 lines
845 B
TypeScript
"use client"
|
|
import { useSteamStore } from "@/store/steam"
|
|
import { useEffect } from "react"
|
|
import "./globals.css"
|
|
import Providers from "./providers"
|
|
import { init } from "@/store"
|
|
import { useDebounce } from "@uidotdev/usehooks"
|
|
|
|
export default function RootLayout({ children }: { children: React.ReactNode }) {
|
|
useEffect(() => {
|
|
void init()
|
|
})
|
|
|
|
// 检测steam路径和游戏路径是否有效
|
|
const steam = useSteamStore()
|
|
const debounceSteamDir = useDebounce(steam.state.steamDir, 500)
|
|
const debounceCs2Dir = useDebounce(steam.state.cs2Dir, 500)
|
|
useEffect(() => {
|
|
void steam.checkSteamDirValid()
|
|
}, [debounceSteamDir])
|
|
useEffect(() => {
|
|
void steam.checkCs2DirValid()
|
|
}, [debounceCs2Dir])
|
|
|
|
return (
|
|
<html lang="en">
|
|
<body>
|
|
<Providers>{children}</Providers>
|
|
</body>
|
|
</html>
|
|
)
|
|
}
|