Um linhador de complexidade CSS, baseado no analisador CSS. Não deixe seu CSS crescer além dos limites que você fornece.
npm install constyble
# or
yarn add constyblePrecisamos de uma configuração com limites e CSs para compará -lo.
# Default usage (assuming a .constyblerc file in the current directory)
$ constyble style.css
# Read from StdIn (assuming a .constyblerc file in the current directory)
$ cat style.css | constyble
# Custom config
$ constyble style.css --config my-config.jsonO resultado parecerá algo assim:
TAP version 13
# Subtest: selectors.id.total
ok 1 - selectors.id.total should not be larger than 0 (actual: 0)
1..1
ok 1 - selectors.id.total # time=6.024ms
1..1
# time=15.076msObserve que este exemplo usa apenas 1 teste (seletores de identificação total).
A constyble tentará buscar um arquivo .constyblerc no seu diretório atual. Você também pode especificar um arquivo de configuração JSON diferente com a opção --config (consulte o uso). A configuração JSON deve parecer parecida com isso:
{
// Do not exceed 4095, otherwise IE9 will drop any subsequent rules
"selectors.total" : 4095 ,
"selectors.id.total" : 0 ,
"values.colors.totalUnique" : 2 ,
"values.colors.unique" : [ "#fff" , "#000" ]
}Todas as opções possíveis para o arquivo de configuração podem ser encontradas no @ProjectWallace/CSS-Analyzer. Os comentários do JSON são permitidos.
Por padrão, o Constyble reportará no formato da torneira, mas você pode colocar a saída em algo que você pode achar mais bonito, como Tap-Nyan, Tap-Dot ou qualquer outro repórter da torneira.
tap-nyan
$ constyble style.css | tap-nyan
1 -_,------,
0 -_ | / _ /
0 -^ | __( ^ .^)
- " " " "
Pass ! Se algum teste falhar, o constyble sairá com um código de saída diferente de zero. Quando você executa o constyble em suas compilações de IC, isso pode fazer com que a compilação falhe. É exatamente isso que a Constyble foi projetada para fazer.
Exemplo de uso com package.json:
{
"name" : " my-package " ,
"version" : " 0.1.0 " ,
"scripts" : {
"test" : " constyble compiled-styles.css "
},
"devDependencies" : {
"constyble" : " * "
}
}Constyble é uma mistura do estilo das palavras e do policial. Este pacote é como um policial (policial) para seus estilos. Anteriormente, esse pacote era chamado Gromit, mas isso foi descartado porque está muito intimamente relacionado ao principal projeto 'Wallace' do qual esse pacote faz parte.
MIT © Bart Veneman