3v324v23's picture
Зафиксирована рабочая версия TEN-Agent для HuggingFace Space
87337b1
"use client"
import { ReactNode, useEffect } from "react"
import { useAppDispatch, getOptionsFromLocal, getRandomChannel, getRandomUserId, useAppSelector, getTrulienceSettingsFromLocal } from "@/common"
import { setOptions, reset, fetchGraphDetails, setTrulienceSettings } from "@/store/reducers/global"
import { useGraphs } from "@/common/hooks";
interface AuthInitializerProps {
children: ReactNode;
}
const AuthInitializer = (props: AuthInitializerProps) => {
const { children } = props;
const dispatch = useAppDispatch()
const {initialize} = useGraphs()
const selectedGraphId = useAppSelector((state) => state.global.selectedGraphId)
useEffect(() => {
if (typeof window !== "undefined") {
const options = getOptionsFromLocal()
const trulienceSettings = getTrulienceSettingsFromLocal()
initialize()
if (options && options.channel) {
dispatch(reset())
dispatch(setOptions(options))
dispatch(setTrulienceSettings(trulienceSettings))
} else {
dispatch(reset())
dispatch(setOptions({
channel: getRandomChannel(),
userId: getRandomUserId(),
}))
}
}
}, [dispatch])
useEffect(() => {
if (selectedGraphId) {
dispatch(fetchGraphDetails(selectedGraphId));
}
}, [selectedGraphId, dispatch]); // Automatically fetch details when `selectedGraphId` changes
return children
}
export default AuthInitializer;