@wondai/n8n-nodes-nucleo 0.6.1 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -38,6 +38,11 @@ incompleto, opção inventada, quantidade inválida, prazo impossível ou person
38
38
 
39
39
  Exemplo de item configurável:
40
40
 
41
+ Para pedidos de festa/orcamento, use `Modo Saida = Compacto Orcamento`, `Incluir Imagens = false`
42
+ e, quando existir, envie `Orcamento Contexto (JSON)` com estado pequeno do atendimento
43
+ (`pessoas`, `perfil`, `familias`, `preferencias`). O servidor monta `orcamento_sugerido` e omite
44
+ listas largas quando possivel; o node nao calcula preco nem escolhe produto.
45
+
41
46
  ```json
42
47
  {
43
48
  "produto_id": "uuid-do-produto",
@@ -435,6 +435,35 @@ class Nucleo {
435
435
  description: "Cursor opaco retornado por resultados[].continuacao.cursor. Use somente quando o cliente pedir a proxima pagina da mesma lista ('mostrar os outros', 'mais sabores'). Se informado, vence Consultas.",
436
436
  displayOptions: { show: { resource: ["catalogo"], operation: ["resolver"] } },
437
437
  },
438
+ {
439
+ displayName: "Modo Saida",
440
+ name: "modoSaidaCatalogo",
441
+ type: "options",
442
+ default: "normal",
443
+ options: [
444
+ { name: "Normal", value: "normal" },
445
+ { name: "Compacto Orcamento", value: "compacto_orcamento" },
446
+ ],
447
+ description: "Use Compacto Orcamento quando a consulta for de festa/kit/orcamento. O servidor prioriza orcamento_sugerido e reduz payload da tool.",
448
+ displayOptions: { show: { resource: ["catalogo"], operation: ["resolver"] } },
449
+ },
450
+ {
451
+ displayName: "Incluir Imagens",
452
+ name: "incluirImagensCatalogo",
453
+ type: "boolean",
454
+ default: true,
455
+ description: "Quando falso, o resolver omite image_url. Desligue em orcamentos; ligue apenas quando o cliente pedir foto/imagem.",
456
+ displayOptions: { show: { resource: ["catalogo"], operation: ["resolver"] } },
457
+ },
458
+ {
459
+ displayName: "Orcamento Contexto (JSON)",
460
+ name: "orcamentoContexto",
461
+ type: "json",
462
+ default: "",
463
+ required: false,
464
+ description: "Estado compacto opcional do orcamento em andamento: pessoas, perfil, familias e preferencias. Nao envie catalogo, preco nem produto_id aqui.",
465
+ displayOptions: { show: { resource: ["catalogo"], operation: ["resolver"] } },
466
+ },
438
467
  // ----------------------------------------------------------------- catalogo:disponibilidadeRede
439
468
  {
440
469
  displayName: "Produto (ID)",
@@ -1175,9 +1204,19 @@ class Nucleo {
1175
1204
  else if (resource === "catalogo" && operation === "resolver") {
1176
1205
  const consultas = parseConsultas(this.getNodeParameter("consultas", i));
1177
1206
  const continuacaoCursor = this.getNodeParameter("continuacaoCursor", i, "").trim();
1207
+ const modoSaida = this.getNodeParameter("modoSaidaCatalogo", i, "normal");
1208
+ const incluirImagens = this.getNodeParameter("incluirImagensCatalogo", i, true);
1209
+ const orcamentoContexto = asObject(this.getNodeParameter("orcamentoContexto", i, ""));
1178
1210
  method = "POST";
1179
1211
  path = "/api/v1/agent/catalogo/resolver";
1180
- bodyObj = continuacaoCursor ? { continuacao_cursor: continuacaoCursor } : { consultas };
1212
+ const b = continuacaoCursor ? { continuacao_cursor: continuacaoCursor } : { consultas };
1213
+ if (modoSaida === "compacto_orcamento")
1214
+ b.modo_saida = "compacto_orcamento";
1215
+ if (!incluirImagens)
1216
+ b.incluir_imagens = false;
1217
+ if (orcamentoContexto)
1218
+ b.orcamento_contexto = orcamentoContexto;
1219
+ bodyObj = b;
1181
1220
  }
1182
1221
  else if (resource === "catalogo" && operation === "disponibilidadeRede") {
1183
1222
  const produtoId = this.getNodeParameter("produtoIdRede", i, "").trim();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wondai/n8n-nodes-nucleo",
3
- "version": "0.6.1",
3
+ "version": "0.6.2",
4
4
  "description": "Node n8n para o Núcleo Wondai — atendimento de IA multi-vertical (gate liga/desliga, cliente/paciente, catálogo fuzzy, pedidos [padaria], procedimento/agenda/agendamento [odonto], contexto operacional, telemetria) com assinatura HMAC v1. Tenant e vertical vêm do token (a parede, ADR-013/038).",
5
5
  "keywords": [
6
6
  "n8n-community-node-package",