"use client"
// Because columns rely on React state/hooks for row actions

import * as React from "react"
import { ColumnDef, Row } from "@tanstack/react-table"
import { ClientDataTableColumnHeaderSimple } from "@/components/client-data-table/data-table-column-simple-header"
import { formatDate } from "@/lib/utils"
import { Checkbox } from "@/components/ui/checkbox"
import { ItemData } from "./rfq-items-table"


/** getColumns: return array of ColumnDef for 'vendors' data */
export function getColumns(): ColumnDef<ItemData>[] {
  return [
    
    // Vendor Name
    {
      accessorKey: "itemCode",
      header: ({ column }) => (
        <ClientDataTableColumnHeaderSimple column={column} title="Item Code" />
      ),
      cell: ({ row }) => row.getValue("itemCode"),
    },
    
    // Vendor Code
    {
      accessorKey: "description",
      header: ({ column }) => (
        <ClientDataTableColumnHeaderSimple column={column} title="Description" />
      ),
      cell: ({ row }) => row.getValue("description"),
    },
    
    // Status
    {
      accessorKey: "quantity",
      header: ({ column }) => (
        <ClientDataTableColumnHeaderSimple column={column} title="Quantity" />
      ),
      cell: ({ row }) => row.getValue("quantity"),
    },
    

    // Created At
    {
      accessorKey: "createdAt",
      header: ({ column }) => (
        <ClientDataTableColumnHeaderSimple column={column} title="Created At" />
      ),
      cell: ({ cell }) => formatDate(cell.getValue() as Date),
    },
    
    // Updated At
    {
      accessorKey: "updatedAt",
      header: ({ column }) => (
        <ClientDataTableColumnHeaderSimple column={column} title="Updated At" />
      ),
      cell: ({ cell }) => formatDate(cell.getValue() as Date),
    },
  ]
}