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

Stalkeadas

Um olhar diferente sobre o que bomba nas redes sociais


Stalkeadas

Vídeo viraliza após Correios confundir brinquedo de pet com vibrador; veja

Mariana Gonzalez

De Universa, em São Paulo

26/06/2022 11h10

Uma representante comercial de São Paulo viralizou nessa semana ao contar, em um vídeo no TikTok, que funcionários de uma agência dos Correios confundiram com um vibrador uma encomenda sua, que pulava dentro da caxa —a peça era, na verdade, um brinquedo para seu cachorro, Simba.

"Quando eu cheguei lá, a caixa estava assim", conta, no vídeo, mostrando a caixa ainda fechada, pulando sozinha. "Eu, com vergonha, porque eles estavam pensando que era alguma coisa de sex shop, arreganhei o saco na hora para mostrar."

A Universa, Adriana Sirotenco, de 45 anos, contou que gravou o vídeo assim que entrou no carro, ao sair da agência dos Correios, para mandar em um grupo de amigas no WhatsApp. Mas a filha de uma delas sugeriu que ela editasse e publicasse no TikTok.

"Eu ri na hora, da situação, mas nem vi tanta graça assim no vídeo. Deixei ela editar, publicar. Quando ou o tempo, vi lá: '10K'. Eu nem sabia o que era isso. Quando perguntei, elas me explicaram que eu estava com 10 mil visualizações."

Hoje, o vídeo acumula mais de 4 milhões de views só no TikTok —mas também circula no Twitter e no Instagram. "Não acredito que o povo gostou tanto disso", comenta Adriana.

Confusão nos Correios

O brinquedo de Simba —uma pelúcia azul que vibra— foi comprado na Shopee. Quando a encomenda chegou a São Paulo, os Correios fizeram algumas tentativas de entrega na casa de Adriana, mas ela não estava, então recebeu uma ligação informando que teria que buscar na agência para que a peça não fosse devolvida ao remetente.

"A funcionária disse que, quando eu fosse à agência buscar a caixa, não precisava pegar fila, poderia procurá-la direto. Achei estranho, mas beleza." No local, depois de se identificar, ela foi orientada a seguir até o último guichê, o mais distante de onde as outras pessoas aguardavam atendimento, e percebeu que todos os funcionários olhavam para ela.

"Quando a atendente chegou com a encomenda, a caixa não parava de pular no balcão. E o outro funcionário atrás dela com um olhar meio sem vergonha, querendo rir. Na hora, comecei a rasgar a embalagem para tentar desligar —e também para eles verem que não era um sex toy."

Ao abrir a caixa, Adriana percebeu que o brinquedo veio sem o lacre de segurança. "Provavelmente veio da China para o Brasil pulando o caminho inteiro", brinca.

Depois que o primeiro vídeo viralizou, ela publicou um novo vídeo mostrando a reação de Simba ao receber o brinquedo; Assista:

Stalkeadas