Builder JSON
O que é o Builder JSON?
O Builder JSON é uma estrutura gerada a partir da interface Builder, cujo principal objetivo é listar todos os componentes criados, suas respectivas conexões, e os valores atribuídos a cada um.
Essa estrutura organiza os dados de uma forma específica dentro de um arquivo JSON, detalhando cada componente e sua função no fluxo. Abaixo, explicamos essa organização de forma clara.
Estrutura do Builder JSON
Na estrutura do JSON, o campo principal é o elements, que contém todos os componentes e conexões do fluxo. Cada item dentro de elements representa um componente ou uma conexão. Abaixo está um exemplo da organização visual:

Exemplo de um Componente: Menu
A seguir, vemos um exemplo de como o componente "Menu" é representado no JSON:

Explicação dos Campos
Abaixo está uma explicação detalhada sobre cada campo do JSON mostrado nas imagens:
// Dados do fluxo em formato JSON enviados para o back-end;
"json_view": {
// Lista de todos os componentes e conexões dentro do fluxo;
"elements": [
{
// Tipo do componente em formato string;
"type": "Menu",
// Posição do componente (coordenadas X e Y) dentro do fluxo;
"position": {
"x": 0,
"y": 0
},
// Dados de cada componente ou conexão, incluindo informações específicas;
"data": {
// Descrição identificando o componente;
"description": "Menu",
// Descrição personalizada inserida pelo usuário;
"description_component": "Menu",
// Propriedades e valores atribuídos ao componente, como "Nome", "Pergunta", "Botões", "Texto", etc;
"parameters": {
// Identidade (nome) do componente;
"ident": "Menu"
},
// Indica se há uma saída padrão do componente;
"has_default_output": true,
// Identificação única do componente no back-end;
"id": "Menu",
// Rótulo (texto exibido no front-end) do componente;
"label": "Menu",
// Tipo do componente (string);
"type": "Menu",
// Lista de saídas do componente (padrões e criadas pelo usuário);
"default_outputs": [
"Menu"
],
// Lista das saídas com informações detalhadas sobre cada uma;
"completeOutputs": {
// Nome da saída principal do componente;
"main_output": "Menu",
// Detalhes sobre as saídas do componente;
"default_sub_outputs": {
"0": "Saída 1", // Índice da saída;
"1": "Saída 2" // Nome da saída;
}
}
}
}
]
}