from pdf2docx import Converter
import time

def pdf_to_docx(pdf_file, docx_file, progress_callback=None):

    def update(p, msg):
        if progress_callback:
            progress_callback(p, msg)

    update(5, "Abriendo PDF...")

    cv = Converter(pdf_file)

    update(20, "Analizando estructura...")

    time.sleep(0.2)  # pequeña mejora visual (UI feel)

    update(40, "Convirtiendo páginas...")

    # 🔥 conversión real (bloqueante)
    cv.convert(docx_file)

    update(90, "Guardando DOCX...")

    cv.close()

    update(100, "Conversión completada ✔")