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

Marido de Carol Dantas parabeniza Neymar com "textão" no Instagram; leia

Carol Dantas com o filho, Davi Lucca, e o marido, Vinicius Martinez, que defendeu Neymar - Reprodução/Instagram
Carol Dantas com o filho, Davi Lucca, e o marido, Vinicius Martinez, que defendeu Neymar Imagem: Reprodução/Instagram

Do UOL, em São Paulo

05/02/2020 13h58

Vincius Martinez, marido de Carol Dantas, resolveu homenagear o aniversário de Neymar, ex da modelo e pai de Davi Lucca.

No Instagram, Martinez publicou um longo texto que aborda a relação que tem com o jogador, que completou 28 anos hoje. Ele ainda encheu de elogios o craque do PSG.

"Neymar, ao invés de falar para você, quero falar de você. Da minha forma. Como nunca fiz. Sob a minha perspectiva. Única. Afinal, ninguém nunca estará no meu papel em relação à você, nem no seu em relação a mim. Dito isto, e com toda licença que nossa relação permite?", iniciou.

Após a introdução do texto, Martinez cita os "dois lados" da vida de Neymar e diz considerar o atacante como dono de "um coração que explode de amor".

"Vejo um menino querendo ser feliz. Querendo sorrir. Querendo multiplicar o seu sorriso pra que a alegria prolifere por todos os seus. Vejo um homem que usa esse mesmo menino acima como combustível para vestir uma armadura de responsabilidades que poucos tem, e que papai do céu colocou em ti sabendo do que estava fazendo. Elas não são fáceis. Nunca serão, e não sou eu que vou dizer o contrário. Não sei qual dos dois eu prefiro. Na verdade, eles jogam juntos. Pra juntar tudo, vamos falar do ser humano que vejo. Que vivo. Que quando posso, cuido, e que sem dúvidas, tenho muito amor. Muita gente já até imagina alguns porquês disso. Muita gente está errada. Te explico. Eu posso ver o Neymar como um ser humano normal. Longe de ser perfeito. Ninguém é. Ele erra. Ele acerta. Como eu, e você. Eu posso ver um coração, que por mais que tímido em alguns momentos diante dos desafios da vida que só ele tem, explode de amor, de carinho, de compaixão".

"Eu posso ver um pai, jovem, mais jovem que eu quando pai, sendo referência para um filho independente de qualquer coisa. Um filho que inclusive não cansa de me ensinar todos os dias a te irar mais. Do jeitinho dele no papel de filho. De amigo. Eu posso ver esse mesmo pai, com esse mesmo espírito de referência para muitos outros filhos. Inclusive, o meu", continuou.

Martinez ainda citou a importância de Neymar para Valentin, seu filho com Carol que nasceu no ano ado.

"Quando ele soube que o Valentin viria ao mundo, abraçou 100% me dando forças, e me direcionando para um caminho até então incerto, mas que nas suas palavras, seria o meu melhor caminho do mundo. Você acertou. Não só no caminho que me guiou, mas também o gol que fez pra ele no seu primeiro dia de vida. Eu posso ver o cara que acreditou em mim, na minha esposa, mãe do seu filho e uma de suas melhores amigas, fazendo com que aos meus 24/25 anos, eu tivesse que me tornar maduro, pronto, e vestisse a capa de um super herói de uma família a qual seu filho faz parte. Eu posso ver harmonia".

Neymar, ao invés de falar para você, quero falar de você. Da minha forma. Como nunca fiz. Sob a minha perspectiva. Única. Afinal, ninguém nunca estará no meu papel em relação à você, nem no seu em relação a mim. Dito isto, e com toda licença que nossa relação permite? Vejo um menino querendo ser feliz. Querendo sorrir. Querendo multiplicar o seu sorriso pra que a alegria prolifere por todos os seus. Vejo um homem que usa esse mesmo menino acima como combustível para vestir uma armadura de responsabilidades que poucos tem, e que papai do céu colocou em ti sabendo do que estava fazendo. Elas não são fáceis. Nunca serão, e não sou eu que vou dizer o contrário. Não sei qual dos dois eu prefiro. Na verdade, eles jogam juntos. Pra juntar tudo, vamos falar do ser humano que vejo. Que vivo. Que quando posso, cuido, e que sem dúvidas, tenho muito amor. Muita gente já até imagina alguns porquês disso. Muita gente está errada. Te explico. Eu posso ver o Neymar como um ser humano normal. Longe de ser perfeito. Ninguém é. Ele erra. Ele acerta. Como eu, e você. Eu posso ver um coração, que por mais que tímido em alguns momentos diante dos desafios da vida que só ele tem, explode de amor, de carinho, de compaixão. Eu posso ver um pai, jovem, mais jovem que eu quando pai, sendo referência para um filho independente de qualquer coisa. Um filho que inclusive não cansa de me ensinar todos os dias a te irar mais. Do jeitinho dele no papel de filho. De amigo. Eu posso ver esse mesmo pai, com esse mesmo espirito de referência para muitos outros filhos. Inclusive, o meu. Quando ele soube que o Valentin viria ao mundo, abraçou 100% me dando forças, e me direcionando para um caminho até então incerto, mas que nas suas palavras, seria o meu melhor caminho do mundo. Você acertou. Não só no caminho que me guiou, mas também o gol que fez pra ele no seu primeiro dia de vida. Eu posso ver o cara que acreditou em mim, na minha esposa, mãe do seu filho e uma de suas melhores amigas, fazendo com que aos meus 24/25 anos, eu tivesse que me tornar maduro, pronto, e vestisse a capa de um super herói de uma família a qual seu filho faz parte. Eu posso ver harmonia. (CONTINUAÇÃO NO COMENTÁRIO)

Uma publicação compartilhada por Vinicius Martinez (@martinezvini) em