import { useWorkers } from "@/api";
import { useState } from "@wordpress/element";

export const useWorkersController = () => {
  const [search, setSearch] = useState({
    page: 1,
    per_page: 100,
    orderby: "display_name",
    order: "asc",
    search: "",
  });

  const changeSortByName = () =>
    setSearch({
      ...search,
      orderby: "display_name",
      order: search.order === "asc" ? "desc" : "asc",
    });

  const setSearchText = (text) =>
    setSearch({ ...search, search: text, page: 1 });

  const setPage = (page) => setSearch({ ...search, page: page });

  const swrResponse = useWorkers(search);

  return {
    ...swrResponse,
    search,
    setSearch,
    changeSortByName,
    setPage,
    setSearchText,
  };
};
