// Loader: fetches the per-language content bundle written by
// scripts/build-content.mjs. The Babel-transpiled bundle exposes
// __CONTENT_LOADER__ on window so app.jsx can call it on lang change.
window.__CONTENT_LOADER__ = {
  cache: {},

  async load(lang) {
    if (this.cache[lang]) return this.cache[lang];
    const res = await fetch(`/content/${lang}/bundle.json?t=${Date.now()}`);
    if (!res.ok) throw new Error(`Content load failed for ${lang}`);
    const data = await res.json();
    this.cache[lang] = data;
    return data;
  },

  renderTitle(parts) {
    if (!Array.isArray(parts)) return parts;
    return parts.map(p => p.italic ? { em: p.text } : p.text);
  }
};
