// Router — wybiera help-<lang>.html na podstawie preferencji
// (storage.userLang) lub Chrome UI language jako fallback.
// MV3 CSP blokuje inline <script>, więc router musi być w osobnym pliku.
(async function () {
  const SUPPORTED = ['pl', 'en', 'de', 'fr', 'it', 'es', 'ru', 'zh'];
  const DEFAULT = 'pl';

  function detectChromeUiLang() {
    try {
      const ui = chrome.i18n && chrome.i18n.getUILanguage ? chrome.i18n.getUILanguage() : '';
      if (!ui) return DEFAULT;
      const short = String(ui).toLowerCase().split('-')[0];
      return SUPPORTED.includes(short) ? short : DEFAULT;
    } catch (e) { return DEFAULT; }
  }

  let lang = DEFAULT;
  try {
    const data = await chrome.storage.local.get(['userLang']);
    const pref = data.userLang;
    lang = (pref && pref !== 'auto' && SUPPORTED.includes(pref)) ? pref : detectChromeUiLang();
  } catch (e) {
    lang = detectChromeUiLang();
  }

  // Strona pomocy istnieje tylko dla języków z gotowym plikiem help-<lang>.html.
  // Dla pozostałych języków UI fallback do EN (interfejs i tak jest przetłumaczony).
  const HELP_AVAILABLE = ['pl', 'en', 'de', 'fr', 'it', 'es', 'ru', 'zh'];
  const helpLang = HELP_AVAILABLE.includes(lang) ? lang : 'en';

  const target = 'help-' + helpLang + '.html' + window.location.search + window.location.hash;
  window.location.replace(target);
})();
