;(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

'A mais importante em décadas': imprensa internacional repercute eleição

Henrique Santiago

Do UOL, em São Paulo

30/10/2022 18h19Atualizada em 30/10/2022 18h31

A imprensa internacional repercute neste domingo (30) a eleição que terá Luiz Inácio Lula da Silva (PT) ou Jair Bolsonaro (PL) na Presidência da República.

Os olhos dos principais veículos de comunicação do mundo estão voltados, além da possibilidade de retorno de Lula ao Palácio do Planalto ou de reeleição de Bolsonaro, para o futuro da Amazônia— e fazem críticas às políticas de desmatamento adotadas pela atual gestão.

O jornal britânico The Guardian destacou que a eleição deste domingo é a "mais importante em décadas", que acontece em meio a "alegações de que as forças de segurança estavam envolvidas em uma campanha de repressão eleitoral pró-Bolsonaro."

De acordo com o veículo, a vitória do petista "coroaria uma das reviravoltas mais notáveis da história". Também foi destaque a atuação da PRF (Polícia Rodoviária Federal), que "havia montado bloqueios em redutos de Lula no Nordeste do país."

O New York Times afirma que a vitória de Lula ou Bolsonaro, "dois grandes nomes da política brasileira moderna", vai além de uma disputa entre esquerda e direita.

"A eleição traz grandes consequências para a floresta amazônica, que é crucial para a saúde do planeta. Bolsonaro destruiu as agências encarregadas de proteger a floresta, levando ao aumento do desmatamento, enquanto Lula prometeu erradicar a extração ilegal de madeira e mineração", diz trecho do jornal norte-americano.

O francês Le Monde declara que o Brasil chegou ao segundo turno "profundamente dividido", e que o desempenho de Bolsonaro no primeiro turno deixou Lula desestabilizado.

"Se a dinâmica agora for a favor de Bolsonaro, Lula segue como favorito a priori: dados os resultados do primeiro turno, ele precisaria de menos de dois milhões de votos adicionais para vencer, contra oito milhões do atual presidente."

O argentino Clarin descreveu o último debate entre os presidenciáveis, realizado pela TV Globo, como "violento" e ainda chamou atenção para a disputa do voto religioso, em especial do eleitor evangélico.

Na avaliação do jornal, o segundo turno foi marcado por visitas a igrejas, cartas aos fiéis e uma chuva de desinformação. "Os esforços para ganhar essa votação, no que a imprensa chamou de "guerra religiosa", continuaram na reta final da campanha."