sped-gen-cli
Version:
CLI para o SPED-Gen
75 lines (58 loc) • 1.9 kB
Markdown
# SPED-Gen CLI
[](https://www.npmjs.com/package/sped-gen-cli)
> Command line interface para o [SPED-Gen](https://github.com/elvisgs/sped-gen)
## Instalação
```shell
$ npm install -g sped-gen-cli
```
## Uso
```shell
$ sped-gen <options>
```
### Opções
```
-f, --config-file Arquivo de configuração. Deve ser um modulo que
exporta as opções para o SPED-Gen [string] [obrigatório]
-l, --layout-sped Layout SPED cujos metadados serão usados
[string] [opções: "fiscal", "contrib"] [padrão: "fiscal"]
-o, --output-dir Diretório onde os arquivos gerados serão gravados.
Pode ser um template [string]
-a, --aditional-fields Campos adicionais (chave=valor) [array]
-h, --help Exibe ajuda
-v, --version Exibe a versão
```
### Exemplo
```shell
$ sped-gen -f my-config.js -l fiscal -a foo=bar baz=qux -o "./out/bloco{{bloco}}"
```
## Arquivo de configuração
Abaixo está um exemplo de arquivo de configuração que informa ao SPED-Gen para gerar múltiplos arquivos de acordo com o template `my-template.hbs` nos diretórios `./out/contrib/blocoXXXX` com os nomes `RegistroXXXX.txt`.
*my-config.js:*
```javascript
'use strict';
const fs = require('fs');
module.exports = {
layoutSped: 'contrib',
singleFile: false,
template: fs.readFileSync('./my-template.hbs').toString(),
fileName: options => {
const layout = options.layoutSped;
return `./out/${layout}/bloco{{bloco}}/Registro{{id}}.txt`
},
filter: registro => {
// ...
return true;
},
handler: registro => {
// ...
},
mapper: registro => {
// ...
return registro;
},
aditionalFields: {
myKey: "value"
// ...
}
};
```