render-templates

Nesta seção, você encontra a referência de um hook declarativo do tipo render-templates.

Um Hook Declarativo do tipo render-templates pode ser usado para executar a geração condicional de arquivos. Ao usar um Hook Declarativo desse tipo, associado a uma condição, é possível controlar se algum arquivo será ou não gerado de acordo com uma condição. Confira um exemplo de utilização:

hooks:  
  - type: render-templates
    trigger: after-render
    path: templates-java
    condition:
      variable: language
      operator: "=="
      value: java
  - type: render-templates
    trigger: after-render
    path: templates-kotlin
    condition:
      variable: language
      operator: "=="
      value: kotlin

No caso acima, quando o input language for preenchido com o valor java, ele gera os arquivos que estão na pasta templates-java. Se o input é preenchido com o valor kotlin, ele gera os arquivos que estão na pasta templates-kotlin.

Ações Disponíveis

trigger:

Campo para definir gatilhos que informam o momento em que a geração de arquivos deve ocorrer.

before-input:
Executa o hook antes de receber os parâmetros de entrada da pessoa usuária.

trigger: before-input

before-render:
Executa o hook antes do Template gerar ou atualizar arquivos no projeto.

trigger: before-render

after-render:
Executa o hook após o Template gerar ou atualizar arquivos no projeto.

trigger: after-render

condition:

Campo que determinam uma condição para executar o Hook Declarativo.

**variable**:
Variável utilizada na condição. A variável é definida pelos inputs** e computed-inputs** de um Template ou Plugin. Leia mais na seção inputs em arquivos yaml.

operator:
Operador condicional utilizado na operação entre variable e value. Os operadores são:

OperadorDescrição
"=="Valida se os valores são iguais.
"!="Valida se os valores são diferentes.
">"Valida se a variável é maior ao valor.
"<"Valida se a variável é menor ao valor.
">="Valida se a variável é maior ou igual ao valor.
"<="Valida se a variável é menor ou igual ao valor.
containsAnyValida se a variável do tipo lista contém qualquer um dos valores contidos em value.
containsAllValida se a variável do tipo lista contém todos os valores valores contidos em value.
containsOnlyValida se a variável do tipo lista contém todos os valores valores contidos em value e não contém outros elementos.

value:
Valor de referência para o operador checar a condicional.

Leia também