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

Bia Miranda anuncia término de noivado e explica: 'Quase me agrediu'

Bia Miranda ficou em segundo lugar em A Fazenda 2022 - Reprodução/Playplus
Bia Miranda ficou em segundo lugar em A Fazenda 2022 Imagem: Reprodução/Playplus

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

28/03/2023 08h20

Bia Miranda, 18, vice-campeã de A Fazenda 2022 (RecordTV), usou as redes sociais para anunciar o término do noivado com Gabriel Roza, 23, e o acusou de roubá-la e tentar agredi-la.

A neta de Gretchen deixou claro que não o traiu, explicou que Gabriel pegou o seu dinheiro no banco e, em uma das brigas, quase a agrediu.

Gente, eu não traí o Gabriel! O que acontece é que ele só sabia reclamar, não fazia nada, não me ajudava, só sabia gastar dinheiro que eu conquistei com meu trabalho e por mérito totalmente meu!!! Ele começou a me maltratar, xingar. E também quase me agrediu no quarto! Depois disso, tomei a decisão de terminar nosso relacionamento, e seguir sozinha daqui por diante. Estou feliz com minha decisão, e em paz Bia Miranda

"E o último ponto, ele roubou meu carro foi pro RJ [Rio de Janeiro] com ele, roubou todo meu dinheiro que estava no [banco], mas isso já estou resolvendo da minha maneira", acrescentou.

Gabriel Roza fez uma sequência de Stories no Instagram negando as acusações de Bia. "Não roubei carro de ninguém. Estou aqui no carro dela, vim pra São Paulo com o carro dela e vim só pra vê-la. Quem vai na cabeça dos outros é piolho e ela foi na cabeça dos outros. Ela terminou comigo, show, então vou fazer o seguinte: 'já que você está terminando, vou embora. Vou pegar o carro, vou embora, deixar o carro na sua casa, vou pegar minhas roupas e vou embora'

E outra, dinheiro muito menos eu roubei dela. Viemos com o dinheiro que estava no meu cartão [que era dela], mas eu não mexi no dinheiro dela. Ele [Douglas, o amigo] ou a minha conta e ela tirou o único dinheiro pra gente botar gasolina no carro. A gente fez um trato de R$ 1 mil pra ele vir, porque ele é habilitado e eu não sou. Aí ela ou minha conta, ia tirar todo o dinheiro e deixar a gente aqui sem nada. Sendo que eu tinha que pagar ele, que veio dirigindo Gabriel

Após o ocorrido, a assessoria de imprensa da neta de Gretchen emitiu uma nota confirmando o término e informando que Gabriel tentou forçar uma reconciliação.