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

Doria vê situação 'gravíssima' e promete anunciar medidas adicionais hoje

João Doria participou hoje da liberação de novas doses da CoronaVac para o PNI (Programa Nacional de Imunização) - Reprodução/TV Globo
João Doria participou hoje da liberação de novas doses da CoronaVac para o PNI (Programa Nacional de Imunização) Imagem: Reprodução/TV Globo

Colaboração para o UOL

17/03/2021 09h08Atualizada em 17/03/2021 13h23

O governador de São Paulo João Doria (PSDB) anunciou hoje, pela manhã, que tomaria medidas adicionais para combater a pandemia de covid-19, classificando a situação no estado como "gravíssima". Mas, durante coletiva, no início da tarde, ele não anunciou mais restrições, como sugeriu —no lugar disso, falou sobre auxílio econômico a comerciantes e antecipou a vacinação de idosos de 72 a 74 anos.

Tenho reunião pela manhã e vai terminar às 11h. E às 11h30 teremos reunião preparatória da entrevista coletiva, onde anunciaremos quais serão as medidas adicionais. Estamos diante de um quadro gravíssimo em São Paulo e no Brasil. E São Paulo adotará novas medidas, a partir da decisão do Centro de Contingência. Não temos decisões políticas.
João Doria (PSDB), governador de São Paulo

O Centro de Contingência concluiu, em reunião do último domingo, que São Paulo poderia entrar em colapso total na quinta-feira, ficando sem leitos de UTI em todo estado.

Desde segunda-feira (15), o estado entrou na fase emergencial, mas o primeiro índice de isolamento não foi satisfatório: apenas 43% das pessoas ficaram em casa. O ideal é que essa taxa fique, pelo menos, acima de 50%.

Ontem São Paulo registrou 679 mortes em um dia —um recorde. O número de hospitalizados com covid-19 também reflete a escalada da pandemia: agora são 10,7 mil pacientes com o vírus internados em UTIs (Unidades de Terapia Intensiva) e 14,2 mil em leitos de enfermaria — 24,9 mil no total, mais um recorde.

A taxa de ocupação dos leitos de UTI em todo o estado, segundo a Secretaria da Saúde de São Paulo, está em 90%. Na Grande São Paulo, a marca é levemente maior, de acordo com a pasta: 90,6%. Esses índices foram revelados ontem.

Desgaste

Os médicos do Centro de Contingência de São Paulo defendem medidas rígidas de controle de circulação das pessoas, para reduzir os números de casos, mortes e internações por causa da covid-19. Mas Doria tem evitado decretar lockdown e se prende ao Plano São Paulo, anunciado no ano ado, e que não tem sido respeitado em todos os municípios nos últimos meses.

Em outubro e novembro, especialistas chegaram a sugerir medidas mais restritas durante a campanha eleitoral. O governador, entretanto, esperou o segundo turno das eleições e apenas na segunda-feira seguinte anunciou uma atualização do plano. À época, ele foi criticado.

No fim de fevereiro, os médicos do Centro de Contingência chamaram a atenção para o avanço da pandemia e pediram anúncios mais drásticos, mas Doria não atendeu a demanda —o que gerou desgaste no grupo.