@fiado/type-kit 3.158.0 → 3.160.0

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,5 +1,6 @@
1
1
  import { OperationSchedule } from '../../address/dtos/OperationSchedule';
2
2
  import { OfficeStatusEnum } from '../enums/OfficeStatusEnum';
3
+ import { OfficeTypeEnum } from '../enums/OfficeTypeEnum';
3
4
  /**
4
5
  * Alta de oficina desde backoffice. El backoffice envía lat/lng directo (Opción A);
5
6
  * el lambda calcula el h3Cell. NO se geocodifica.
@@ -12,4 +13,6 @@ export declare class CreateOfficeRequest {
12
13
  phone?: string;
13
14
  schedule?: OperationSchedule[];
14
15
  status?: OfficeStatusEnum;
16
+ /** Tipo de registro. Si no se envía, el lambda aplica el default OfficeFiado. */
17
+ type?: OfficeTypeEnum;
15
18
  }
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.CreateOfficeRequest = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
14
  const OfficeStatusEnum_1 = require("../enums/OfficeStatusEnum");
15
+ const OfficeTypeEnum_1 = require("../enums/OfficeTypeEnum");
15
16
  /**
16
17
  * Alta de oficina desde backoffice. El backoffice envía lat/lng directo (Opción A);
17
18
  * el lambda calcula el h3Cell. NO se geocodifica.
@@ -56,3 +57,8 @@ __decorate([
56
57
  (0, class_validator_1.IsEnum)(OfficeStatusEnum_1.OfficeStatusEnum),
57
58
  __metadata("design:type", String)
58
59
  ], CreateOfficeRequest.prototype, "status", void 0);
60
+ __decorate([
61
+ (0, class_validator_1.IsOptional)(),
62
+ (0, class_validator_1.IsEnum)(OfficeTypeEnum_1.OfficeTypeEnum),
63
+ __metadata("design:type", String)
64
+ ], CreateOfficeRequest.prototype, "type", void 0);
@@ -1,5 +1,6 @@
1
1
  import { OperationSchedule } from '../../address/dtos/OperationSchedule';
2
2
  import { OfficeStatusEnum } from '../enums/OfficeStatusEnum';
3
+ import { OfficeTypeEnum } from '../enums/OfficeTypeEnum';
3
4
  /**
4
5
  * Oficina de Fiado, gestionada por el backoffice (fuente de verdad, no HERE).
5
6
  * Response DTO — sin decoradores.
@@ -13,4 +14,6 @@ export declare class OfficeDto {
13
14
  phone?: string;
14
15
  schedule?: OperationSchedule[];
15
16
  status: OfficeStatusEnum;
17
+ /** Tipo de registro (OfficeFiado | StoreFiado). Legacy sin campo = OfficeFiado. */
18
+ type: OfficeTypeEnum;
16
19
  }
@@ -1,5 +1,6 @@
1
1
  import { OperationSchedule } from '../../address/dtos/OperationSchedule';
2
2
  import { OfficeStatusEnum } from '../enums/OfficeStatusEnum';
3
+ import { OfficeTypeEnum } from '../enums/OfficeTypeEnum';
3
4
  /**
4
5
  * Edición de oficina desde backoffice. Todos los campos opcionales.
5
6
  * Si cambian lat/lng, el lambda recalcula el h3Cell.
@@ -12,4 +13,6 @@ export declare class UpdateOfficeRequest {
12
13
  phone?: string;
13
14
  schedule?: OperationSchedule[];
14
15
  status?: OfficeStatusEnum;
16
+ /** Permite reclasificar un registro entre OfficeFiado y StoreFiado. */
17
+ type?: OfficeTypeEnum;
15
18
  }
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.UpdateOfficeRequest = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
14
  const OfficeStatusEnum_1 = require("../enums/OfficeStatusEnum");
