"""Genera la página HTML autocontenida a partir de las sesiones.
El resultado no necesita red ni servidor: los datos y las transcripciones van
embebidos adentro y se abre con doble clic.
"""
import json
from importlib import resources
MARKER = "__DATA__"
TEMPLATE_NAME = "template.html"
class TemplateError(Exception):
"""El template no tiene la forma que espera el generador."""
def template_text(path=None):
if path:
with open(path, encoding="utf-8") as f:
return f.read()
return (resources.files(__package__) / TEMPLATE_NAME).read_text(encoding="utf-8")
def encode_payload(records):
"""Serializa los registros para meterlos en un