/* eslint-disable react-hooks/exhaustive-deps */ 'use client' import colors from '@/con/colors'; import { ScrollArea, Stack, Tabs, TabsList, TabsPanel, TabsTab, Title } from '@mantine/core'; import { IconBuildingStore, IconFileText, IconSparkles, IconUsers, IconUsersPlus } from '@tabler/icons-react'; import { usePathname, useRouter } from 'next/navigation'; import React, { useEffect, useState } from 'react'; function LayoutTabsLayanan({ children }: { children: React.ReactNode }) { const router = useRouter() const pathname = usePathname() const tabs = [ { label: "Pelayanan Surat Keterangan", value: "pelayanansuratketerangan", href: "/admin/desa/layanan/pelayanan_surat_keterangan", icon: }, { label: "Pelayanan Perizinan Berusaha", value: "pelayananperizinanusaha", href: "/admin/desa/layanan/pelayanan_perizinan_berusaha", icon: }, { label: "Pelayanan Telunjuk Sakti Desa", value: "pelayanantelunjuksaktidesa", href: "/admin/desa/layanan/pelayanan_telunjuk_sakti_desa", icon: }, { label: "Pelayanan Penduduk Non-Permanent", value: "pelayanannonpermanent", href: "/admin/desa/layanan/pelayanan_penduduk_non_permanent", icon: }, { label: "Ajukan Permohonan", value: "ajukanpermohonan", href: "/admin/desa/layanan/ajukan_permohonan", icon: } ]; const currentTab = tabs.find(tab => tab.href === pathname) const [activeTab, setActiveTab] = useState(currentTab?.value || tabs[0].value); const handleTabChange = (value: string | null) => { const tab = tabs.find(t => t.value === value) if (tab) { router.push(tab.href) } setActiveTab(value) } useEffect(() => { const match = tabs.find(tab => tab.href === pathname) if (match) { setActiveTab(match.value) } }, [pathname]) return ( Layanan {/* ✅ Scroll horizontal wrapper */} {tabs.map((tab, i) => ( {tab.label} ))} {tabs.map((tab, i) => ( {/* Konten dummy, bisa diganti sesuai routing */} <>{children} ))} ); } export default LayoutTabsLayanan;