"""Download pinned mermaid.min.js into md2gost/diagrams (for offline browser render).""" from __future__ import annotations import sys from pathlib import Path import requests ROOT = Path(__file__).resolve().parents[1] DEST = ROOT / "md2gost" / "diagrams" / "mermaid.min.js" MERMAID_VERSION = "11.4.1" URL = f"https://cdn.jsdelivr.net/npm/mermaid@{MERMAID_VERSION}/dist/mermaid.min.js" def main() -> int: DEST.parent.mkdir(parents=True, exist_ok=True) print(f"Скачиваю Mermaid {MERMAID_VERSION} → {DEST}") try: resp = requests.get(URL, timeout=120) resp.raise_for_status() if len(resp.content) < 100_000: print("Слишком маленький ответ — не похоже на mermaid.min.js", file=sys.stderr) return 1 DEST.write_bytes(resp.content) except Exception as exc: print(f"Ошибка: {exc}", file=sys.stderr) return 1 print(f"OK ({DEST.stat().st_size} bytes)") return 0 if __name__ == "__main__": raise SystemExit(main())