01/09/2019 Development / macetes

Essa semana eu precisei exportar uma planilha que eu tinha recebido em CVS pra JSON.

Primeiro eu abri ela no google Docs e fiz um MEGA script pra exportar pra JSON. Conclusão: Não exportou e vi que eu ia perder tempo!!!

Ai eu pesquisei um pouco mais e achei uma solução bem simples.

Mais basta vc exportar o documento, pegar algumas urls e pronto!

Esse artigo aqui o cara explica direitinho!

https://medium.com/@scottcents/how-to-convert-google-sheets-to-json-in-just-3-steps-228fe2c24e6

 

07/08/2019 Development / macetes

Esse aqui é o macete dos macetes!

Vira e mexe surge alguem pedindo pra eu fazer um projeto especifico pra sua empresa. Entao, pra que o sistema fique bonitinho, eu costumo usar o material design ou o bootstrap com as variacoes do SASS.

Mas o material design, ele ja adianta mto, porem, quando vc importa ou injeta o material, ele vem com a cor padrao.

É isso que eu vou explicar nesse post, como funciona o material design color!

Primeira coisa é a paleta de cores:

https://material.io/archive/guidelines/style/color.html#color-color-palette

É a partir daqui que as coisas sao criadas!

Tem varias paletas: red, gray, indigo, pink...etc

No angular tem 4 variacoes de estilos...que sao:

  • primary - indigo
  • accent - pink
  • warn - red
  • background - grey

Seria mais ou menos assim no bootstrap: success, info, warning, secondary, deu pra sacar? E ali ele usa: no primary (paleta indigo) no accent (palleta pink)...e asism por diante e se formos ver a cor que representa seria:

primary - (indigo) => 500 (#3F51B5)

accent (pink) => 500 (#E91E63)

warn (red) => 500 (#F44336)

background (gray) => (#9E9E9E)

Entao é isso, quando vc for usar e fiz por exemplo:

<md-button>Oi</md-button> (fundo transparente e cor preta) -> normal, mas se fizer

<md-button md-no-ink class="md-primary">Primary (md-noink)</md-button> (fundo transparent e cor do texto do botao #3F51B5)

se voce colocar a classe md-raised <md-button class="md-raised md-primary">Primary</md-button>  (fundo #3F51B5 e cor do texto do  botao #FFF)

É assim que funciona:

Mas se você quiser alterar esse padrao default, existe uma possibilidade, atraves desde codigo

  .config(function($mdThemingProvider) {

    $mdThemingProvider.theme('default')
      .primaryPalette('red', {
        'default': '400', // by default use shade 400 from the pink palette for primary intentions
        'hue-1': '100', // use shade 100 for the <code>md-hue-1</code> class
        'hue-2': '800', // use shade 600 for the <code>md-hue-2</code> class
        'hue-3': 'A100' // use shade A100 for the <code>md-hue-3</code> class
      })
      // If you specify less than all of the keys, it will inherit from the
      // default shades
      .accentPalette('deep-purple', {
        'default': '200' // use shade 200 for default, and keep all other shades the same
      }).dark();
  })

A propriedades sao: theme.primaryPalettetheme.accentPalettetheme.warnPalettetheme.backgroundPalette

Aqui eu digo que minha default vai usar a paleta primaria (red) e accent (dee-purple), podendo ainda customizar minha cor DEFAULT e as variacoes hue-*

As variacoes hue-1, hue-2, hue-3 usam as paletas (300 800 e A100) e serve pra primary e warn

A200, A100, A400 e A700 (warn)

Espero que sirva de estudo pra alguem!

20/02/2018 Development / macetes

Agora no bootstrap 4 existe uma série de classes utilitarias, aquelas classes que são uma mão na roda. Uma delas é pra margin e padding e funciona da seguinte maneira.

m = margin
p = padding

e as combinações são

m-0, m-1, m-2, m3, m-4, m-5, sendo que m-0, tira completamente a margin e as outras você vai adicionado 15% da aréa da margin.

E tem tambem a possibilidade de setar a posição da margin. Ex: mt-0 isso é o margin-top. Entao temos: mt, mb, ml, mr

E por fim se quisermos deixar centralizado a margin, usamos o mx-auto!

A mesma coisa serve para o padding ;-)

Espero que ajude!

14/11/2017 Development / macetes

Agora ficou facil a gente desenvolver uma aplicação offline, basta a gente gerar um app.cache, com os arquivos e incluir a tag do manifest no html. Basicamente é isso.

O lance é a configuracao que tem que ser feita.

O arquivo app.cache precisa responder como um outro content-type para o browser poder ler.

response.setHeader("Content-Type", "text/cache-manifest");

Como eu estava usando o node-static pra subir uma aplicacaozinha no heroku, eu estou postando o código que eu usei e funcionou. Espero que ajude.

 

var static = require('node-static');

var file = new static.Server('./docs', { gzip: true });

require('http').createServer(function(request, response) {

 

response.setHeader('Access-Control-Allow-Origin', '*');

response.setHeader('Access-Control-Request-Method', '*');

response.setHeader('Access-Control-Allow-Methods', 'OPTIONS, GET');

response.setHeader('Access-Control-Allow-Headers', '*');

//response.setHeader("Content-Type", "text/cache-manifest");

 

 

  request.addListener('end', function() {

    file.serve(request, response, function (e, res) {

    if(e && request.url == '/app.cache'){

    response.setHeader("Content-Type", "text/cache-manifest");

    }

    });

  }).resume();

}).listen(process.env.PORT || 3333);

12/11/2017 Development / macetes

Crie um procFile

#web: node index.js
web: node node_modules/gulp/bin/gulp
foreman start

e uma tarefa no seu gulpfile

gulp.task('serveprod', function() {
  connect.server({
    root: 'docs',
    port: process.env.PORT || 5000, // localhost:5000
    livereload: false
  });
});

e pronto :-)

Mas isso é meio feio né, que tal usarmos no package.json

  "scripts": {
    "test": "gulp test",
    "prestart": "gulp default", //aqui entra sua tarefa normal do gulp build - a minha caso eu chamei de default, poderia ser gulp build
    "start": "node index.js" // rodar o script do servidor
    },

Eu usei o prestart, porque o postinstall, por alguma motivo deu erro no gulp, e eu usei esta comando para desabilitar o cache do nome

heroku config:set NODE_MODULES_CACHE=false

 

06/10/2017 Development / macetes
C:\Users\Huggler-Vaio\AppData\Local\Android\sdk\platform-tools\adb logcat chromium:D SystemWebViewClient:D *:S
14/10/2016 Development / macetes

Esse comando é uma mão na roda, quando você precisa acessar coisas de outro dominio sem usar CORS.

chrome.exe --args --disable-web-security –-allow-file-access-from-files

26/03/2015 Development / macetes

Windows is BAD!!!! very BAD

I need removed files with extension very long and Windows not realized this task.

My will solution do share folder in my network and access this files at network.

Thats great!!! Not instalation softwares ;-)

25/10/2012 Development / macetes

            decimal d = 0;
            if (pTraders.Key != null)
            {
                var Traders = pTraders.Value.ToString().Split(';').Select(x => decimal.TryParse(x, out d) ? d : 0).ToArray();
                expr = expr.And(x => Traders.Contains(x.CodigoOperador.Value));        // Dos traders selecionados
            }

<img id='ajaxLoaderImg' src='@(Url.Content("~/content/themes/ims/ajax-loader-big.gif"))'

 

18/10/2012 Development / macetes

CTRL + ALT seleciona a bagaça toda na horizontal e vertical. To colocando aqui só pra não esquecer mesmo!