import DataStateSkeleton from '@/components/helper/skeleton/DataStateSkeleton';
import Table from '@/components/Table';
import { ColumnDef } from '@tanstack/react-table';

const ClosingTabSkeleton = <T extends object>({
  columns,
  icon,
  title,
  subtitle,
}: {
  columns: ColumnDef<T, unknown>[];
  icon: React.ReactNode;
  title: string;
  subtitle: string;
}) => {
  return (
    <div className='relative size-full'>
      <Table
        data={[]}
        columns={columns}
        isLoading={true}
        className={{
          skeletonCellClassName: 'animate-none w-full h-5 bg-base-content/4',
          headerColumnClassName: 'whitespace-nowrap',
          containerClassName: 'mb-0 overflow-hidden',
          tableWrapperClassName: 'overflow-hidden',
        }}
      />
      <div className='absolute inset-0 flex items-center justify-center'>
        <DataStateSkeleton icon={icon} title={title} description={subtitle} />
      </div>
    </div>
  );
};

export default ClosingTabSkeleton;
