From 1a72a592b98343a8036beef630a7b36889fdf53b Mon Sep 17 00:00:00 2001 From: Louis Date: Tue, 12 Aug 2025 12:07:25 +0700 Subject: [PATCH] fix: visualize readme content for private repo with HF token --- web-app/src/routes/hub/$modelId.tsx | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/web-app/src/routes/hub/$modelId.tsx b/web-app/src/routes/hub/$modelId.tsx index d46c20ca2..228ebd0e6 100644 --- a/web-app/src/routes/hub/$modelId.tsx +++ b/web-app/src/routes/hub/$modelId.tsx @@ -27,6 +27,7 @@ import { import { Progress } from '@/components/ui/progress' import { Button } from '@/components/ui/button' import { cn } from '@/lib/utils' +import { useGeneralSetting } from '@/hooks/useGeneralSetting' type SearchParams = { repo: string @@ -42,6 +43,7 @@ export const Route = createFileRoute('/hub/$modelId')({ function HubModelDetail() { const { modelId } = useParams({ from: Route.id }) const navigate = useNavigate() + const { huggingfaceToken } = useGeneralSetting() const { sources, fetchSources } = useModelSources() // eslint-disable-next-line @typescript-eslint/no-explicit-any const search = useSearch({ from: Route.id as any }) @@ -60,12 +62,15 @@ function HubModelDetail() { }, [fetchSources]) const fetchRepo = useCallback(async () => { - const repoInfo = await fetchHuggingFaceRepo(search.repo || modelId) + const repoInfo = await fetchHuggingFaceRepo( + search.repo || modelId, + huggingfaceToken + ) if (repoInfo) { const repoDetail = convertHfRepoToCatalogModel(repoInfo) setRepoData(repoDetail) } - }, [modelId, search]) + }, [modelId, search, huggingfaceToken]) useEffect(() => { fetchRepo() @@ -151,7 +156,13 @@ function HubModelDetail() { useEffect(() => { if (modelData?.readme) { setIsLoadingReadme(true) - fetch(modelData.readme) + fetch(modelData.readme, { + headers: huggingfaceToken + ? { + Authorization: `Bearer ${huggingfaceToken}`, + } + : {}, + }) .then((response) => response.text()) .then((content) => { setReadmeContent(content) @@ -162,7 +173,7 @@ function HubModelDetail() { setIsLoadingReadme(false) }) } - }, [modelData?.readme]) + }, [modelData?.readme, huggingfaceToken]) if (!modelData) { return (