15
+ const OfficeTypeEnum_1 = require("../enums/OfficeTypeEnum");
15
16
  /**
16
17
  * Edición de oficina desde backoffice. Todos los campos opcionales.
17
18
  * Si cambian lat/lng, el lambda recalcula el h3Cell.
@@ -58,3 +59,8 @@ __decorate([
58
59
  (0, class_validator_1.IsEnum)(OfficeStatusEnum_1.OfficeStatusEnum),
59
60
  __metadata("design:type", String)
60
61
  ], UpdateOfficeRequest.prototype, "status", void 0);
62
+ __decorate([
63
+ (0, class_validator_1.IsOptional)(),
64
+ (0, class_validator_1.IsEnum)(OfficeTypeEnum_1.OfficeTypeEnum),
65
+ __metadata("design:type", String)
66
+ ], UpdateOfficeRequest.prototype, "type", void 0);
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Discrimina los registros de la tabla de oficinas de Fiado:
3
+ * - `OfficeFiado`: oficina propia de Fiado (default histórico).
4
+ * - `StoreFiado`: tienda de Fiado (misma forma que una oficina).
5
+ *
6
+ * Se persiste como atributo no-key en `FiadoOffices_GT`; los registros
7
+ * legacy sin este campo se tratan como `OfficeFiado`.
8
+ */
9
+ export declare enum OfficeTypeEnum {
10
+ OfficeFiado = "OfficeFiado",
11
+ StoreFiado = "StoreFiado"
12
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OfficeTypeEnum = void 0;
4
+ /**
5
+ * Discrimina los registros de la tabla de oficinas de Fiado:
6
+ * - `OfficeFiado`: oficina propia de Fiado (default histórico).
7
+ * - `StoreFiado`: tienda de Fiado (misma forma que una oficina).
8
+ *
9
+ * Se persiste como atributo no-key en `FiadoOffices_GT`; los registros
10
+ * legacy sin este campo se tratan como `OfficeFiado`.
11
+ */
12
+ var OfficeTypeEnum;
13
+ (function (OfficeTypeEnum) {
14
+ OfficeTypeEnum["OfficeFiado"] = "OfficeFiado";
15
+ OfficeTypeEnum["StoreFiado"] = "StoreFiado";
16
+ })(OfficeTypeEnum || (exports.OfficeTypeEnum = OfficeTypeEnum = {}));
@@ -2,3 +2,4 @@ export * from './dtos/OfficeDto';
2
2
  export * from './dtos/CreateOfficeRequest';
3
3
  export * from './dtos/UpdateOfficeRequest';
4
4
  export * from './enums/OfficeStatusEnum';
5
+ export * from './enums/OfficeTypeEnum';
@@ -20,3 +20,4 @@ __exportStar(require("./dtos/CreateOfficeRequest"), exports);
20
20
  __exportStar(require("./dtos/UpdateOfficeRequest"), exports);
21
21
  //enums
22
22
  __exportStar(require("./enums/OfficeStatusEnum"), exports);
23
+ __exportStar(require("./enums/OfficeTypeEnum"), exports);
@@ -7,4 +7,5 @@ export declare class GetNearbyPlacesResponse {
7
7
  cashInUs?: EstablishmentDto[];
8
8
  cashInMx?: EstablishmentDto[];
9
9
  officeFiado?: OfficeDto[];
10
+ storeFiado?: OfficeDto[];
10
11
  }
@@ -1,5 +1,6 @@
1
1
  export declare enum PlaceTypeEnum {
2
2
  CashInUs = "CashInUs",
3
3
  CashInMx = "CashInMx",
4
- OfficeFiado = "OfficeFiado"
4
+ OfficeFiado = "OfficeFiado",
5
+ StoreFiado = "StoreFiado"
5
6
  }
@@ -6,4 +6,5 @@ var PlaceTypeEnum;
6
6
  PlaceTypeEnum["CashInUs"] = "CashInUs";
7
7
  PlaceTypeEnum["CashInMx"] = "CashInMx";
8
8
  PlaceTypeEnum["OfficeFiado"] = "OfficeFiado";
9
+ PlaceTypeEnum["StoreFiado"] = "StoreFiado";
9
10
  })(PlaceTypeEnum || (exports.PlaceTypeEnum = PlaceTypeEnum = {}));
