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

'Ela disse que estava indo embora', conta empresário de Elza Soares

Leandro Carneiro e Rodolfo Vicentini

De Splash, em São Paulo

20/01/2022 21h52

O empresário de Elza Soares, Pedro Loureiro, contou que os últimos momentos da cantora foram de tranquilidade com a família. Em conversa com Splash, ele disse que a artista avisou a neta que estava "indo embora" momentos antes de morrer.

Ela disse que estava bem, ótima. Foi deitar, escutando música — a gente sempre monitorando os dados vitais. Em um dado momento, ela falou para uma das netas que estava 'indo embora'. A gente achou que fosse uma licença poética. Ela começou a ficar com respiração ofegante. Chamamos o socorro, e o médico dela chegou. Pedro Loureiro, empresário de Elza Soares

"Pouco antes do socorro chegar, ela falou com marido da neta: 'Eles vieram me buscar'. A gente achou que poderia ser algum delírio. Dez minutos depois, ela fechou o olho, respirou e pronto. Quando socorro chegou, ela tinha pulsação, mas falaram que foi causa natural. Ela foi descansar. Foi o que aconteceu, ela escolheu o momento certo", acrescentou.

O empresário ainda contou que Elza gravou um DVD há dois dias e a última música registrada por ela foi "Mulher do Fim do Mundo".

A última frase que ela cantou foi: 'Me deixa cantar até o fim'. E ela cantou até o fim, fez o que queria fazer até o fim.

Elza Soares morreu ontem aos 91 anos de causas naturais. Considerada uma das maiores vozes da história do Brasil, ela será velada amanhã no Theatro Municipal do Rio, no centro da cidade. O enterro será realizado no cemitério Jardim da Saudade, no Jardim Sulacap.

O velório da cantora será fechado para familiares e amigos das 8h às 10h. Já das 10h às 14h a cerimônia será aberta ao público.

O translado para o cemitério Jardim da Saudade será feito pelo carro do Corpo de Bombeiros com trajeto ando pela Avenida Atlântica. O velório no cemitério, assim como o enterro, serão s aos familiares e amigos.

Morre Elza Soares; veja fotos da carreira da cantora