var _origSend = chrome.runtime.sendMessage;
chrome.runtime.sendMessage = function(msg, cb) {
  if (msg && msg.action === 'uploadFile') {
    console.log('[DEBUG UPLOAD] URL:', msg.url);
    console.log('[DEBUG UPLOAD] Key:', msg.supabaseKey);
    console.log('[DEBUG UPLOAD] ContentType:', msg.contentType);
    console.log('[DEBUG UPLOAD] Base64 length:', msg.base64 ? msg.base64.length : 0);
  }
  return _origSend.call(this, msg, cb);
};

// === Box Lovable 3.0: microfone no side panel ===
// O side panel do Chrome NAO mostra o prompt de microfone (limitacao do Chrome).
// Solucao: ao clicar no botao de voz (#dl-speech) sem permissao, abre uma janelinha
// (mic-permission.html) — uma janela normal, onde o prompt do microfone funciona.
// Depois que o usuario permite la, a permissao vale pra extensao toda (mesma origem)
// e a voz passa a funcionar no painel.
(function () {
  var micOK = false;
  try {
    chrome.storage.local.get('mic_granted', function (r) { micOK = !!(r && r.mic_granted); });
    chrome.storage.onChanged.addListener(function (c, area) {
      if (area === 'local' && c.mic_granted) micOK = !!c.mic_granted.newValue;
    });
  } catch (e) {}
  document.addEventListener('click', function (e) {
    var btn = e.target && e.target.closest && e.target.closest('#dl-speech');
    if (!btn || micOK) return;
    // Primeira vez sem permissao: segura o clique e abre a janela de permissao.
    e.preventDefault();
    e.stopImmediatePropagation();
    try {
      chrome.windows.create({
        url: chrome.runtime.getURL('mic-permission.html'),
        type: 'popup', width: 460, height: 340
      });
    } catch (err) {
      try { window.open(chrome.runtime.getURL('mic-permission.html'), '_blank'); } catch (e2) {}
    }
  }, true);
})();
