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

Maisa Silva comenta processo de transição capilar: 'Estou me redescobrindo'

Maisa comenta sobre transição capilar em vídeo - Reprodução/YouTube
Maisa comenta sobre transição capilar em vídeo Imagem: Reprodução/YouTube

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

25/06/2020 12h03

A atriz Maisa Silva decidiu compartilhar na noite de ontem um pouco sobre o seu processo de transição capilar. Em vídeo publicado em seu canal do YouTube, a jovem respondeu a perguntas de fãs e fez reflexões a respeito deste seu novo momento.

"Estou aqui para falar da minha transição capilar. Por que estou dando ênfase em 'minha'? Porque a minha transição capilar é um processo meu, não é para ditar regra para ninguém e nem exemplo a ser seguido. É um processo pessoal, um momento muito íntimo que resolvi compartilhar com vocês."

"Mexe muito com a minha autoestima. Por isso, vou tomar o máximo de cuidado, escolher as palavras certas para falar para vocês. Cabelo mexe com a nossa autoestima, e transição capilar é um processo de escolha e aceitação", explicou.

A apresentadora afirmou que, apesar de já ter tomado a decisão de retornar o cabelo ao natural, os seus fios ainda estão ando pelo processo. "Ainda está liso, cacheado, com várias texturas. Por isso vim com ele natural, para vocês verem como ele está. Está difícil de ele ficar definido."

Maisa ainda contou que, por trabalhar na televisão, o seu cabelo acaba por ser modificado muitas vezes e, por isso, sua transição capilar é mais demorada. Entretanto, durante o período de isolamento social, a atriz decidiu mantê-lo natural e recebeu muitos elogios por isso.

"Fiquei muito feliz com o . Recebi muitas mensagens lindas de meninas que falaram que iam começar a fazer a transição capilar por minha causa", contou.

Respondendo às perguntas de fãs, Maisa revelou que o processo tem sido revelador. "Me ajudou a pegar menos pesado comigo mesma, ter uma relação de aceitação muito melhor e perceber que cada enroladinha que o meu cabelo dá me deixa mais feliz e contente."

"Uma coisa que antes eu abominava, hoje é motivo de sorriso, e que muda o meu dia. Uma percepção de muito mais carinho", completou.

Apesar de nunca ter sofrido bullying por conta do cabelo, Maisa comentou que não aceitava ele. "Quando a gente a pela puberdade o cabelo muda muito", afirmou. O processo, por sua vez, tem sido benéfico para esta relação.

"Estou redescobrindo o meu cabelo. Uma coisa que sempre esteve comigo, que já teve formatos, comprimentos, cores diferentes, mas mal me lembro como era natural. Sete anos alisando o cabelo é muito tempo."

Questionada sobre o que motivou a decisão, Maisa foi categórica: "Não lembrava mais como era meu cabelo, estava cansada de fazer progressiva e me senti inspirada por outras meninas."

Parte do vídeo foi compartilhada em suas redes sociais, recebendo diversos elogios.

"Linda! Inteligente e coração de ouro. Sigo aqui na minha transição capilar inspirada por você", escreveu a atriz Luciele di Camargo. "Que vídeo lindo, necessário", comentou a humorista Dani Calabresa. "Linda", acrescentou Ary Fontoura.