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

Baleia Rossi celebra apoio do PT: 'Juntos na defesa de uma democracia viva'

"É um grande dia para quem defende uma Câmara livre e independente", disse Baleia Rossi (MDB-SP) - Luís Macedo/Câmara dos Deputados
"É um grande dia para quem defende uma Câmara livre e independente", disse Baleia Rossi (MDB-SP) Imagem: Luís Macedo/Câmara dos Deputados

Do UOL, em São Paulo

04/01/2021 19h42Atualizada em 04/01/2021 19h47

O deputado federal Balei Rossi (MDB-SP) celebrou hoje a decisão da bancada do PT de apoiar sua candidatura para suceder Rodrigo Maia (DEM-RJ) na presidência da Câmara. Ele reconheceu a existência de divergências com o partido, mas exaltou a união em prol da defesa da democracia.

"A frente ampla ficou ainda maior. O PT anunciou apoio a nossa candidatura. É um grande dia para quem defende uma Câmara livre e independente. Somos 11 partidos diferentes. Divergimos em muitos assuntos. Mas estamos juntos na defesa de uma democracia viva e forte!", escreveu o deputado em uma rede social.

A decisão foi tomada pelo PT após reunião hoje à tarde. Embora tendessem a apoiar Baleia Rossi, havia integrantes do partido que preferiam lançar um candidato próprio da oposição para se juntar ao emedebista num eventual segundo turno ou não ficar ao lado dele pelo fato de o deputado ser do MDB.

Rossi é presidente nacional da sigla de Eduardo Cunha, que possibilitou a abertura do impeachment contra Dilma Rousseff (PT), e de Michel Temer, que assumiu a presidência da República após o processo.

A possibilidade de uma candidatura própria da oposição ou do partido estava no radar até hoje. No entanto, com a decisão de outras siglas de esquerda, como PCdoB e PSB, de já aderirem a Baleia Rossi, a ala mais pragmática do partido se sobressaiu.

O emedebista tem por trás de sua candidatura o grupo político do atual presidente da Câmara, Rodrigo Maia. Agora, com o PT, ele conta com o apoio de cerca de 280 deputados federais contra aproximadamente 175 do bloco de Arthur Lira (Progressistas-AL), candidato do presidente Jair Bolsonaro (sem partido).