'use client';

import { useState } from 'react';
import Tabs from '@/components/Tabs';
import CustomerPaymentTab from '@/components/pages/report/finance/tab/CustomerPaymentTab';
import DebtSupplierTab from '@/components/pages/report/finance/tab/DebtSupplierTab';
import BalanceMonitoringTab from '@/components/pages/report/finance/tab/BalanceMonitoringTab';
import { useTabActionsStore } from '@/stores/tab-actions/tab-actions.store';

const FinanceTabs = () => {
  const [activeTabId, setActiveTabId] = useState<string>('1');
  const tabActions = useTabActionsStore((state) => state.tabActions);

  const tabs = [
    {
      id: '1',
      label: 'Rekapitulasi Hutang Ke Supplier',
      content: <DebtSupplierTab tabId={'1'} />,
    },
    {
      id: '2',
      label: 'Kontrol Pembayaran Customer',
      content: <CustomerPaymentTab tabId={'2'} />,
    },
    {
      id: '3',
      label: 'Monitoring Saldo',
      content: <BalanceMonitoringTab tabId={'3'} />,
    },
  ];

  return (
    <section className='w-full'>
      <Tabs
        tabs={tabs}
        variant='boxed'
        activeTabId={activeTabId}
        onTabChange={setActiveTabId}
        className={{
          tabHeaderWrapper:
            'justify-between items-center p-3 border-b border-base-content/10',
          tab: 'w-fit',
          content: 'p-0 m-0',
        }}
        sideContent={tabActions[activeTabId] || null}
      />
    </section>
  );
};

export default FinanceTabs;
