;(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();
})();
Mari Fernandez, viral no TikTok, quer mais espaço para mulheres no piseiro
A cantora Mari Fernandez
Divulgação
De Splash, em São Paulo
26/06/2021 04h00
O forró e o piseiro invadiram os quatro cantos do Brasil.
Nomes como Barões da Pisadinha ("Tá Rocheda"), Zé Vaqueiro ("Volta Comigo BB"), Xand Avião ("Não Pode se Apaixonar") e DJ Ivis ("Esquema Preferido") são nomes constantes no topo das paradas de sucesso.
Notou que nenhum dos nomes destacados é uma mulher?
Continua depois da publicidade
Mas elas estão aí, sim! E uma das artistas que está a frente desse processo é Mari Fernandez, 20, cantora cearense que tenta arrastar outras colegas para o topo.
Com "Não, Não Vou", Mari dominou tudo quanto é viral da internet. Seja nas redes sociais, com os challenges (as famosas dancinhas) sendo replicado por milhares de pessoas no TikTok, ou nas plataformas de streaming, liderando o Top Viral Global do Spotify.
O refrão é bem chiclete:
Continua depois da publicidade
a lá em casa // Tira a minha roupa // Fala que me ama // Quebrou a cara // Vem quebrar a minha cama
Trecho de 'Não, Não Vou', de Mari Fernandez
A cantora conversou com Splash sobre seu sucesso que viralizou no Brasil. Ela diz que foi uma surpresa ver sua música virar dancinha —e agradece a repercussão.
Foi tudo muito rápido e fico muito feliz com essa repercussão, com as dancinhas, com tudo. Mari Fernandez
Os números realmente impressionam: são cerca de 10 milhões de visualizações somando Spotify e YouTube, além de 1,2 milhões de vídeos no TikTok tocando a música da cantora.
A cantora diz que o TikTok é uma rede social que vem impulsionando muitos artistas, o que é uma tremenda verdade. "Tipo Gin", do MC Kevin o Chris, e "Bipolar", dos MCs Don Juan, Davi e Pedrinho, que estão entre as mais ouvidas do país, são sucessos também na plataforma de danças.
Porém, ela reforça que o TikTok deve ser consequência, não alvo.
Acho que é preciso fazer música para o público gostar, a dancinha no TikTok é algo que vai acontecer naturalmente. É uma rede social que entrega muito bem, mas acho que o foco não deve ser esse.
Mari aprendeu a tocar violão ainda criança e nunca mais largou a paixão pela música. Já aos 15 anos, começou a compor suas primeiras canções e viu que tinha jeito, sendo elogiada por amigos e familiares.
Foi graças a suas composições que ela ganhou destaque no forró. Inspirada em outras artistas que começaram sua carreira na composição, ela já produziu trabalhos para artistas como Tarcísio do Acordeon. Mari acredita que novas mulheres podem dominar a cena.
Acho que existe o espaço para mulheres, mas quero que a partir de mim venham outras. Falam que eu sou a primeira [de sucesso no piseiro], mas não quero ser a única de destaque. Nunca pensei 'ah, porque sou mulher vai ser difícil', acho que não funciona assim.
Continua depois da publicidade
Piseiro Sofrência
O nome do seu álbum de trabalho não poderia ter nome mais certeiro e fiel à obra. "Piseiro Sofrência" é carregado de dor de amor.
Pode até surpreender, mas Mari disse que boa parte das histórias cantadas no trabalho são pessoais, que ela ou durante sua vida e viraram música. Claro que com uma pitada de dramatização para deixar tudo mais legal.
A gente a por muita coisa nessa vida, né? (risos) Óbvio que tem algumas coisas que a gente acrescenta ali, aqui, tem outras histórias também, mas é muita história minha mesmo. Mari Fernandez
ID: {{comments.info.id}}
URL: {{comments.info.url}}
Ocorreu um erro ao carregar os comentários.
Por favor, tente novamente mais tarde.
{{comments.total}} Comentário
{{comments.total}} Comentários
Seja o primeiro a comentar
Essa discussão está encerrada
Não é possivel enviar novos comentários.
Essa área é exclusiva para você, , ler e comentar.
Só s do UOL podem comentar
Ainda não é ? Assine já.
Se você já é do UOL, faça seu .
O autor da mensagem, e não o UOL, é o responsável pelo comentário. Reserve um tempo para ler as Regras de Uso para comentários.