import { postRequest } from "src/apis/api-helper";
import { REFRESH_TOKEN } from "src/apis/routes";
import { addIntoLocalStorage } from "./common-helper";

export const refreshToken = async () => {
  try {
    const refToken = localStorage.getItem("refresh-token");
    if (refToken) {
      const data = {
        refresh: refToken,
      };
      const response: any = await postRequest(REFRESH_TOKEN, data);
      if (
        response &&
        response.data &&
        response.data.data &&
        response.data.code
      ) {
        const code = response.data.code;

        switch (code) {
          case 200:
            addIntoLocalStorage("token", response.data.data.access);
            addIntoLocalStorage("refresh-token", response.data.data.refresh);
            return true;
          default:
            return false;
        }
      }
    }
    return false;
  } catch (refreshError) {
    return false;
  }
};
