# file_utils
import os
import utils.constants as constants
#import shutil
from pathlib import Path

def cleanup_temp_files():
    for file_path in constants.temp_files:
        try:
            os.remove(file_path)
        except Exception as e:
            print(f"Failed to delete temp file {file_path}: {e}")
    print("Temp files cleaned up. Goodbye")

def rename_file_to_lowercase_extension(file_path: str) -> str:
    """
    Renames a file's extension to lowercase in place.

    Parameters:
        file_path (str): The original file path.

    Returns:
        str: The new file path with the lowercase extension.

    Raises:
        OSError: If there is an error renaming the file (e.g., file not found, permissions issue).
    """
    # Split the path into directory and filename
    directory, filename = os.path.split(file_path)
    
    # Split the filename into name and extension
    name, ext = os.path.splitext(filename)
    
    # Convert the extension to lowercase
    new_ext = ext.lower()
    
    # If the extension changes, rename the file
    if ext != new_ext:
        new_filename = name + new_ext
        new_file_path = os.path.join(directory, new_filename)
        os.rename(file_path, new_file_path)
        return new_file_path
    else:
        return file_path