@cargolift-cdi/types 0.1.90 → 0.1.92

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.
@@ -1,3 +1,4 @@
1
+ import { PayloadConditions } from "../interfaces/payload-condition.interface.js";
1
2
  /**
2
3
  * Eventos de integração (tms.driver) - Ocorre na integração de entrada (inbound) antes do roteamento.
3
4
  * Define expressões JSONata para transformar mensagens de eventos externos em formato JSON canônico interno.
@@ -9,20 +10,37 @@ export declare class IntegrationInbound {
9
10
  system: string;
10
11
  /** Evento (e.g., 'driver') */
11
12
  event: string;
12
- routingEvent: string;
13
13
  /** Ação (e.g., 'create', 'update', 'delete', etc */
14
14
  action: string;
15
+ /** Condições de roteamento de ações (action) baseadas no payload de canônico
16
+ * Direciona a integração para diferentes fluxos. Ex: 'driver' para 'people'
17
+ */
18
+ routingEvent?: [
19
+ {
20
+ event: string;
21
+ condition: PayloadConditions;
22
+ }
23
+ ];
24
+ /** Condições de definição para ações (action) baseadas no payload canônico
25
+ * Direciona a integração para diferentes fluxos. Ex: 'POST' para 'CREATE', 'PUT' para 'UPDATE'
26
+ */
27
+ routingAction?: [
28
+ {
29
+ action: string;
30
+ condition: PayloadConditions;
31
+ }
32
+ ];
15
33
  /** Versão da rota. Apenas a última versão pode estar ativa. Versões anteriores não podem sofrer modificações */
16
34
  version: number;
17
35
  /**Se a rota está ativa */
18
36
  active: boolean;
19
37
  /** Descrição opcional amigável ao usuário */
20
38
  description?: string | null;
21
- /** Pré-validação do payload de origem */
39
+ /** Pré-validação do payload de origem, antes da transformação para o formato canônico */
22
40
  validation?: Record<string, any> | null;
23
- /** Expressão JSONata */
41
+ /** Expressão JSONata para transformação do payload de entrada para o formato canônico */
24
42
  transformation?: string | null;
25
- /** Regra global (BRE RulesConfiguration) */
43
+ /** Regra global (BRE RulesConfiguration) aplicada após a transformação do payload canônico */
26
44
  rules?: Record<string, any> | null;
27
45
  refExtraction?: string | null;
28
46
  refType?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"integration-inbound.entity.d.ts","sourceRoot":"","sources":["../../src/entities/integration-inbound.entity.ts"],"names":[],"mappings":"AAcA;;;;GAIG;AACH,qBAMa,kBAAkB;IAE7B,EAAE,EAAG,MAAM,CAAC;IAEZ,sCAAsC;IAEtC,MAAM,EAAG,MAAM,CAAC;IAEhB,8BAA8B;IAE9B,KAAK,EAAG,MAAM,CAAC;IAGf,YAAY,EAAG,MAAM,CAAC;IAEtB,oDAAoD;IAEpD,MAAM,EAAG,MAAM,CAAC;IAEhB,gHAAgH;IAEhH,OAAO,EAAG,MAAM,CAAC;IAEjB,0BAA0B;IAE1B,MAAM,EAAG,OAAO,CAAC;IAEjB,6CAA6C;IAE7C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,0CAA0C;IAE1C,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAExC,yBAAyB;IAEzB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,4CAA4C;IAE5C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAInC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI9B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIxB,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzC,oDAAoD;IAKpD,SAAS,EAAG,IAAI,CAAC;IAGjB,SAAS,EAAG,IAAI,CAAC;CAClB"}
