;(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
Logo Pagbenk Seu dinheiro rende mais
Topo

Por falta de chuvas, conta de luz ficará mais cara em junho, anuncia Aneel

Com bandeira vermelha 2, conta de luz terá custo adicional de R$ 6,243 para cada 100 kWh consumidos - Nilton Rolin/Itaipu
Com bandeira vermelha 2, conta de luz terá custo adicional de R$ 6,243 para cada 100 kWh consumidos Imagem: Nilton Rolin/Itaipu

Do UOL, em São Paulo

28/05/2021 21h42Atualizada em 28/05/2021 22h08

Por falta de chuvas, as contas de luz ficarão mais caras em junho, com a adoção da bandeira tarifária vermelha de patamar 2, segundo anunciou hoje a Aneel (Agência Nacional de Energia Elétrica). A mudança representará um custo adicional de R$ 6,243 para cada 100 kWh consumidos.

Em nota, a agência explicou que maio foi o primeiro mês da estação seca nas principais bacias hidrográficas do SIN (Sistema Interligado Nacional). Por isso, junho deve começar com os principais reservatórios em níveis mais baixos do que o normal para esta época do ano, o que indica redução na geração de energia nas usinas hidrelétricas e aumento de produção nas termelétricas.

"Essa conjuntura pressiona os custos relacionados ao risco hidrológico (GSF) e o preço da energia no mercado de curto de prazo (PLD), levando à necessidade de acionamento do patamar 2 da bandeira vermelha. O GSF e o PLD são as duas variáveis que determinam a cor da bandeira a ser acionada", acrescentou a Aneel.

Mais cedo, o governo publicou um alerta de emergência hídrica para o período de junho a setembro em cinco estados brasileiros: Minas Gerais, Goiás, Mato Grosso do Sul, São Paulo e Paraná. É o primeiro alerta desta natureza em 111 anos de serviços meteorológicos no país.

Todas as unidades da federação atingidas estão na bacia do Rio Paraná, polo de produção agropecuária e de grandes hidrelétricas, como a Itaipu Binacional (foto acima). Na região, a situação é classificada como "severa" e a previsão é de pouco volume de chuvas para o período.

A medida corrobora as declarações do presidente Jair Bolsonaro (sem partido) e do ministro das Minas e Energia, Bento Albuquerque, de que o Brasil enfrenta a maior crise hídrica dos últimos tempos.

"Estamos vivendo aqui uma das maiores crises energéticas, crises hidrológicas, do país. Não chove, temos problema", disse o presidente hoje à tarde, em conversa com apoiadores transmitida pelo canal "Foco do Brasil", no YouTube.

Decreto contra apagões

Jair Bolsonaro - Mateus Bonomi/AGIF/Estadão Conteúdo - Mateus Bonomi/AGIF/Estadão Conteúdo
Imagem: Mateus Bonomi/AGIF/Estadão Conteúdo

Para tentar evitar novos apagões, Bolsonaro editou hoje um decreto que regulamenta a realização de leilões para compra de reserva de capacidade na forma de potência, que ficará disponível para contribuir com o atendimento da demanda por energia elétrica dos consumidores do SIN (Sistema Interligado Nacional).

Segundo o governo, a contratação dessa reserva de energia torna o sistema mais "seguro e estável". Isso porque permite suprir eventuais oscilações na demanda devido a um aumento no consumo ou mesmo à flutuação na oferta de energia elétrica, como aconteceu hoje, após uma falha na linha de transmissão desligar turbinas da usina de Belo Monte (PA) e afetar o fornecimento de energia em diversos estados.

A definição do montante de reserva a ser comprado será feita pelo Ministério de Minas e Energia. A contratação, por sua vez, acontecerá por meio de leilão promovido pela Aneel (Agência Nacional de Energia Elétrica).

Todos os custos serão divididos entre os usuários de energia elétrica do SIN, de forma proporcional ao consumo.

(Com Estadão Conteúdo)