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

Após quase 2 meses de uso, Índia libera registro da Covaxin

Ministro da Saúde da Índia, Harsh Vardhan, segurando um frasco com a Covaxin, vacina contra a covid-19 produzida pelo laboratório Bharat Biotech - Adnan Abidi/Reuters
Ministro da Saúde da Índia, Harsh Vardhan, segurando um frasco com a Covaxin, vacina contra a covid-19 produzida pelo laboratório Bharat Biotech Imagem: Adnan Abidi/Reuters

12/03/2021 10h48Atualizada em 12/03/2021 11h22

ROMA, 12 MAR (ANSA) - O Ministério da Saúde da Índia anunciou na noite desta quinta-feira (11) o registro para uso emergencial da vacina anti-Covid Covaxin, produzida pela farmacêutica Bharat Biotech, após os testes da fase 3 mostrarem que ela apresentou 81% de eficácia na prevenção da doença.

A Covaxin já era usada no programa nacional de imunização desde 16 de janeiro, mas sob condição de ser um "ensaio clínico" geral, sendo que quase dois milhões de doses foram aplicadas até o momento.

A medida gerou muitas críticas de cientistas indianos e também da comunidade internacional, já que não se sabia se a vacina era realmente eficaz para evitar a Covid-19, apesar da segurança ser comprovada nas fases anteriores.

Agora, o imunizante contra o coronavírus Sars-CoV-2 tem a mesma licença que outra vacina usada no país, a da Universidade de Oxford e da AstraZeneca.

Considerado um dos maiores programas de vacinação do mundo, o governo tenta acelerar as aplicações por conta de uma nova alta na quantidade de casos da doença - nas últimas 24 horas, foram 23.139, um recorde para o país.

Conforme dados da Universidade Johns Hopkins, a Índia é o segundo país no número total de contaminados, com 11.308.846, atrás apenas dos Estados Unidos (29.286.650) e pouco à frente do Brasil (11.277.717).

A nação é a quarta no ranking total de óbitos, com 158.306 - atrás de EUA, Brasil e México. Segundo o portal "Our World in Data", a Índia já aplicou 26,1 milhões de doses das vacinas anti-Covid na população.