import { URL } from "../config";

export const listAllBranches = async () => {
  try {
    const token = localStorage.getItem("token");
    const res = await fetch(`${URL}/v1/api/admin/list-all-branches`, {
      method: "GET",
      headers: {
        "Content-Type": "application/json",
        Authorization: `Bearer ${token}`,
      },
    });

    const jsonResponse = await res.json();

    return jsonResponse;
  } catch (error) {
    console.error("Error fetching data:", error);
  }
};
export const createBranch = async (branchData: FormData) => {
  try {
    const token = localStorage.getItem("token");

    const res = await fetch(`${URL}/v1/api/admin/create-branch`, {
      method: "POST",
      headers: {
        Authorization: `Bearer ${token}`,
      },
      body: branchData, // Move branchData to the body
    });

    const jsonResponse = await res.json();

    return jsonResponse;
  } catch (error) {
    console.error("Error creating branch:", error);
    throw error; // Optionally rethrow the error for handling
  }
};

export const updateBranch = async (branchData: FormData) => {
  try {
    const token = localStorage.getItem("token");
    const res = await fetch(`${URL}/v1/api/admin/edit-branch`, {
      method: "POST",
      headers: {
        Authorization: `Bearer ${token}`,
      },
      body: branchData, // Move branchData to the body
    });

    const jsonResponse = await res.json();

    return jsonResponse;
  } catch (error) {
    console.error("Error fetching data:", error);
  }
};
export const deleteBranch = async (branchId: string) => {
  try {
    const token = localStorage.getItem("token");
    const res = await fetch(`${URL}/v1/api/admin/delete-branch`, {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
        Authorization: `Bearer ${token}`,
      },
      body: JSON.stringify({ branchId }),
    });

    const jsonResponse = await res.json();

    return jsonResponse;
  } catch (error) {
    console.error("Error fetching data:", error);
  }
};