@@ -1,5 +1,6 @@
1
1
  import { AuditAction } from "../enums/AuditAction";
2
2
  import { AuditEntityType } from "../enums/AuditEntityType";
3
+ import { AuditResult } from "../enums/AuditResult";
3
4
  /**
4
5
  * DTOs del audit trail del backoffice de remesas (RemittanceAuditLog_GT, dueño:
5
6
  * remittance-business). Append-only: registra "quién cambió qué, cuándo" en cada
@@ -19,8 +20,16 @@ export declare class AuditAppendRequest {
19
20
  actor: string;
20
21
  /** Descripción legible ("Editó condiciones del cohort 'Activo'"). */
21
22
  summary: string;
22
- /** Snapshot del estado nuevo de la entidad (opcional). */
23
+ /** Snapshot del estado nuevo de la entidad (opcional; ausente en DELETE). */
23
24
  after?: Record<string, unknown>;
25
+ /** Snapshot del estado previo (ANTES→DESPUÉS; ausente en CREATE). El front diffea. */
26
+ before?: Record<string, unknown>;
27
+ /** Nombre legible de la entidad para la columna ENTIDAD ("Bienvenida 2026"). */
28
+ entityName?: string;
29
+ /** Resultado (default OK). BLOCKED = una regla rechazó el save. */
30
+ result?: AuditResult;
31
+ /** Motivo del bloqueo (nombre de la regla + condición) si result=BLOCKED. */
32
+ blockReason?: string;
24
33
  }
25
34
  /** Entrada del audit trail (response). */