1
+ {"version":3,"file":"integration-inbound.entity.d.ts","sourceRoot":"","sources":["../../src/entities/integration-inbound.entity.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AAEjF;;;;GAIG;AACH,qBAMa,kBAAkB;IAE7B,EAAE,EAAG,MAAM,CAAC;IAEZ,sCAAsC;IAEtC,MAAM,EAAG,MAAM,CAAC;IAEhB,8BAA8B;IAE9B,KAAK,EAAG,MAAM,CAAC;IAEf,oDAAoD;IAEpD,MAAM,EAAG,MAAM,CAAC;IAEhB;;MAEE;IAEF,YAAY,CAAC,EAAE;QACb;YACE,KAAK,EAAE,MAAM,CAAC;YACd,SAAS,EAAE,iBAAiB,CAAA;SAC7B;KACF,CAAC;IAEH;;OAEG;IAEF,aAAa,CAAC,EAAE;QACd;YACE,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,iBAAiB,CAAA;SAC7B;KACF,CAAC;IAEF,gHAAgH;IAEhH,OAAO,EAAG,MAAM,CAAC;IAEjB,0BAA0B;IAE1B,MAAM,EAAG,OAAO,CAAC;IAEjB,6CAA6C;IAE7C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,yFAAyF;IAEzF,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAExC,yFAAyF;IAEzF,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,8FAA8F;IAE9F,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAInC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI9B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIxB,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzC,oDAAoD;IAKpD,SAAS,EAAG,IAAI,CAAC;IAGjB,SAAS,EAAG,IAAI,CAAC;CAClB"}
@@ -28,20 +28,27 @@ let IntegrationInbound = class IntegrationInbound {
28
28
  system;
29
29
  /** Evento (e.g., 'driver') */
30
30
  event;
31
- routingEvent;
32
31
  /** Ação (e.g., 'create', 'update', 'delete', etc */
33
32
  action;
33
+ /** Condições de roteamento de ações (action) baseadas no payload de canônico
34
+ * Direciona a integração para diferentes fluxos. Ex: 'driver' para 'people'
35
+ */
36
+ routingEvent;
37
+ /** Condições de definição para ações (action) baseadas no payload canônico
38
+ * Direciona a integração para diferentes fluxos. Ex: 'POST' para 'CREATE', 'PUT' para 'UPDATE'
39
+ */
40
+ routingAction;
34
41
  /** Versão da rota. Apenas a última versão pode estar ativa. Versões anteriores não podem sofrer modificações */
35
42
  version;
36
43
  /**Se a rota está ativa */
37
44
  active;
38
45
  /** Descrição opcional amigável ao usuário */
39
46
  description;
40
- /** Pré-validação do payload de origem */
47
+ /** Pré-validação do payload de origem, antes da transformação para o formato canônico */
41
48
  validation;
42
- /** Expressão JSONata */
49
+ /** Expressão JSONata para transformação do payload de entrada para o formato canônico */
43
50
  transformation;
44
- /** Regra global (BRE RulesConfiguration) */
51
+ /** Regra global (BRE RulesConfiguration) aplicada após a transformação do payload canônico */
45
52
  rules;
46
53
  // Expressão JSONNata para extração da referência externa (código do cadastro, número do documento, etc) a partir do payload canônico (transformado)
47
54
  refExtraction;
@@ -64,12 +71,15 @@ __decorate([
64
71
  __decorate([
65
72
  Column({ type: "varchar", length: 80 })
66
73
  ], IntegrationInbound.prototype, "event", void 0);
67
- __decorate([
68
- Column({ type: "jsonb", length: 80 })
69
- ], IntegrationInbound.prototype, "routingEvent", void 0);
70
74
  __decorate([
71
75
  Column({ type: "varchar", length: 40 })
72
76
  ], IntegrationInbound.prototype, "action", void 0);
77
+ __decorate([
78
+ Column({ type: "jsonb", nullable: true })
79
+ ], IntegrationInbound.prototype, "routingEvent", void 0);
80
+ __decorate([
81
+ Column({ type: "jsonb", nullable: true })
82
+ ], IntegrationInbound.prototype, "routingAction", void 0);
73
83
  __decorate([
74
84
  Column({ type: "int", default: 1 })
75
85
  ], IntegrationInbound.prototype, "version", void 0);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cargolift-cdi/types",
3
- "version": "0.1.90",
3
+ "version": "0.1.92",
4
4
  "description": "TypeScript types e interfaces comuns para projetos Cargolift CDI",
5
5
  "keywords": [
6
6
  "typescript",