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

Demi Lovato diz que ainda sofre com falta de audição e visão após overdose

Demi Lovato posa para a revista Glamour - Reprodução/Instagram
Demi Lovato posa para a revista Glamour Imagem: Reprodução/Instagram

Colaboração para Splash, em São Paulo

22/03/2021 15h50

Demi Lovato está se abrindo cada vez mais sobre o capítulo de sua overdose em 2018.

Em entrevista ao programa 'Sunday Morning News', a cantora contou o baque físico que a overdose teve nela: "Acordei no hospital e estava legalmente cega. Eu literalmente não podia ver. O derrame da OD causou danos cerebrais e perda de audição". Demi revelou que ainda convive com as sequelas desse dia. "Eu ainda luto com a falta de audição, zumbidos (no ouvido) e pontos cegos na minha visão", disse ela.

A voz de 'Anyone' comentou sobre as manobras de seu antigo time na tentativa de lutar contra seus vícios: "Eles checavam minha fatura do cartão para ver o que eu pedi no Starbucks", contou Demi, completando: "Acho que eles estavam preocupados com compulsão alimentar, então (queriam saber) se eu pedisse cookies ou algo assim com meu café. Me fez muito cuidadosa com o que eu comia".

Demi já se abriu diversas vezes sobre seus vícios e, em 2016, deu entrevista para a mesma jornalista afirmando estar sóbria e bem. A apresentadora disse que se sentiu enganada pela cantora, que respondeu: "Na época que fizemos aquela entrevista, eu estava enganando a mim mesma mais do que qualquer outra pessoa, porque eu estava agindo bastante no meu transtorno alimentar. Fizemos metade daquela entrevista numa academia! Em retrospecto, qualquer um que está em recuperação por um transtorno alimentar talvez não devesse colocar tanta ênfase na academia e tanta ênfase na ginástica".

A cantora ainda se mostrou grata pelas experiências que teve. Quando questionada se era grata pela overdose, Demi respondeu: "Você pode dizer isso. Obviamente eu gostaria de ter feito escolhas melhores, mas eu não posso me arrepender de nada hoje porque às vezes você tem que ar por algumas coisas para acordar, e eu sou agradecida por ter uma segunda chance. Não são muitos que tem isso, e estou agradecida por estar aqui hoje".

O documentário de 4 partes de Demi Lovato, 'Dancing With the Devil', estreia amanhã no Youtube.

Centro de Valorização da Vida

Caso você esteja pensando em cometer suicídio, procure ajuda especializada como o CVV (Centro de Valorização da Vida) e os CAPS (Centros de Atenção Psicossocial) da sua cidade. O CVV funciona 24 horas por dia (inclusive aos feriados) pelo telefone 188, e também atende por e-mail, chat e pessoalmente. São mais de 120 postos de atendimento em todo o Brasil.