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

Covid: SP bate recorde na média móvel de mortes; 67 cidades não têm mais leito de UTI

Fachada do Instituto central do Hospital das Clínicas, em São Paulo - Acervo USP
Fachada do Instituto central do Hospital das Clínicas, em São Paulo Imagem: Acervo USP

João Ker

Do Estadão Conteúdo, em São Paulo

17/03/2021 18h38

São Paulo atingiu hoje uma média móvel de 421 mortes diárias pelo coronavírus, a maior desde o início da pandemia no Estado. O número leva em conta a média dos últimos sete dias. Apenas nas últimas 24 horas, foram 617 vítimas fatais da doença. Ainda nesta tarde, a ocupação em leitos de UTI destinados à covid chegou a 90,3%.

Paralelamente, a oferta dos leitos de UTI em São Paulo também está próxima ao colapso. De acordo com o secretário estadual de Saúde Jean Gorinchteyn, pelo menos 67 dos 105 municípios com vagas para tratamento intensivo já atingiram sua capacidade total. Hoje, o estado já abriga um total de 10.756 pacientes em UTI, enquanto reportagem publicada pelo Estadão mostrou ainda que pelo menos 90 pessoas morreram na fila, aguardando vaga em 25 municípios paulistas.

O estado está na "fase emergencial" do Plano São Paulo, a mais restritiva até agora, desde segunda-feira. Durante coletiva de imprensa nesta tarde, o governador João Doria (PSDB) descartou a possibilidade de enrijecer ainda mais as medidas restritivas por ora, afirmando que essa decisão caberia à equipe Centro de Contingência da Covid-19. De acordo com o coordenador Paulo Menezes, ainda é necessário mais tempo para ver quais "resultados efetivos" serão alcançados com as medidas implementadas nesta semana.

Índice de isolamento: 43%

Dados do governo de São Paulo apontam que, nesta quarta, o índice de isolamento no Estado estava em 43%, apenas um ponto acima do registrado ontem. Desde o início a pandemia, o Centro de Contingência tem alertado que a meta do Estado seria a de elevar essa taxa aos 60%, com 70% sendo o número ideal.

Em relação à semana epidemiológica anterior, São Paulo também já registra um aumento de 6,9% nos óbitos e 6,4% nas novas internações pela covid. Com os números desta quarta, o Estado atingiu um total 65.519 mortes e 2.243.868 casos da doença. A situação reflete o que acontece em todo o Brasil, que a pelo seu período mais alarmante na pandemia. Ainda nesta terça-feira, 16, o País atingiu o recorde de 2.798 mortes pela doença em um dia, o equivalente a 116 óbitos por hora.