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

Comitê do Consórcio Nordeste orienta proibir festas de Carnaval e Ano-Novo

Carnaval de Olinda nas ruas históricas da cidade; comitê do Consórcio Nordeste disse que estados não têm segurança para fazer eventos que gerem aglomeração - Arquimedes Santos/Prefeitura de Olinda
Carnaval de Olinda nas ruas históricas da cidade; comitê do Consórcio Nordeste disse que estados não têm segurança para fazer eventos que gerem aglomeração Imagem: Arquimedes Santos/Prefeitura de Olinda

Do UOL, em São Paulo

03/12/2021 17h27Atualizada em 03/12/2021 20h45

O Comitê Científico do Consórcio Nordeste (C4NE), grupo de especialistas que orientam os estados da região no combate à covid-19, recomendou hoje aos governadores que as festas de Réveillon e Carnaval sejam canceladas. Os governantes não são obrigados a acatarem os conselhos do C4NE.

O C4NE tem como missão reunir informações para orientar e articular as ações dos estados e municípios nordestinos para o combate à pandemia. Coordenado pelo Carlos Gabas e pelo físico Sérgio Machado Rezende, ex-ministro da Ciência e Tecnologia, o Comitê é integrado por representantes de todos estados da região e assessorados por cientistas e médicos de outras regiões do país e do exterior.

Em boletim, o comitê diz que as celebrações "intensificariam a transmissão do vírus e resultariam em nova onda da pandemia".

Eles analisaram a situação da pandemia em cada um dos estados e concluíram que a maior parte deles não têm segurança sanitária para eventos que gerem grandes aglomerações.

"Ainda não há segurança sanitária plena para realização de eventos com grande quantidade de público devido aos riscos de disseminação da covid-19 e possibilidade da ocorrência de novas variantes", escreveram os especialistas na avaliação do estado da Paraíba, por exemplo. "O risco epidêmico permanece alta e a interiorização de casos continua, e por esta razão o risco de uma nova onda de casos ocorrer no estado não deve ser descartado."

Os outros estados também receberam avaliações semelhantes.

Até o momento, 17 capitais e o Distrito Federal já anunciaram que não haverá festa de Réveillon neste ano por medo que a pandemia avance com a chegada da variante ômicron. São elas: São Paulo, Natal, Recife, Fortaleza, Salvador, São Luís, Teresina, Aracaju, João Pessoa, Cuiabá, Campo Grande, Belém, Palmas, Vitória, Porto Alegre e Florianópolis.

Entretanto, eventos privados continuam permitidos. Especialistas em saúde ouvidos pelo UOL disseram que a estrição apenas de festas públicas não tem qualquer embasamento científico e coloca a população em risco.