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

Governo define que não haverá concurso público em 2020

Luma Poletti

Colaboração para o UOL, em Brasília

15/04/2019 17h10

O secretário-adjunto de Fazenda, Esteves Colnago, afirmou hoje que não há previsão de concurso público no projeto de Lei de Diretrizes Orçamentárias (LDO) de 2020.

"A premissa neste momento é a não realização de concurso público", disse durante a apresentação do texto, que segue para análise do Congresso Nacional.

A restrição para a realização de concursos já vinha sendo sinalizada pelo governo. Na semana ada, o ministro Paulo Guedes afirmou que o governo estava cortando concursos e reduzindo drasticamente o número de funcionários. "Acabou o empreguismo, não tem mais isso", disse.

Só militares têm reajuste previsto

No projeto de LDO para 2020 também não estão previstos reajustes para os servidores públicos.

A única exceção são os militares, que poderão receber aumentos previstos na reforma da Previdência das Forças Armadas, enviada pelo governo.

"A LDO diz que pode ser feita reestruturação para militares. Como não diz que pode outras coisas, não podem ser feitos [reajustes] para os demais servidores", disse o secretário de Orçamento Federal, George Soares.

De acordo com o Ministério da Economia, em 2019 serão gastos R$ 326,2 bilhões com pagamento de pessoal, o equivalente a 4,46% do PIB. Em 2020 este valor deverá chegar a R$ 338,1 bilhões, ou 4,29% do PIB.

Congresso pode mudar projeto

O projeto de Lei de Diretrizes Orçamentárias apresenta metas e previsões de receitas e despesas para o ano seguinte. É elaborada anualmente pelo Executivo Federal e deve ser encaminhada ao Congresso até 15 de abril. No legislativo, o texto será analisado pela Comissão Mista de Orçamento, onde receberá um parecer e emendas de parlamentares.

Na sequência, deputados e senadores precisam votar o projeto até 17 de julho, ou o Congresso não poderá entrar em recesso. A etapa final é a sanção presidencial.

Sem Previdência e com alta da dívida pública, Guedes deixaria governo

UOL Notícias