@fiado/type-kit 3.314.0 → 3.316.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.
- package/_test_/unit/card/CardIssuanceBySideRequest.test.ts +42 -0
- package/_test_/unit/onboarding/ExpedienteUpdatedMessage.test.ts +57 -0
- package/_test_/unit/retailCards/cardStockRequests.test.ts +52 -2
- package/bin/benefitCenter/enums/BenefitFlowEnum.d.ts +11 -0
- package/bin/benefitCenter/enums/BenefitFlowEnum.js +15 -0
- package/bin/card/dtos/CardIssuanceBySideRequest.d.ts +16 -0
- package/bin/card/dtos/CardIssuanceBySideRequest.js +43 -0
- package/bin/card/dtos/CardIssuanceBySideResponse.d.ts +7 -0
- package/bin/card/dtos/CardIssuanceBySideResponse.js +6 -0
- package/bin/card/enums/issuance/CardIssuanceResultEnum.d.ts +4 -0
- package/bin/card/enums/issuance/CardIssuanceResultEnum.js +8 -0
- package/bin/card/enums/issuance/CardIssuanceSkipReasonEnum.d.ts +6 -0
- package/bin/card/enums/issuance/CardIssuanceSkipReasonEnum.js +10 -0
- package/bin/card/enums/issuance/CardIssuanceTriggerEnum.d.ts +5 -0
- package/bin/card/enums/issuance/CardIssuanceTriggerEnum.js +9 -0
- package/bin/card/index.d.ts +5 -0
- package/bin/card/index.js +5 -0
- package/bin/identity/dtos/InfoSelfVerifiedFields.d.ts +25 -0
- package/bin/identity/dtos/InfoSelfVerifiedFields.js +2 -0
- package/bin/identity/dtos/PeopleResponse.d.ts +7 -0
- package/bin/identity/dtos/PeopleUpdateRequest.d.ts +7 -0
- package/bin/identity/index.d.ts +1 -0
- package/bin/identity/index.js +1 -0
- package/bin/onboarding/dtos/ExpedienteUpdatedMessage.d.ts +22 -0
- package/bin/onboarding/dtos/ExpedienteUpdatedMessage.js +49 -0
- package/bin/onboarding/enums/ExpedienteUpdatedSourceEnum.d.ts +7 -0
- package/bin/onboarding/enums/ExpedienteUpdatedSourceEnum.js +11 -0
- package/bin/onboarding/index.d.ts +2 -0
- package/bin/onboarding/index.js +3 -0
- package/bin/places/dtos/CashInFeeDto.d.ts +17 -0
- package/bin/places/dtos/CashInFeeDto.js +12 -0
- package/bin/platformRbac/dtos/CompleteMyProfileRequest.d.ts +9 -0
- package/bin/platformRbac/dtos/CompleteMyProfileRequest.js +34 -0
- package/bin/retailCards/dtos/requests/AssignCardRequest.d.ts +6 -0
- package/bin/retailCards/dtos/requests/AssignCardRequest.js +30 -0
- package/bin/retailCards/dtos/requests/CancelCardRequest.d.ts +5 -0
- package/bin/retailCards/dtos/requests/CancelCardRequest.js +22 -0
- package/bin/retailCards/dtos/requests/RegisterCardBatchRequest.d.ts +4 -1
- package/bin/retailCards/dtos/requests/RegisterCardBatchRequest.js +3 -0
- package/bin/retailCards/dtos/requests/WriteOffCardStockRequest.d.ts +5 -0
- package/bin/retailCards/dtos/requests/WriteOffCardStockRequest.js +4 -0
- package/bin/retailCards/dtos/responses/CardDeliveryResponse.d.ts +5 -2
- package/bin/retailCards/dtos/responses/RetailCardResponse.d.ts +12 -0
- package/bin/retailCards/dtos/responses/RetailCardResponse.js +2 -0
- package/bin/retailCards/enums/CardBatchStatusEnum.d.ts +17 -0
- package/bin/retailCards/enums/CardBatchStatusEnum.js +21 -0
- package/bin/retailCards/enums/CardCancelReasonEnum.d.ts +13 -0
- package/bin/retailCards/enums/CardCancelReasonEnum.js +17 -0
- package/bin/retailCards/enums/RetailCardStatusEnum.d.ts +13 -0
- package/bin/retailCards/enums/RetailCardStatusEnum.js +17 -0
- package/bin/retailCards/events/RetailCardAssignedV1.d.ts +10 -0
- package/bin/retailCards/events/RetailCardAssignedV1.js +2 -0
- package/bin/retailCards/events/RetailCardCancelledV1.d.ts +9 -0
- package/bin/retailCards/events/RetailCardCancelledV1.js +2 -0
- package/bin/retailCards/events/RetailCardReleasedV1.d.ts +7 -0
- package/bin/retailCards/events/RetailCardReleasedV1.js +2 -0
- package/bin/retailWizard/dtos/requests/CompleteSaleRequest.d.ts +9 -0
- package/bin/retailWizard/dtos/requests/CompleteSaleRequest.js +29 -0
- package/bin/retailWizard/dtos/requests/MarkPcfCardDeliveredRequest.d.ts +4 -0
- package/bin/retailWizard/dtos/requests/MarkPcfCardDeliveredRequest.js +23 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceRequest.d.ts +14 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceRequest.js +41 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceResponse.d.ts +15 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceResponse.js +13 -0
- package/bin/walletFunding/dtos/CancelWalletFundingRequest.d.ts +3 -0
- package/bin/walletFunding/dtos/CancelWalletFundingRequest.js +21 -0
- package/bin/walletFunding/dtos/CancelWalletFundingResponse.d.ts +7 -0
- package/bin/walletFunding/dtos/CancelWalletFundingResponse.js +6 -0
- package/package.json +1 -1
- package/src/card/dtos/CardIssuanceBySideRequest.ts +29 -0
- package/src/card/dtos/CardIssuanceBySideResponse.ts +8 -0
- package/src/card/enums/issuance/CardIssuanceResultEnum.ts +4 -0
- package/src/card/enums/issuance/CardIssuanceSkipReasonEnum.ts +6 -0
- package/src/card/enums/issuance/CardIssuanceTriggerEnum.ts +5 -0
- package/src/card/index.ts +5 -0
- package/src/identity/dtos/InfoSelfVerifiedFields.ts +25 -0
- package/src/identity/dtos/PeopleResponse.ts +7 -0
- package/src/identity/dtos/PeopleUpdateRequest.ts +7 -0
- package/src/identity/index.ts +1 -0
- package/src/onboarding/dtos/ExpedienteUpdatedMessage.ts +37 -0
- package/src/onboarding/enums/ExpedienteUpdatedSourceEnum.ts +7 -0
- package/src/onboarding/index.ts +4 -0
- package/src/retailCards/dtos/requests/RegisterCardBatchRequest.ts +8 -2
- package/src/retailCards/dtos/requests/WriteOffCardStockRequest.ts +8 -1
- package/src/retailCards/dtos/responses/CardDeliveryResponse.ts +5 -2
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Confirmación de datos POR CAMPO, no por lado.
|
|
3
|
+
*
|
|
4
|
+
* La app dejó de mandar un "confirmo / no confirmo" a secas: ahora manda qué campo está bien y cuál
|
|
5
|
+
* mal. `false` significa INCORRECTO — el usuario pide que se corrija ese dato.
|
|
6
|
+
*
|
|
7
|
+
* Sólo llegan las claves de los campos que el usuario efectivamente pudo responder: si el expediente
|
|
8
|
+
* no tiene nombre US, la app no manda `verifyNameUS`. Ausente ≠ incorrecto.
|
|
9
|
+
*
|
|
10
|
+
* Acompaña a `MEX_InfoSelfVerified` / `USA_InfoSelfVerified` sin reemplazarlos: esos dos siguen
|
|
11
|
+
* siendo el enum de siempre y dicen SI el lado quedó confirmado; éste dice QUÉ campo falló, que es
|
|
12
|
+
* lo que permite reabrir el paso correcto y saber qué documento pedir.
|
|
13
|
+
*
|
|
14
|
+
* Se guarda aparte y no concatenado dentro del propio `*_InfoSelfVerified` porque las ~30
|
|
15
|
+
* comparaciones que hay contra ese campo en los distintos repos son todas por igualdad exacta:
|
|
16
|
+
* un valor compuesto no matchearía con ninguna y caería en el `else` de todas, sin error.
|
|
17
|
+
*/
|
|
18
|
+
export interface InfoSelfVerifiedFields {
|
|
19
|
+
/** Nombre estadounidense (`usNames` + `usLastNames`). Es el que abre el lado azul. */
|
|
20
|
+
verifyNameUS?: boolean;
|
|
21
|
+
/** Nombre latino (`latNames` + apellidos). Es el que abre el lado rosa. */
|
|
22
|
+
verifyNameLAT?: boolean;
|
|
23
|
+
/** Domicilio de Estados Unidos. */
|
|
24
|
+
verifyAddressUS?: boolean;
|
|
25
|
+
}
|
|
@@ -6,6 +6,7 @@ import { CPStatusEnum } from '../enums/CPStatusEnum';
|
|
|
6
6
|
import { InfoSelfVerifiedStatus } from '../enums/InfoSelfVerifiedStatus';
|
|
7
7
|
import { SexDocument } from '../enums/SexDocument';
|
|
8
8
|
import { IdentificationDocument } from './IdentificationDocument';
|
|
9
|
+
import { InfoSelfVerifiedFields } from './InfoSelfVerifiedFields';
|
|
9
10
|
import { ManualApproval } from './ManualApproval';
|
|
10
11
|
import { PeopleName } from './PeopleName';
|
|
11
12
|
|
|
@@ -99,6 +100,12 @@ export class PeopleResponse {
|
|
|
99
100
|
MEX_Signed:boolean | null;
|
|
100
101
|
USA_Beneficiaries:boolean | null;
|
|
101
102
|
USA_InfoSelfVerified:InfoSelfVerifiedStatus;
|
|
103
|
+
/**
|
|
104
|
+
* Qué campo marcó el usuario como incorrecto. Detalla a los dos `*_InfoSelfVerified`.
|
|
105
|
+
* Opcional a diferencia del resto: los expedientes anteriores a la confirmación por campo
|
|
106
|
+
* no lo tienen.
|
|
107
|
+
*/
|
|
108
|
+
infoSelfVerifiedFields?:InfoSelfVerifiedFields;
|
|
102
109
|
USA_Signed:boolean | null;
|
|
103
110
|
older18:boolean | null;
|
|
104
111
|
signature:boolean;
|
|
@@ -4,6 +4,7 @@ import { CPStatusEnum } from "../enums/CPStatusEnum";
|
|
|
4
4
|
import { InfoSelfVerifiedStatus } from "../enums/InfoSelfVerifiedStatus";
|
|
5
5
|
import { SexDocument } from "../enums/SexDocument";
|
|
6
6
|
import { IdentificationDocument } from "./IdentificationDocument";
|
|
7
|
+
import { InfoSelfVerifiedFields } from "./InfoSelfVerifiedFields";
|
|
7
8
|
import { ManualApproval } from "./ManualApproval";
|
|
8
9
|
import { PeopleName } from "./PeopleName";
|
|
9
10
|
|
|
@@ -90,6 +91,12 @@ export class PeopleUpdateRequest {
|
|
|
90
91
|
pepLevel?: string | null;
|
|
91
92
|
USA_InfoSelfVerified?: InfoSelfVerifiedStatus;
|
|
92
93
|
MEX_InfoSelfVerified?: InfoSelfVerifiedStatus;
|
|
94
|
+
/**
|
|
95
|
+
* Qué campo marcó el usuario como incorrecto al revisar sus datos. Lo manda la app en el PUT y
|
|
96
|
+
* de acá se derivan los dos `*_InfoSelfVerified` de arriba: un lado se confirma cuando todas
|
|
97
|
+
* sus banderas están en `true`, y pide corrección si alguna está en `false`.
|
|
98
|
+
*/
|
|
99
|
+
infoSelfVerifiedFields?: InfoSelfVerifiedFields;
|
|
93
100
|
infoSelfVerified?: InfoSelfVerifiedStatus;
|
|
94
101
|
beneficialOwner?: string | null;
|
|
95
102
|
weeklyIncomeUSD?: string | null;
|
package/src/identity/index.ts
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
export * from './dtos/IdentificationDocument'
|
|
4
4
|
export * from './dtos/ManualApproval';
|
|
5
5
|
export * from './dtos/PeopleCreateRequest';
|
|
6
|
+
export * from './dtos/InfoSelfVerifiedFields';
|
|
6
7
|
export * from './dtos/PeopleResponse';
|
|
7
8
|
export * from './dtos/PeopleName';
|
|
8
9
|
export * from './dtos/TypeOfDocument';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Equals, IsEnum, IsISO8601, IsUUID, Matches } from "class-validator";
|
|
2
|
+
import { ExpedienteUpdatedSourceEnum } from "../enums/ExpedienteUpdatedSourceEnum";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Evento EXPEDIENTE_UPDATED (cola OnboardingReadinessQueue).
|
|
6
|
+
* Producer: fiado-identity-lambda (tras cada escritura exitosa de People/ARC).
|
|
7
|
+
* Consumer: onboarding-business (ExpedienteUpdatedSubscriber, DEC-025).
|
|
8
|
+
* Payload anémico a propósito: el subscriber SIEMPRE lee el expediente fresco;
|
|
9
|
+
* nada de datos de negocio acá para que un mensaje viejo no decida con datos viejos.
|
|
10
|
+
*/
|
|
11
|
+
export class ExpedienteUpdatedMessage {
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Discriminador. La cola es dedicada hoy, pero agregarlo ahora es gratis y
|
|
15
|
+
* agregarlo después de publicar sería breaking (mismo criterio que
|
|
16
|
+
* KycStepCompletedV1.eventType).
|
|
17
|
+
*/
|
|
18
|
+
@Equals("EXPEDIENTE_UPDATED")
|
|
19
|
+
eventType: "EXPEDIENTE_UPDATED";
|
|
20
|
+
|
|
21
|
+
@IsUUID()
|
|
22
|
+
eventId: string;
|
|
23
|
+
|
|
24
|
+
@IsUUID()
|
|
25
|
+
directoryId: string;
|
|
26
|
+
|
|
27
|
+
@IsUUID()
|
|
28
|
+
peopleId: string;
|
|
29
|
+
|
|
30
|
+
@IsEnum(ExpedienteUpdatedSourceEnum)
|
|
31
|
+
source: ExpedienteUpdatedSourceEnum;
|
|
32
|
+
|
|
33
|
+
/** ISO-8601 estricto y en UTC (sufijo Z) — @IsISO8601 pelado acepta fechas sin hora y offsets locales (precedente: KycStepCompletedV1). */
|
|
34
|
+
@IsISO8601({ strict: true })
|
|
35
|
+
@Matches(/Z$/, { message: "occurredAt debe estar en UTC (sufijo Z)" })
|
|
36
|
+
occurredAt: string;
|
|
37
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Qué write-path de fiado-identity-lambda originó el evento (solo diagnóstico — el subscriber no decide por source). */
|
|
2
|
+
export enum ExpedienteUpdatedSourceEnum {
|
|
3
|
+
PEOPLE = "PEOPLE",
|
|
4
|
+
ACCOUNT_REQUIREMENT_CONTROL = "ACCOUNT_REQUIREMENT_CONTROL",
|
|
5
|
+
DOCUMENT = "DOCUMENT",
|
|
6
|
+
AGENT = "AGENT",
|
|
7
|
+
}
|
package/src/onboarding/index.ts
CHANGED
|
@@ -4,6 +4,10 @@ export * from './enums/OnboardingStepStatusEnum';
|
|
|
4
4
|
export * from './enums/OnboardingAccountStatusEnum';
|
|
5
5
|
export * from './enums/OnboardingAccountReasonEnum';
|
|
6
6
|
export * from './enums/OnboardingAccountMessageKeyEnum';
|
|
7
|
+
export * from './enums/ExpedienteUpdatedSourceEnum';
|
|
7
8
|
|
|
8
9
|
// Response DTOs
|
|
9
10
|
export * from './dtos/responses/OnboardingStepsResponse';
|
|
11
|
+
|
|
12
|
+
// Queue messages
|
|
13
|
+
export * from './dtos/ExpedienteUpdatedMessage';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Transform } from 'class-transformer';
|
|
2
|
+
import { IsInt, IsNotEmpty, IsOptional, IsString, Max, Min } from 'class-validator';
|
|
2
3
|
|
|
3
4
|
/**
|
|
4
5
|
* Body del registro (recepción) de un lote de tarjetas para una tienda. Los sobres llegan sellados:
|
|
@@ -13,8 +14,13 @@ export class RegisterCardBatchRequest {
|
|
|
13
14
|
@Max(1000)
|
|
14
15
|
quantity!: number;
|
|
15
16
|
|
|
16
|
-
/**
|
|
17
|
+
/**
|
|
18
|
+
* Folio de la remesa del proveedor: lo único que distingue dos entradas iguales a la misma tienda.
|
|
19
|
+
* Se recorta y no admite blanco, porque es la clave de idempotencia de la recepción.
|
|
20
|
+
*/
|
|
17
21
|
@IsString()
|
|
22
|
+
@Transform(({ value }) => (typeof value === 'string' ? value.trim() : value))
|
|
23
|
+
@IsNotEmpty()
|
|
18
24
|
supplierBatchRef!: string;
|
|
19
25
|
|
|
20
26
|
@IsOptional()
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IsEnum, IsInt, IsOptional, IsString, Min } from 'class-validator';
|
|
1
|
+
import { IsEnum, IsInt, IsOptional, IsString, IsUUID, Min } from 'class-validator';
|
|
2
2
|
import { CardWriteOffReasonEnum } from '../../enums/CardWriteOffReasonEnum';
|
|
3
3
|
|
|
4
4
|
/** Body de la baja de inventario de tarjetas de una tienda, por cantidad. */
|
|
@@ -10,6 +10,13 @@ export class WriteOffCardStockRequest {
|
|
|
10
10
|
@IsEnum(CardWriteOffReasonEnum)
|
|
11
11
|
reason!: CardWriteOffReasonEnum;
|
|
12
12
|
|
|
13
|
+
/**
|
|
14
|
+
* Clave de idempotencia de la baja, generada por el caller una vez por intento. Un reintento
|
|
15
|
+
* devuelve el asiento original: sin ella un doble clic descontaría el doble.
|
|
16
|
+
*/
|
|
17
|
+
@IsUUID()
|
|
18
|
+
operationId!: string;
|
|
19
|
+
|
|
13
20
|
@IsOptional()
|
|
14
21
|
@IsString()
|
|
15
22
|
notes?: string | null;
|
|
@@ -5,7 +5,10 @@
|
|
|
5
5
|
export interface CardDeliveryResponse {
|
|
6
6
|
deliveryId: string;
|
|
7
7
|
movementSk: string;
|
|
8
|
-
/**
|
|
9
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Saldo disponible de la tienda al momento de responder, leído después de la transacción. No es
|
|
10
|
+
* el saldo del instante del asiento: si otra entrega cae en medio, refleja las dos.
|
|
11
|
+
*/
|
|
12
|
+
availableNow: number;
|
|
10
13
|
occurredAt: string;
|
|
11
14
|
}
|