'use client'; import React, { useEffect, useState } from 'react'; import Link from 'next/link'; import { storefrontService } from '@/services/api/storefrontService'; import { parseFaqPageData } from '@/lib/faqPageLayout'; import { DEFAULT_FAQ_PAGE, type FaqCategory } from '@/lib/faqDefaults'; export function isFaqNavLink(label: string, url?: string): boolean { const text = String(label || '').toLowerCase(); const path = String(url || '').split('?')[0]; return text.includes('faq') || /^\/faqs?$/i.test(path) || /^\/faqs?\//i.test(path); } export function FaqMenu({ onNavigate }: { onNavigate?: () => void }) { const [categories, setCategories] = useState( DEFAULT_FAQ_PAGE.categories ); useEffect(() => { let cancelled = false; storefrontService.getFaqLayout().then((raw) => { if (cancelled) return; const data = parseFaqPageData(raw); if (data.categories.length > 0) setCategories(data.categories); }); return () => { cancelled = true; }; }, []); return (
All FAQs {categories.map((cat) => ( {cat.title} ))}
); }