'use client'; import React, { useEffect, useMemo, useState } from 'react'; import Link from 'next/link'; import { CircleHelp, CreditCard, LifeBuoy, Mail, Phone, RotateCcw, ShoppingBag, Truck, Wrench, } from 'lucide-react'; import { AnnouncementBar } from '@/layout/AnnouncementBar'; import { Header } from '@/layout/Header'; import { Navbar } from '@/layout/Navbar'; import { Footer } from '@/layout/Footer'; import { StickyHeaderSpacer } from '@/components/StickyHeaderSpacer'; import { FloatingButtons } from '@/components/FloatingButtons'; import { storefrontService, type FooterInfo, type StorefrontSettings, MOCK_FOOTER_INFO, } from '@/services/api/storefrontService'; import { buildHelpDoc } from '@/lib/helpCenterContent'; const TOPIC_ICONS = { faqs: CircleHelp, orders: Truck, payments: CreditCard, returns: RotateCcw, repairs: Wrench, shop: ShoppingBag, } as const; function telHref(phone: string): string { return `tel:${phone.replace(/[^\d+]/g, '')}`; } export default function HelpCenterPage() { const [footer, setFooter] = useState(MOCK_FOOTER_INFO); const [settings, setSettings] = useState({ store_name: 'iFixKart' }); useEffect(() => { let cancelled = false; Promise.all([ storefrontService.getFooterInfo(), storefrontService.getSettings(), ]).then(([info, store]) => { if (cancelled) return; if (info) setFooter(info); if (store) setSettings(store); }); return () => { cancelled = true; }; }, []); const storeName = settings.store_name || 'iFixKart'; const phone = footer.phone || settings.support_phone || ''; const email = footer.email || ''; const doc = useMemo(() => buildHelpDoc(storeName), [storeName]); return (

{doc.heading}

{doc.intro}

{doc.topics.map((item) => { const Icon = TOPIC_ICONS[item.id as keyof typeof TOPIC_ICONS] || CircleHelp; return (

{item.title}

{item.detail}

); })}

Browse FAQs

{doc.faqLinks.map((item) => (

{item.title}

{item.detail}

))}
{(phone || email) && ( )}

Support is available Monday to Saturday, 10:00 AM – 6:30 PM

{doc.sections.map((section) => (

{section.title}

{section.paragraphs.map((p, i) => (

{p}

))}
))}

Prefer a full contact page?{' '} Contact Us

); }