Initial commit

This commit is contained in:
xggz
2026-03-06 22:56:13 +08:00
commit 54d1097b41
273 changed files with 92457 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
"use client"
import { createContext, useContext, useState, useCallback } from "react"
import type { SessionStats } from "@/lib/types"
interface SessionStatsContextValue {
sessionStats: SessionStats | null
setSessionStats: (stats: SessionStats | null) => void
}
const SessionStatsContext = createContext<SessionStatsContextValue>({
sessionStats: null,
setSessionStats: () => {},
})
export function SessionStatsProvider({
children,
}: {
children: React.ReactNode
}) {
const [sessionStats, setSessionStatsRaw] = useState<SessionStats | null>(null)
const setSessionStats = useCallback(
(stats: SessionStats | null) => setSessionStatsRaw(stats),
[]
)
return (
<SessionStatsContext.Provider value={{ sessionStats, setSessionStats }}>
{children}
</SessionStatsContext.Provider>
)
}
export function useSessionStats() {
return useContext(SessionStatsContext)
}