26
35
  export declare class AuditLogEntry {
@@ -32,11 +41,18 @@ export declare class AuditLogEntry {
32
41
  action: AuditAction;
33
42
  summary: string;
34
43
  after: Record<string, unknown> | null;
44
+ /** Snapshot previo (null en CREATE o en eventos B1 anteriores a v2). */
45
+ before: Record<string, unknown> | null;
46
+ entityName: string | null;
47
+ result: AuditResult;
48
+ blockReason: string | null;
35
49
  createdAt: string;
36
50
  }
37
- /** Response de GET /backoffice/audit (paginación estándar index/pageSize). */
51
+ /** Response de GET /backoffice/audit (paginación estándar index/pageSize) y /audit/export. */
38
52
  export declare class AuditListResponse {
39
53
  items: AuditLogEntry[];
40
54
  /** Cursor opaco (base64) para la próxima página; null/ausente = última. */
41
55
  index?: string | null;
56
+ /** Solo en /export: true si se alcanzó el cap de seguridad y el set quedó truncado. */
57
+ truncated?: boolean;
42
58
  }
@@ -13,6 +13,7 @@ exports.AuditListResponse = exports.AuditLogEntry = exports.AuditAppendRequest =
13
13
  const class_validator_1 = require("class-validator");
14
14
  const AuditAction_1 = require("../enums/AuditAction");
15
15
  const AuditEntityType_1 = require("../enums/AuditEntityType");
16
+ const AuditResult_1 = require("../enums/AuditResult");
16
17
  /**
17
18
  * DTOs del audit trail del backoffice de remesas (RemittanceAuditLog_GT, dueño:
18
19
  * remittance-business). Append-only: registra "quién cambió qué, cuándo" en cada
@@ -52,11 +53,33 @@ __decorate([
52
53
  (0, class_validator_1.IsObject)(),
53
54
  __metadata("design:type", Object)
54
55
  ], AuditAppendRequest.prototype, "after", void 0);
56
+ __decorate([
57
+ (0, class_validator_1.IsOptional)(),
58
+ (0, class_validator_1.IsObject)(),
59
+ __metadata("design:type", Object)
60
+ ], AuditAppendRequest.prototype, "before", void 0);
61
+ __decorate([
62
+ (0, class_validator_1.IsOptional)(),
63
+ (0, class_validator_1.IsString)(),
64
+ (0, class_validator_1.MaxLength)(200),
65
+ __metadata("design:type", String)
66
+ ], AuditAppendRequest.prototype, "entityName", void 0);
67
+ __decorate([
68
+ (0, class_validator_1.IsOptional)(),
69
+ (0, class_validator_1.IsEnum)(AuditResult_1.AuditResult),
70
+ __metadata("design:type", String)
71
+ ], AuditAppendRequest.prototype, "result", void 0);
72
+ __decorate([
73
+ (0, class_validator_1.IsOptional)(),
74
+ (0, class_validator_1.IsString)(),
75
+ (0, class_validator_1.MaxLength)(300),
76
+ __metadata("design:type", String)
77
+ ], AuditAppendRequest.prototype, "blockReason", void 0);
55
78
  /** Entrada del audit trail (response). */
56
79
  class AuditLogEntry {
57
80
  }
58
81
  exports.AuditLogEntry = AuditLogEntry;
59
- /** Response de GET /backoffice/audit (paginación estándar index/pageSize). */
82
+ /** Response de GET /backoffice/audit (paginación estándar index/pageSize) y /audit/export. */
60
83
  class AuditListResponse {
61
84
  }
62
85
  exports.AuditListResponse = AuditListResponse;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Resultado de un evento de auditoría (badge del tab Auditoría).
3
+ * "Sistema" (gris) NO es un result: se deriva de actor === "system" en el front.
4
+ * PENDING no se usa en el MVP (se agregaría de forma aditiva si el flujo de
5
+ * aprobación por comité —D1.6— se implementa).
6
+ */
7
+ export declare enum AuditResult {
8
+ OK = "OK",
9
+ BLOCKED = "BLOCKED"
10
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuditResult = void 0;
4
+ /**
5
+ * Resultado de un evento de auditoría (badge del tab Auditoría).
6
+ * "Sistema" (gris) NO es un result: se deriva de actor === "system" en el front.
7
+ * PENDING no se usa en el MVP (se agregaría de forma aditiva si el flujo de
8
+ * aprobación por comité —D1.6— se implementa).
9
+ */
10
+ var AuditResult;
11
+ (function (AuditResult) {
12
+ AuditResult["OK"] = "OK";
13
+ AuditResult["BLOCKED"] = "BLOCKED";
14
+ })(AuditResult || (exports.AuditResult = AuditResult = {}));
@@ -21,3 +21,4 @@ export * from "./RuleCategory";
21
21
  export * from "./RuleField";
22
22
  export * from "./RuleOperator";
23
23
  export * from "./RuleActionType";
24
+ export * from "./AuditResult";
@@ -37,3 +37,4 @@ __exportStar(require("./RuleCategory"), exports);
37
37
  __exportStar(require("./RuleField"), exports);
38
38
  __exportStar(require("./RuleOperator"), exports);
39
39
  __exportStar(require("./RuleActionType"), exports);
40
+ __exportStar(require("./AuditResult"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiado/type-kit",
3
- "version": "3.158.0",
3
+ "version": "3.160.0",
4
4
  "description": "",
5
5
  "main": "bin/index.js",
6
6
  "types": "bin/index.d.ts",
@@ -1,6 +1,7 @@
1
1
  import { IsArray, IsEnum, IsNotEmpty, IsNumber, IsOptional, IsString, Max, Min } from 'class-validator';
2
2
  import { OperationSchedule } from '../../address/dtos/OperationSchedule';
3
3
  import { OfficeStatusEnum } from '../enums/OfficeStatusEnum';
4
+ import { OfficeTypeEnum } from '../enums/OfficeTypeEnum';
4
5
 
5
6
  /**
6
7
  * Alta de oficina desde backoffice. El backoffice envía lat/lng directo (Opción A);
@@ -36,4 +37,9 @@ export class CreateOfficeRequest {
36
37
  @IsOptional()
37
38
  @IsEnum(OfficeStatusEnum)
38
39
  status?: OfficeStatusEnum;
40
+
41
+ /** Tipo de registro. Si no se envía, el lambda aplica el default OfficeFiado. */
42
+ @IsOptional()
43
+ @IsEnum(OfficeTypeEnum)
44
+ type?: OfficeTypeEnum;
39
45
  }
@@ -1,5 +1,6 @@
1
1
  import { OperationSchedule } from '../../address/dtos/OperationSchedule';
2
2
  import { OfficeStatusEnum } from '../enums/OfficeStatusEnum';
3
+ import { OfficeTypeEnum } from '../enums/OfficeTypeEnum';
3
4
 
4
5
  /**
5
6
  * Oficina de Fiado, gestionada por el backoffice (fuente de verdad, no HERE).
@@ -14,4 +15,6 @@ export class OfficeDto {
14
15
  phone?: string;
15
16
  schedule?: OperationSchedule[];
16
17
  status: OfficeStatusEnum;
18
+ /** Tipo de registro (OfficeFiado | StoreFiado). Legacy sin campo = OfficeFiado. */
19
+ type: OfficeTypeEnum;
17
20
  }
@@ -1,6 +1,7 @@
1
1
  import { IsArray, IsEnum, IsNumber, IsOptional, IsString, Max, Min } from 'class-validator';
2
2
  import { OperationSchedule } from '../../address/dtos/OperationSchedule';
3
3
  import { OfficeStatusEnum } from '../enums/OfficeStatusEnum';
4
+ import { OfficeTypeEnum } from '../enums/OfficeTypeEnum';
4
5
 
5
6
  /**
6
7
  * Edición de oficina desde backoffice. Todos los campos opcionales.
@@ -38,4 +39,9 @@ export class UpdateOfficeRequest {
38
39
  @IsOptional()
39
40
  @IsEnum(OfficeStatusEnum)
40
41
  status?: OfficeStatusEnum;
42
+
43
+ /** Permite reclasificar un registro entre OfficeFiado y StoreFiado. */
44
+ @IsOptional()
45
+ @IsEnum(OfficeTypeEnum)
46
+ type?: OfficeTypeEnum;
41
47
  }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Discrimina los registros de la tabla de oficinas de Fiado:
3
+ * - `OfficeFiado`: oficina propia de Fiado (default histórico).
4
+ * - `StoreFiado`: tienda de Fiado (misma forma que una oficina).
5
+ *
6
+ * Se persiste como atributo no-key en `FiadoOffices_GT`; los registros
7
+ * legacy sin este campo se tratan como `OfficeFiado`.
8
+ */
9
+ export enum OfficeTypeEnum {
10
+ OfficeFiado = 'OfficeFiado',
11
+ StoreFiado = 'StoreFiado',
12
+ }
@@ -5,3 +5,4 @@ export * from './dtos/UpdateOfficeRequest';
5
5
 
6
6
  //enums
7
7
  export * from './enums/OfficeStatusEnum';
8
+ export * from './enums/OfficeTypeEnum';
@@ -8,4 +8,5 @@ export class GetNearbyPlacesResponse {
8
8
  cashInUs?: EstablishmentDto[];
9
9
  cashInMx?: EstablishmentDto[];
10
10
  officeFiado?: OfficeDto[];
11
+ storeFiado?: OfficeDto[];
11
12
  }
@@ -2,4 +2,5 @@ export enum PlaceTypeEnum {
2
2
  CashInUs = 'CashInUs',
3
3
  CashInMx = 'CashInMx',
4
4
  OfficeFiado = 'OfficeFiado',
5
+ StoreFiado = 'StoreFiado',
5
6
  }
@@ -1,6 +1,7 @@
1
1
  import { IsEnum, IsObject, IsOptional, IsString, MaxLength } from "class-validator";
2
2
  import { AuditAction } from "../enums/AuditAction";
3
3
  import { AuditEntityType } from "../enums/AuditEntityType";
4
+ import { AuditResult } from "../enums/AuditResult";
4
5
 
5
6
  /**
6
7
  * DTOs del audit trail del backoffice de remesas (RemittanceAuditLog_GT, dueño:
@@ -33,10 +34,32 @@ export class AuditAppendRequest {
33
34
  @MaxLength(500)
34
35
  summary!: string;
35
36
 
36
- /** Snapshot del estado nuevo de la entidad (opcional). */
37
+ /** Snapshot del estado nuevo de la entidad (opcional; ausente en DELETE). */
37
38
  @IsOptional()
38
39
  @IsObject()
39
40
  after?: Record<string, unknown>;
41
+
42
+ /** Snapshot del estado previo (ANTES→DESPUÉS; ausente en CREATE). El front diffea. */
43
+ @IsOptional()
44
+ @IsObject()
45
+ before?: Record<string, unknown>;
46
+
47
+ /** Nombre legible de la entidad para la columna ENTIDAD ("Bienvenida 2026"). */
48
+ @IsOptional()
49
+ @IsString()
50
+ @MaxLength(200)
51
+ entityName?: string;
52
+
53
+ /** Resultado (default OK). BLOCKED = una regla rechazó el save. */
54
+ @IsOptional()
55
+ @IsEnum(AuditResult)
56
+ result?: AuditResult;
57
+
58
+ /** Motivo del bloqueo (nombre de la regla + condición) si result=BLOCKED. */
59
+ @IsOptional()
60
+ @IsString()
61
+ @MaxLength(300)
62
+ blockReason?: string;
40
63
  }
