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

Sthe sobre ex-noivo: 'Percebi um outro Victor que eu não enxergava antes'

A Fazenda 2021: Sthefane Matos e o ex-noivo, Victor Igoh - Reprodução/Instagram
A Fazenda 2021: Sthefane Matos e o ex-noivo, Victor Igoh Imagem: Reprodução/Instagram

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

16/12/2021 01h43

Sthefane Matos, ex-peoa de "A Fazenda 13", eliminada na segunda roça especial ao lado de Dynho Alves, comentou sobre sua relação com Victor Igoh, empresário e seu ex-noivo, que anunciou o término do relacionamento após devido à aproximação da influenciadora com Dynho.

Em entrevista para o Link Podcast, a ex-peoa foi questionada sobre seu posicionamento após saber do fim do noivado. "Eu percebo que você vê um pouco de livramento. [...] Parece que para você é 'beleza, vai lá, tchau'", apontou Lucas Selfie e a influenciadora respondeu:

Eu também tive os já a muitas outras coisas que me fazem entender que, talvez, realmente não era para ser ali aquele relacionamento. Quando eu entrei, eu tinha uma visão totalmente diferente. Para mim era o homem que eu ia noivar, casar, ter filhos, o homem da minha vida. Para mim, era o príncipe. Eu sei que eu errei muito, sim, eu reconheço, não estou fugindo do meu erro, estou aqui para arcar as consequências, porém, em contrapartida, ali eu percebi um outro Victor que eu não enxergava antes, com muitas outras informações que até a internet não teve o. Sthefane Matos

"Se aconteceu aquilo tudo na minha vida, eu coloco assim de entregar nas mãos de Deus. Quando acontece alguma coisa, dói muito, não vou falar que está sendo fácil, mas eu prefiro acreditar que tudo é por um propósito, porque tem que acontecer. [...] Eu aprendo muito na minha vida com meus erros, eu sou muito jovem, tenho 23 [...] sei que erro muito também por falta de maturidade", concluiu.

'A Fazenda 13': Os peões que foram eliminados ou saíram do reality rural

A Fazenda: Quem você quer que vença? Bil, Marina, Rico ou Solange?

Enquete encerrada

Total de 50788 votos
57,06%
Antonio Chahestian/Record TV