From 661f8c915beea678213c58d8f9a587779455bd27 Mon Sep 17 00:00:00 2001 From: Vishesh 'ironeagle' Bangotra Date: Tue, 11 Nov 2025 18:47:49 +0530 Subject: [PATCH] fixes for public listed articles --- src/blog/providers/Article.tsx | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/blog/providers/Article.tsx b/src/blog/providers/Article.tsx index a66cf0f..9809215 100644 --- a/src/blog/providers/Article.tsx +++ b/src/blog/providers/Article.tsx @@ -18,15 +18,8 @@ export const ArticleProvider: React.FC<{ children: React.ReactNode }> = ({ child setLoading(true); setError(null); - const res = await api.get('/articles', { - params: { skip: 0, limit: 10 }, - }); - - const formatted = res.data.map((a) => ({ - ...a, - id: a._id || undefined, - })); - + const res = await api.get('/articles', { params: { skip: 0, limit: 10 } }); + const formatted = res.data.map((a) => ({ ...a, id: a._id || undefined })); setArticles(formatted); } catch (err: any) { console.error('Failed to fetch articles:', err); @@ -38,7 +31,13 @@ export const ArticleProvider: React.FC<{ children: React.ReactNode }> = ({ child /** 🔹 Auto-fetch articles whenever user logs in/out */ useEffect(() => { - if (token) fetchArticles(); + // Always load once on mount + // If endpoint requires JWT, fallback safely + if (!token) { + fetchArticles().catch(() => setLoading(false)); // try anyway (handles both public/protected) + } else { + fetchArticles(); + } }, [token]); return (