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

Ciro: Mandetta é "carrapato apegado ao cargo", mas não deve ser trocado

Do UOL, em São Paulo

09/04/2020 11h45Atualizada em 09/04/2020 12h40

O ex-ministro e ex-governador do Ceará Ciro Gomes (PDT) disse hoje em entrevista ao UOL que o ministro da Saúde, Luiz Henrique Mandetta, é um "carrapato apegado ao cargo", mas que não deve ser trocado por outro nome neste momento.

"Essa baboseira de a gente sair em defesa da manutenção de um ministro só porque o ministro está repetindo no Brasil [orientações da OMS], de forma dúbia, vai e volta em um apego de carrapato ao cargo sem dignidade nenhuma", declarou.

Apesar da crítica, Ciro afirmou, ainda, que "nós estamos tão ferrados no Brasil que até eu saí em defesa da manutenção dele [Mandetta] para não vir um terraplanista supersticioso entrar aí e atrapalhar mais ainda".

Mandetta, que tem manifestado divergências sobre as medidas no combate ao coronavírus defendidas pelo presidente Jair Bolsonaro (sem partido), teve a demissão cogitada nesta semana e itiu na segunda-feira (6) que estava apreensivo e chegaram a limpar as gavetas de seu gabinete. Um dos nomes ventilados para substituí-lo foi o do deputado Osmar Terra (MDB-RS), que vem apresentando um discurso mais alinhado com o do presidente.

"Não está na hora de trocar por um terraplanista, um por maluco, por um idiota, por um carreirista qualquer que se oferece para dizer o que o Bolsonaro quer que seja dito. A pretexto falso de que isso defenderia a economia", afirmou.

O Ministério da Saúde, sob comando de Mandetta, tem seguido as principais recomendações da OMS (Organização Mundial da Saúde) e recomendado o isolamento ou distanciamento social como principal medida de prevenção ao coronavírus e ao aumento descontrolado do contágio. A pasta também vê com reticências o uso da cloroquina no combate à covid-19, recomendando apenas o uso em pacientes críticos ou graves e alertando para os riscos de efeitos colaterais.

Bolsonaro, no entanto, é contrário ao distanciamento social e defende o isolamento vertical, isto é, que apenas pessoas do grupo de risco não saiam às ruas. Também é defensor enfático da cloroquina para todos os casos, ainda que os testes sobre o medicamento não tenham sido concluídos. Osmar Terra tem sido um dos principais apoiadores do presidente nos dois casos.