"""Vorgerenderte bilinguale Geschichten (bombensicherer Demo-Baustein).

NUR gemeinfreie Klassiker (Grimm/Volksmärchen/Aesop) — nie urheberrechtlich
geschütztes Material. Audio liegt in data/audio/stories/<id>.mp3.
"""
from __future__ import annotations

from . import config

STORIES = [
    {"id": "rube", "emoji": "🥕", "title": "Die große Rübe",
     "teaser": "Alle ziehen zusammen: „Vuci! Vuci!“"},
    {"id": "maca", "emoji": "🐱", "title": "Maca sucht ihre Mama",
     "teaser": "Ein Kätzchen, die Sonne und warme mleko."},
    {"id": "pfannkuchen", "emoji": "🥞", "title": "Der dicke fette Pfannkuchen",
     "teaser": "„Kotrljam se!“ — Ich rolle, ich rolle!"},
    {"id": "schweinchen", "emoji": "🐷", "title": "Die drei kleinen Schweinchen",
     "teaser": "„Duvaću, duvaću!“ — der vuk pustet."},
]


def list_stories() -> list[dict]:
    out = []
    for s in STORIES:
        mp3 = config.AUDIO_DIR / "stories" / f"{s['id']}.mp3"
        if mp3.exists():
            ver = int(mp3.stat().st_mtime)   # Cache-Bust: neue Aufnahme -> neue URL
            out.append({**s, "audio_url": f"/audio/stories/{s['id']}.mp3?t={ver}"})
    return out
