"use client";
import { useState, type FC } from "react";

import Button from "@/components/Button";
import FilterForm from "@/components/Filter";
import { resellerFilter } from "@/components/forms/schema/mac-filter";
import MacResellerList from "@/components/mac-reseller/mac-reseller-list";
import { usePermission } from "@/utils/auth/permission";
import Link from "next/link";
import { FaFilter } from "react-icons/fa";
import { HiPlus } from "react-icons/hi";

const MacResellerContent: FC = () => {
  const [macResellerIds, setMacResellerIds] = useState([]);
  const [isOpen, setOpen] = useState(false);
  const [filterValue, setFilter] = useState("");
  return (
    <>
      <div className="block items-center justify-between border-b border-gray-200 bg-white p-4 dark:border-gray-700 dark:bg-gray-800">
        <div className="mb-1 w-full flex items-center justify-between">
          <div className="sm:flex">
            <h1 className="text-xl font-semibold text-gray-900 dark:text-white sm:text-2xl">
              All MAC Reseller
            </h1>
          </div>
          <div className="ml-auto flex items-center space-x-2 sm:space-x-3 ">
            {usePermission("mac-resellers.create") && (
              <Button color="blue">
                <Link href="/mac-resellers/create">
                  <div className="flex">
                    <HiPlus className="text-xl" />
                    <span>Mac Reseller</span>
                  </div>
                </Link>
              </Button>
            )}
            {usePermission("mac-resellers.access") && (
              <div className="filter">
                <Button onClick={() => setOpen((open) => !open)}>
                  <FaFilter /> <span className="ml-1">Filter</span>
                </Button>
              </div>
            )}
          </div>
        </div>
        {isOpen && (
          <div className="block mt-3">
            <FilterForm schema={resellerFilter} setFilter={setFilter} />
          </div>
        )}
      </div>
      <div className="flex flex-col">
        <div className="overflow-x-auto">
          <div className="inline-block min-w-full align-middle">
            <div className="overflow-hidden shadow">
              <MacResellerList filterValue={filterValue} />
            </div>
          </div>
        </div>
      </div>
    </>
  );
};

export default MacResellerContent;
