;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Esse conteúdo é antigo

STF: 2ª Turma decidirá sobre autorização de Lewandowski para liberar mensagens a Lula

Ministros vão decidir se mantém ou não a ordem de compartilhamento do material autorizado por Ricardo Lewandowski - Carlos Moura - SCO/STF
Ministros vão decidir se mantém ou não a ordem de compartilhamento do material autorizado por Ricardo Lewandowski Imagem: Carlos Moura - SCO/STF

Rayssa Motta

São Paulo

05/02/2021 12h53

As decisões do ministro Ricardo Lewandowski, do Supremo Tribunal Federal (STF), que autorizaram a defesa do ex-presidente Luiz Inácio Lula da Silva (PT) a ar as mensagens obtidas na Operação Spoofing e a obter a íntegra da documentação relacionada ao acordo de leniência firmado entre a força-tarefa da Lava Jato e a Odebrecht, serão analisadas pela Segunda Turma na próxima terça-feira, dia 9.

Os ministros vão decidir se mantêm ou não a ordem de compartilhamento do material. O tema foi pautado pelo presidente da Segunda Turma, ministro Gilmar Mendes, a pedido do relator, em um momento de pressão por parte de integrantes do Ministério Público Federal, que cobram a derrubada da autorização. Nos bastidores, há temor de que o conteúdo seja usado no julgamento sobre a suspeição do ex-ministro Sérgio Moro no caso do triplex do Guarujá (SP), como pretendem os advogados do ex-presidente.

Na origem, o pedido da defesa de Lula foi para ar a documentação relacionada ao acordo de leniência da Odebrecht. Depois é que os advogados solicitaram o compartilhamento do acervo da Operação Spoofing, processada em Brasília. A investigação apreendeu conversas hackeadas pelo grupo investigado por invadir o celular de autoridades, incluindo o ex-ministro Sérgio Moro e procuradores da força-tarefa da Lava Jato.

Parte das conversas havia sido revelada na semana ada, mas o restante do conteúdo ficou em sigilo por determinação de Lewandowski. Na segunda-feira, 1º, porém, ele tornou o material público.

A divulgação provocou nova corrida ao Tribunal para embargar o conteúdo. Reclamações foram formalizadas pelo núcleo duro da força-tarefa Lava Jato em Curitiba, pela Associação Nacional dos Procuradores da República (ANPR) e pela própria Procuradoria-Geral da República. Os pedidos vão desde a anulação de todo o acervo da Operação Spoofing até a decretação de "sigilo absoluto" sobre novos diálogos.

Lula não teve o a todo o material apreendido na Spoofing, apenas aos trechos que pudessem ter relação com os processos aos quais responde na Lava Jato. Os fundamentos usados por Lewandowski para atender ao pedido foram atenção aos princípios do contraditório e da ampla defesa.