41
64
 
42
65
  /** Entrada del audit trail (response). */
@@ -49,12 +72,19 @@ export class AuditLogEntry {
49
72
  action!: AuditAction;
50
73
  summary!: string;
51
74
  after!: Record<string, unknown> | null;
75
+ /** Snapshot previo (null en CREATE o en eventos B1 anteriores a v2). */
76
+ before!: Record<string, unknown> | null;
77
+ entityName!: string | null;
78
+ result!: AuditResult;
79
+ blockReason!: string | null;
52
80
  createdAt!: string;
53
81
  }
54
82
 
55
- /** Response de GET /backoffice/audit (paginación estándar index/pageSize). */
83
+ /** Response de GET /backoffice/audit (paginación estándar index/pageSize) y /audit/export. */
56
84
  export class AuditListResponse {
57
85
  items!: AuditLogEntry[];
58
86
  /** Cursor opaco (base64) para la próxima página; null/ausente = última. */
59
87
  index?: string | null;
88
+ /** Solo en /export: true si se alcanzó el cap de seguridad y el set quedó truncado. */
89
+ truncated?: boolean;
60
90
  }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Resultado de un evento de auditoría (badge del tab Auditoría).
3
+ * "Sistema" (gris) NO es un result: se deriva de actor === "system" en el front.
4
+ * PENDING no se usa en el MVP (se agregaría de forma aditiva si el flujo de
5
+ * aprobación por comité —D1.6— se implementa).
6
+ */
7
+ export enum AuditResult {
8
+ OK = "OK",
9
+ BLOCKED = "BLOCKED",
10
+ }
@@ -21,3 +21,4 @@ export * from "./RuleCategory";
21
21
  export * from "./RuleField";
22
22
  export * from "./RuleOperator";
23
23
  export * from "./RuleActionType";
24
+ export * from "./AuditResult";