"""Asset extractors. Each extractor exposes a single callable: def extract(soup: BeautifulSoup, base_url: str, include_data_uris: bool) -> list[str] returning a list of absolute asset URLs for its category. """ from .audios import extract as extract_audios from .fonts import extract as extract_fonts from .icons_svg import extract as extract_icons from .images import extract as extract_images from .videos import extract as extract_videos # Ordered registry: key -> (group label in response, extractor callable). EXTRACTORS = { "image": ("image", extract_images), "video": ("video", extract_videos), "audio": ("audio", extract_audios), "svg_icon": ("svg_icon", extract_icons), "font": ("font", extract_fonts), } __all__ = ["EXTRACTORS"]