import secondsUtil from "./secondsUtil";

const getFormattedRuntimeValue = (runtimeDate: Date | null): string => {
  if (!runtimeDate || Number.isNaN(new Date(runtimeDate).getTime()) || new Date(runtimeDate).getTime() <= 0) {
    return "-";
  }
  const secondsUntilValue = secondsUtil(runtimeDate);
  if (typeof secondsUntilValue !== "number") {
    return "-";
  }

  if (secondsUntilValue < 0) {
    const hours = Math.abs(Math.floor(secondsUntilValue / 60 / 60));
    if (hours > 6) {
      return `-${hours} hr`;
    }
    //return `-${Math.abs(Math.floor(secondsUntilValue / 60))}`;
    return `-${Math.abs(Math.floor(secondsUntilValue / 60))} min`;
  }
  if (secondsUntilValue < 120) {
    return `${secondsUntilValue} sec`;
  }
  //return `${Math.abs(Math.floor(secondsUntilValue / 60))}`;
  return `${Math.abs(Math.floor(secondsUntilValue / 60))} min`;
};

export default getFormattedRuntimeValue;
