@fiado/type-kit 3.626.0 → 3.628.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/collection/collectionCallbackRequests.test.ts +96 -0
- package/_test_/unit/emailVerification/dtos/EmailSetTrustedRequest.test.ts +23 -0
- package/_test_/unit/loanCollectorAssignment/collectorAssignmentRequests.test.ts +65 -0
- package/_test_/unit/loanConfig/parameterWriteRequests.test.ts +62 -0
- package/_test_/unit/loanCredit/dtos/loanCreditInputLimits.test.ts +168 -0
- package/_test_/unit/loanCredit/signLoanCreditRequest.test.ts +61 -2
- package/_test_/unit/loanOfferings/offeringsInputRules.test.ts +254 -0
- package/_test_/unit/loanOfferings/promotionRequests.test.ts +1 -1
- package/_test_/unit/loanRetailAudit/auditInputLimits.test.ts +114 -0
- package/_test_/unit/loanScoring/evaluateSciRequest.test.ts +49 -0
- package/bin/collection/constants/CollectionResultLimits.d.ts +16 -0
- package/bin/collection/constants/CollectionResultLimits.js +19 -0
- package/bin/collection/dtos/ApplyCollectionResultRequest.d.ts +5 -0
- package/bin/collection/dtos/ApplyCollectionResultRequest.js +22 -0
- package/bin/collection/dtos/ResolvePendingChargesRequest.d.ts +2 -0
- package/bin/collection/dtos/ResolvePendingChargesRequest.js +9 -0
- package/bin/collection/index.d.ts +2 -0
- package/bin/collection/index.js +3 -0
- package/bin/collection/validators/IsCentPrecision.d.ts +11 -0
- package/bin/collection/validators/IsCentPrecision.js +32 -0
- package/bin/emailVerification/dtos/EmailSetTrustedRequest.d.ts +2 -0
- package/bin/emailVerification/dtos/EmailSetTrustedRequest.js +6 -0
- package/bin/loanCollectorAssignment/constants/CollectorAssignmentLimits.d.ts +12 -0
- package/bin/loanCollectorAssignment/constants/CollectorAssignmentLimits.js +15 -0
- package/bin/loanCollectorAssignment/dtos/requests/AutoAssignRequest.d.ts +1 -0
- package/bin/loanCollectorAssignment/dtos/requests/AutoAssignRequest.js +8 -0
- package/bin/loanCollectorAssignment/dtos/requests/ListCollectorAssignmentsRequest.d.ts +14 -0
- package/bin/loanCollectorAssignment/dtos/requests/ListCollectorAssignmentsRequest.js +62 -0
- package/bin/loanCollectorAssignment/dtos/requests/ReassignRequest.d.ts +1 -0
- package/bin/loanCollectorAssignment/dtos/requests/ReassignRequest.js +4 -0
- package/bin/loanCollectorAssignment/dtos/requests/RedistributeRequest.d.ts +1 -0
- package/bin/loanCollectorAssignment/dtos/requests/RedistributeRequest.js +4 -0
- package/bin/loanCollectorAssignment/dtos/responses/ListCollectorAssignmentsResponse.d.ts +9 -0
- package/bin/loanCollectorAssignment/dtos/responses/ListCollectorAssignmentsResponse.js +2 -0
- package/bin/loanCollectorAssignment/index.d.ts +3 -0
- package/bin/loanCollectorAssignment/index.js +4 -0
- package/bin/loanConfig/constants/ParameterRequestLimits.d.ts +8 -0
- package/bin/loanConfig/constants/ParameterRequestLimits.js +11 -0
- package/bin/loanConfig/dtos/requests/BulkGetParametersRequest.d.ts +1 -1
- package/bin/loanConfig/dtos/requests/BulkGetParametersRequest.js +3 -1
- package/bin/loanConfig/dtos/requests/BulkUpdateParametersRequest.d.ts +5 -2
- package/bin/loanConfig/dtos/requests/BulkUpdateParametersRequest.js +8 -4
- package/bin/loanConfig/dtos/requests/UpdateParameterRequest.d.ts +6 -3
- package/bin/loanConfig/dtos/requests/UpdateParameterRequest.js +10 -5
- package/bin/loanConfig/index.d.ts +1 -0
- package/bin/loanConfig/index.js +1 -0
- package/bin/loanCredit/constants/LoanInputLimits.d.ts +24 -0
- package/bin/loanCredit/constants/LoanInputLimits.js +27 -0
- package/bin/loanCredit/dtos/LoanBeneficiary.d.ts +1 -0
- package/bin/loanCredit/dtos/LoanBeneficiary.js +9 -0
- package/bin/loanCredit/dtos/LoanContractDetails.d.ts +18 -1
- package/bin/loanCredit/dtos/LoanContractDetails.js +2 -1
- package/bin/loanCredit/dtos/LoanDeviceNotifyItem.d.ts +5 -0
- package/bin/loanCredit/dtos/LoanDeviceNotifyItem.js +12 -3
- package/bin/loanCredit/dtos/RestructureTerms.d.ts +1 -1
- package/bin/loanCredit/dtos/RestructureTerms.js +2 -0
- package/bin/loanCredit/dtos/SignatureContext.d.ts +5 -1
- package/bin/loanCredit/dtos/requests/ActivationCheckRequest.d.ts +1 -1
- package/bin/loanCredit/dtos/requests/ActivationCheckRequest.js +4 -0
- package/bin/loanCredit/dtos/requests/BackofficeApproveRestructureRequest.js +2 -0
- package/bin/loanCredit/dtos/requests/BackofficeProposeRestructureRequest.js +2 -0
- package/bin/loanCredit/dtos/requests/BackofficeRejectRestructureRequest.js +2 -0
- package/bin/loanCredit/dtos/requests/BackofficeWriteOffCreditRequest.js +2 -0
- package/bin/loanCredit/dtos/requests/CreateCustomerPaymentRequest.d.ts +5 -0
- package/bin/loanCredit/dtos/requests/CreateCustomerPaymentRequest.js +6 -0
- package/bin/loanCredit/dtos/requests/CreateSellerPaymentRequest.d.ts +5 -0
- package/bin/loanCredit/dtos/requests/CreateSellerPaymentRequest.js +6 -0
- package/bin/loanCredit/dtos/requests/OriginateLoanCreditRequest.d.ts +1 -0
- package/bin/loanCredit/dtos/requests/OriginateLoanCreditRequest.js +7 -1
- package/bin/loanCredit/dtos/requests/SegmentFactsBatchRequest.d.ts +1 -1
- package/bin/loanCredit/dtos/requests/SegmentFactsBatchRequest.js +3 -1
- package/bin/loanCredit/dtos/requests/SignLoanCreditRequest.d.ts +2 -0
- package/bin/loanCredit/dtos/requests/SignLoanCreditRequest.js +3 -0
- package/bin/loanCredit/dtos/requests/UpsertLoanBorrowerRequest.d.ts +1 -0
- package/bin/loanCredit/dtos/requests/UpsertLoanBorrowerRequest.js +2 -0
- package/bin/loanCredit/index.d.ts +2 -0
- package/bin/loanCredit/index.js +2 -0
- package/bin/loanCredit/validators/IsContractBirthDate.d.ts +11 -0
- package/bin/loanCredit/validators/IsContractBirthDate.js +41 -0
- package/bin/loanOfferings/constants/offeringsInputLimits.d.ts +35 -0
- package/bin/loanOfferings/constants/offeringsInputLimits.js +38 -0
- package/bin/loanOfferings/dtos/requests/ChangeCreditPlanStatusRequest.d.ts +2 -0
- package/bin/loanOfferings/dtos/requests/ChangeCreditPlanStatusRequest.js +8 -0
- package/bin/loanOfferings/dtos/requests/ChangePromotionStatusRequest.js +2 -0
- package/bin/loanOfferings/dtos/requests/ComputeAmortizationScheduleRequest.d.ts +4 -1
- package/bin/loanOfferings/dtos/requests/ComputeAmortizationScheduleRequest.js +3 -1
- package/bin/loanOfferings/dtos/requests/ConsumePromotionRequest.d.ts +1 -0
- package/bin/loanOfferings/dtos/requests/ConsumePromotionRequest.js +3 -0
- package/bin/loanOfferings/dtos/requests/CreateCreditPlanRequest.d.ts +3 -0
- package/bin/loanOfferings/dtos/requests/CreateCreditPlanRequest.js +11 -2
- package/bin/loanOfferings/dtos/requests/CreateFinancierRequest.d.ts +5 -0
- package/bin/loanOfferings/dtos/requests/CreateFinancierRequest.js +11 -0
- package/bin/loanOfferings/dtos/requests/CreatePromotionRequest.d.ts +2 -2
- package/bin/loanOfferings/dtos/requests/CreatePromotionRequest.js +9 -0
- package/bin/loanOfferings/dtos/requests/CreateSegmentRequest.d.ts +1 -1
- package/bin/loanOfferings/dtos/requests/CreateSegmentRequest.js +3 -0
- package/bin/loanOfferings/dtos/requests/CreateStorePolicyRequest.d.ts +1 -1
- package/bin/loanOfferings/dtos/requests/CreateStorePolicyRequest.js +3 -0
- package/bin/loanOfferings/dtos/requests/ReleasePromotionRequest.d.ts +8 -0
- package/bin/loanOfferings/dtos/requests/ReleasePromotionRequest.js +30 -0
- package/bin/loanOfferings/dtos/requests/ReservePromotionBonusRequest.d.ts +1 -0
- package/bin/loanOfferings/dtos/requests/ReservePromotionBonusRequest.js +3 -0
- package/bin/loanOfferings/dtos/requests/SettlePromotionBonusRequest.d.ts +1 -0
- package/bin/loanOfferings/dtos/requests/SettlePromotionBonusRequest.js +3 -0
- package/bin/loanOfferings/dtos/requests/SimulateCreditPlanRequest.d.ts +1 -0
- package/bin/loanOfferings/dtos/requests/SimulateCreditPlanRequest.js +3 -0
- package/bin/loanOfferings/dtos/requests/UpdateCohortRequest.d.ts +3 -1
- package/bin/loanOfferings/dtos/requests/UpdateCohortRequest.js +5 -2
- package/bin/loanOfferings/dtos/requests/UpdateCreditPlanRequest.d.ts +8 -0
- package/bin/loanOfferings/dtos/requests/UpdateCreditPlanRequest.js +30 -12
- package/bin/loanOfferings/dtos/requests/UpdateFinancierRequest.d.ts +6 -0
- package/bin/loanOfferings/dtos/requests/UpdateFinancierRequest.js +13 -2
- package/bin/loanOfferings/dtos/requests/UpdatePromotionRequest.d.ts +7 -1
- package/bin/loanOfferings/dtos/requests/UpdatePromotionRequest.js +25 -5
- package/bin/loanOfferings/dtos/requests/UpdateSegmentRequest.d.ts +5 -2
- package/bin/loanOfferings/dtos/requests/UpdateSegmentRequest.js +12 -5
- package/bin/loanOfferings/dtos/requests/UpdateStorePolicyRequest.d.ts +18 -9
- package/bin/loanOfferings/dtos/requests/UpdateStorePolicyRequest.js +12 -4
- package/bin/loanOfferings/dtos/responses/ReleasePromotionResponse.d.ts +11 -0
- package/bin/loanOfferings/dtos/responses/ReleasePromotionResponse.js +2 -0
- package/bin/loanOfferings/index.d.ts +5 -0
- package/bin/loanOfferings/index.js +6 -0
- package/bin/loanOfferings/validators/IsOptionalNonNull.d.ts +9 -0
- package/bin/loanOfferings/validators/IsOptionalNonNull.js +14 -0
- package/bin/loanOfferings/validators/MaxJsonBytes.d.ts +5 -0
- package/bin/loanOfferings/validators/MaxJsonBytes.js +28 -0
- package/bin/loanRetailAudit/constants/auditInputLimits.d.ts +16 -0
- package/bin/loanRetailAudit/constants/auditInputLimits.js +19 -0
- package/bin/loanRetailAudit/dtos/AuditTrailChange.js +4 -0
- package/bin/loanRetailAudit/dtos/AuditTrailContextEntry.js +3 -0
- package/bin/loanRetailAudit/dtos/requests/CreatePiiAccessLogRequest.d.ts +7 -1
- package/bin/loanRetailAudit/dtos/requests/CreatePiiAccessLogRequest.js +8 -1
- package/bin/loanRetailAudit/events/AuditTrailRecordedV1.d.ts +1 -0
- package/bin/loanRetailAudit/events/AuditTrailRecordedV1.js +5 -1
- package/bin/loanRetailAudit/index.d.ts +2 -0
- package/bin/loanRetailAudit/index.js +3 -0
- package/bin/loanRetailAudit/validators/IsIsoDateTime.d.ts +13 -0
- package/bin/loanRetailAudit/validators/IsIsoDateTime.js +29 -0
- package/bin/loanScoring/dtos/ScoringOffer.d.ts +8 -6
- package/bin/loanScoring/dtos/requests/EvaluateSciRequest.d.ts +14 -3
- package/bin/loanScoring/dtos/requests/EvaluateSciRequest.js +15 -0
- package/package.json +1 -1
- package/src/collection/constants/CollectionResultLimits.ts +18 -0
- package/src/collection/dtos/ApplyCollectionResultRequest.ts +15 -8
- package/src/collection/dtos/ResolvePendingChargesRequest.ts +7 -4
- package/src/collection/index.ts +4 -0
- package/src/collection/validators/IsCentPrecision.ts +33 -0
- package/src/emailVerification/dtos/EmailSetTrustedRequest.ts +6 -0
- package/src/loanCollectorAssignment/constants/CollectorAssignmentLimits.ts +16 -0
- package/src/loanCollectorAssignment/dtos/requests/AutoAssignRequest.ts +13 -1
- package/src/loanCollectorAssignment/dtos/requests/ListCollectorAssignmentsRequest.ts +52 -0
- package/src/loanCollectorAssignment/dtos/requests/ReassignRequest.ts +8 -1
- package/src/loanCollectorAssignment/dtos/requests/RedistributeRequest.ts +8 -1
- package/src/loanCollectorAssignment/dtos/responses/ListCollectorAssignmentsResponse.ts +10 -0
- package/src/loanCollectorAssignment/index.ts +5 -0
- package/src/loanConfig/constants/ParameterRequestLimits.ts +11 -0
- package/src/loanConfig/dtos/requests/BulkGetParametersRequest.ts +4 -2
- package/src/loanConfig/dtos/requests/BulkUpdateParametersRequest.ts +26 -6
- package/src/loanConfig/dtos/requests/UpdateParameterRequest.ts +15 -7
- package/src/loanConfig/index.ts +1 -0
- package/src/loanCredit/constants/LoanInputLimits.ts +29 -0
- package/src/loanCredit/dtos/LoanBeneficiary.ts +11 -1
- package/src/loanCredit/dtos/LoanContractDetails.ts +26 -3
- package/src/loanCredit/dtos/LoanDeviceNotifyItem.ts +17 -3
- package/src/loanCredit/dtos/RestructureTerms.ts +4 -2
- package/src/loanCredit/dtos/SignatureContext.ts +5 -1
- package/src/loanCredit/dtos/requests/ActivationCheckRequest.ts +12 -2
- package/src/loanCredit/dtos/requests/BackofficeApproveRestructureRequest.ts +3 -1
- package/src/loanCredit/dtos/requests/BackofficeProposeRestructureRequest.ts +3 -1
- package/src/loanCredit/dtos/requests/BackofficeRejectRestructureRequest.ts +3 -1
- package/src/loanCredit/dtos/requests/BackofficeWriteOffCreditRequest.ts +3 -1
- package/src/loanCredit/dtos/requests/CreateCustomerPaymentRequest.ts +10 -1
- package/src/loanCredit/dtos/requests/CreateSellerPaymentRequest.ts +10 -1
- package/src/loanCredit/dtos/requests/OriginateLoanCreditRequest.ts +10 -1
- package/src/loanCredit/dtos/requests/SegmentFactsBatchRequest.ts +4 -2
- package/src/loanCredit/dtos/requests/SignLoanCreditRequest.ts +6 -1
- package/src/loanCredit/dtos/requests/UpsertLoanBorrowerRequest.ts +4 -1
- package/src/loanCredit/index.ts +2 -0
- package/src/loanCredit/validators/IsContractBirthDate.ts +41 -0
- package/src/loanOfferings/constants/offeringsInputLimits.ts +47 -0
- package/src/loanOfferings/dtos/requests/ChangeCreditPlanStatusRequest.ts +9 -1
- package/src/loanOfferings/dtos/requests/ChangePromotionStatusRequest.ts +3 -1
- package/src/loanOfferings/dtos/requests/ComputeAmortizationScheduleRequest.ts +7 -2
- package/src/loanOfferings/dtos/requests/ConsumePromotionRequest.ts +5 -1
- package/src/loanOfferings/dtos/requests/CreateCreditPlanRequest.ts +24 -2
- package/src/loanOfferings/dtos/requests/CreateFinancierRequest.ts +25 -0
- package/src/loanOfferings/dtos/requests/CreatePromotionRequest.ts +17 -2
- package/src/loanOfferings/dtos/requests/CreateSegmentRequest.ts +4 -1
- package/src/loanOfferings/dtos/requests/CreateStorePolicyRequest.ts +6 -1
- package/src/loanOfferings/dtos/requests/ReleasePromotionRequest.ts +16 -0
- package/src/loanOfferings/dtos/requests/ReservePromotionBonusRequest.ts +5 -1
- package/src/loanOfferings/dtos/requests/SettlePromotionBonusRequest.ts +5 -1
- package/src/loanOfferings/dtos/requests/SimulateCreditPlanRequest.ts +5 -1
- package/src/loanOfferings/dtos/requests/UpdateCohortRequest.ts +6 -3
- package/src/loanOfferings/dtos/requests/UpdateCreditPlanRequest.ts +43 -12
- package/src/loanOfferings/dtos/requests/UpdateFinancierRequest.ts +26 -2
- package/src/loanOfferings/dtos/requests/UpdatePromotionRequest.ts +34 -6
- package/src/loanOfferings/dtos/requests/UpdateSegmentRequest.ts +14 -7
- package/src/loanOfferings/dtos/requests/UpdateStorePolicyRequest.ts +28 -13
- package/src/loanOfferings/dtos/responses/ReleasePromotionResponse.ts +11 -0
- package/src/loanOfferings/index.ts +7 -0
- package/src/loanOfferings/validators/IsOptionalNonNull.ts +12 -0
- package/src/loanOfferings/validators/MaxJsonBytes.ts +28 -0
- package/src/loanRetailAudit/constants/auditInputLimits.ts +20 -0
- package/src/loanRetailAudit/dtos/AuditTrailChange.ts +5 -1
- package/src/loanRetailAudit/dtos/AuditTrailContextEntry.ts +4 -1
- package/src/loanRetailAudit/dtos/requests/CreatePiiAccessLogRequest.ts +20 -3
- package/src/loanRetailAudit/events/AuditTrailRecordedV1.ts +7 -2
- package/src/loanRetailAudit/index.ts +4 -0
- package/src/loanRetailAudit/validators/IsIsoDateTime.ts +33 -0
- package/src/loanScoring/dtos/ScoringOffer.ts +8 -6
- package/src/loanScoring/dtos/requests/EvaluateSciRequest.ts +26 -4
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.ComputeAmortizationScheduleRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
/** Body de `POST /private/amortization/schedule` (loan-offerings-business). Tabla francesa semanal sin fechas. */
|
|
16
17
|
class ComputeAmortizationScheduleRequest {
|
|
17
18
|
}
|
|
@@ -26,13 +27,14 @@ __decorate([
|
|
|
26
27
|
(0, class_transformer_1.Expose)(),
|
|
27
28
|
(0, class_validator_1.IsNumber)(),
|
|
28
29
|
(0, class_validator_1.Min)(0),
|
|
30
|
+
(0, class_validator_1.Max)(offeringsInputLimits_1.AMORTIZATION_TNA_ANNUAL_TECHNICAL_MAX),
|
|
29
31
|
__metadata("design:type", Number)
|
|
30
32
|
], ComputeAmortizationScheduleRequest.prototype, "tnaAnnual", void 0);
|
|
31
33
|
__decorate([
|
|
32
34
|
(0, class_transformer_1.Expose)(),
|
|
33
35
|
(0, class_validator_1.IsInt)(),
|
|
34
36
|
(0, class_validator_1.Min)(1),
|
|
35
|
-
(0, class_validator_1.Max)(
|
|
37
|
+
(0, class_validator_1.Max)(offeringsInputLimits_1.CREDIT_PLAN_MAX_TERM_WEEKS),
|
|
36
38
|
__metadata("design:type", Number)
|
|
37
39
|
], ComputeAmortizationScheduleRequest.prototype, "termWeeks", void 0);
|
|
38
40
|
__decorate([
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.ConsumePromotionRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
/**
|
|
16
17
|
* Body de POST /private/promotions/:promotionId/consume — el crédito que acaba de activarse bajo
|
|
17
18
|
* esta promoción. `creditId` es la llave de idempotencia: reenviarlo NO vuelve a contar.
|
|
@@ -22,5 +23,7 @@ exports.ConsumePromotionRequest = ConsumePromotionRequest;
|
|
|
22
23
|
__decorate([
|
|
23
24
|
(0, class_transformer_1.Expose)(),
|
|
24
25
|
(0, class_validator_1.IsString)(),
|
|
26
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
27
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.PROMOTION_CREDIT_ID_MAX_LENGTH),
|
|
25
28
|
__metadata("design:type", String)
|
|
26
29
|
], ConsumePromotionRequest.prototype, "creditId", void 0);
|
|
@@ -16,6 +16,7 @@ export declare class CreateCreditPlanRequest {
|
|
|
16
16
|
eligibleTiers?: ProductTierEnum[] | null;
|
|
17
17
|
minDownPaymentPct: number;
|
|
18
18
|
maxDownPaymentPct?: number | null;
|
|
19
|
+
/** Plazos ofrecidos, en semanas: de 1 a 104 cada uno. */
|
|
19
20
|
termWeeksOptions: number[];
|
|
20
21
|
maxFinancedAmountCents: number;
|
|
21
22
|
tnaAnnual: number;
|
|
@@ -23,7 +24,9 @@ export declare class CreateCreditPlanRequest {
|
|
|
23
24
|
paymentShift?: boolean;
|
|
24
25
|
minSciScore?: number | null;
|
|
25
26
|
maxSciScore?: number | null;
|
|
27
|
+
/** Inicio de vigencia en ISO-8601; ausente o `null` = sin inicio. */
|
|
26
28
|
validFrom?: string | null;
|
|
29
|
+
/** Fin de vigencia en ISO-8601; ausente o `null` = sin fin. */
|
|
27
30
|
validUntil?: string | null;
|
|
28
31
|
/** Mínimo del abono a capital; ausente = sin cambios (en el alta: `ANY`). */
|
|
29
32
|
prepaymentMinimum?: PrepaymentMinimum;
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.CreateCreditPlanRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
const CreditPlanLevelEnum_1 = require("../../enums/CreditPlanLevelEnum");
|
|
16
17
|
const ProductTierEnum_1 = require("../../enums/ProductTierEnum");
|
|
17
18
|
const SaleTypeEnum_1 = require("../../enums/SaleTypeEnum");
|
|
@@ -27,16 +28,22 @@ exports.CreateCreditPlanRequest = CreateCreditPlanRequest;
|
|
|
27
28
|
__decorate([
|
|
28
29
|
(0, class_transformer_1.Expose)(),
|
|
29
30
|
(0, class_validator_1.IsString)(),
|
|
31
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
32
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_CODE_MAX_LENGTH),
|
|
30
33
|
__metadata("design:type", String)
|
|
31
34
|
], CreateCreditPlanRequest.prototype, "code", void 0);
|
|
32
35
|
__decorate([
|
|
33
36
|
(0, class_transformer_1.Expose)(),
|
|
34
37
|
(0, class_validator_1.IsString)(),
|
|
38
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
39
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_NAME_MAX_LENGTH),
|
|
35
40
|
__metadata("design:type", String)
|
|
36
41
|
], CreateCreditPlanRequest.prototype, "name", void 0);
|
|
37
42
|
__decorate([
|
|
38
43
|
(0, class_transformer_1.Expose)(),
|
|
39
44
|
(0, class_validator_1.IsString)(),
|
|
45
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
46
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_DESCRIPTION_MAX_LENGTH),
|
|
40
47
|
__metadata("design:type", String)
|
|
41
48
|
], CreateCreditPlanRequest.prototype, "description", void 0);
|
|
42
49
|
__decorate([
|
|
@@ -77,8 +84,10 @@ __decorate([
|
|
|
77
84
|
(0, class_transformer_1.Expose)(),
|
|
78
85
|
(0, class_validator_1.IsArray)(),
|
|
79
86
|
(0, class_validator_1.ArrayNotEmpty)(),
|
|
87
|
+
(0, class_validator_1.ArrayMaxSize)(offeringsInputLimits_1.CREDIT_PLAN_TERM_OPTIONS_MAX_ITEMS),
|
|
80
88
|
(0, class_validator_1.IsInt)({ each: true }),
|
|
81
89
|
(0, class_validator_1.Min)(1, { each: true }),
|
|
90
|
+
(0, class_validator_1.Max)(offeringsInputLimits_1.CREDIT_PLAN_MAX_TERM_WEEKS, { each: true }),
|
|
82
91
|
__metadata("design:type", Array)
|
|
83
92
|
], CreateCreditPlanRequest.prototype, "termWeeksOptions", void 0);
|
|
84
93
|
__decorate([
|
|
@@ -127,13 +136,13 @@ __decorate([
|
|
|
127
136
|
__decorate([
|
|
128
137
|
(0, class_transformer_1.Expose)(),
|
|
129
138
|
(0, class_validator_1.IsOptional)(),
|
|
130
|
-
(0, class_validator_1.
|
|
139
|
+
(0, class_validator_1.IsISO8601)(),
|
|
131
140
|
__metadata("design:type", String)
|
|
132
141
|
], CreateCreditPlanRequest.prototype, "validFrom", void 0);
|
|
133
142
|
__decorate([
|
|
134
143
|
(0, class_transformer_1.Expose)(),
|
|
135
144
|
(0, class_validator_1.IsOptional)(),
|
|
136
|
-
(0, class_validator_1.
|
|
145
|
+
(0, class_validator_1.IsISO8601)(),
|
|
137
146
|
__metadata("design:type", String)
|
|
138
147
|
], CreateCreditPlanRequest.prototype, "validUntil", void 0);
|
|
139
148
|
__decorate([
|
|
@@ -11,7 +11,12 @@ export declare class CreateFinancierRequest {
|
|
|
11
11
|
type: FinancierTypeEnum;
|
|
12
12
|
displayOrder?: number;
|
|
13
13
|
label: string;
|
|
14
|
+
/** URL https a la que se redirige al cliente; `null` = sin redirección. */
|
|
14
15
|
externalRedirectUrl?: string | null;
|
|
15
16
|
eligibleTiers?: ProductTierEnum[] | null;
|
|
17
|
+
/**
|
|
18
|
+
* @deprecated Ningún consumidor lo lee (TD-019 de loan-offerings) y se va a eliminar (decisión
|
|
19
|
+
* D-9). Mientras tanto, a lo más 4 KB serializado.
|
|
20
|
+
*/
|
|
16
21
|
config?: Record<string, unknown> | null;
|
|
17
22
|
}
|
|
@@ -12,6 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.CreateFinancierRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
16
|
+
const MaxJsonBytes_1 = require("../../validators/MaxJsonBytes");
|
|
15
17
|
const FinancierTypeEnum_1 = require("../../enums/FinancierTypeEnum");
|
|
16
18
|
const ProductTierEnum_1 = require("../../enums/ProductTierEnum");
|
|
17
19
|
/**
|
|
@@ -25,11 +27,15 @@ exports.CreateFinancierRequest = CreateFinancierRequest;
|
|
|
25
27
|
__decorate([
|
|
26
28
|
(0, class_transformer_1.Expose)(),
|
|
27
29
|
(0, class_validator_1.IsString)(),
|
|
30
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
31
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_CODE_MAX_LENGTH),
|
|
28
32
|
__metadata("design:type", String)
|
|
29
33
|
], CreateFinancierRequest.prototype, "code", void 0);
|
|
30
34
|
__decorate([
|
|
31
35
|
(0, class_transformer_1.Expose)(),
|
|
32
36
|
(0, class_validator_1.IsString)(),
|
|
37
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
38
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_NAME_MAX_LENGTH),
|
|
33
39
|
__metadata("design:type", String)
|
|
34
40
|
], CreateFinancierRequest.prototype, "name", void 0);
|
|
35
41
|
__decorate([
|
|
@@ -47,12 +53,16 @@ __decorate([
|
|
|
47
53
|
__decorate([
|
|
48
54
|
(0, class_transformer_1.Expose)(),
|
|
49
55
|
(0, class_validator_1.IsString)(),
|
|
56
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
57
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_LABEL_MAX_LENGTH),
|
|
50
58
|
__metadata("design:type", String)
|
|
51
59
|
], CreateFinancierRequest.prototype, "label", void 0);
|
|
52
60
|
__decorate([
|
|
53
61
|
(0, class_transformer_1.Expose)(),
|
|
54
62
|
(0, class_validator_1.IsOptional)(),
|
|
55
63
|
(0, class_validator_1.IsString)(),
|
|
64
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.FINANCIER_REDIRECT_URL_MAX_LENGTH),
|
|
65
|
+
(0, class_validator_1.IsUrl)({ protocols: ['https'], require_protocol: true }),
|
|
56
66
|
__metadata("design:type", String)
|
|
57
67
|
], CreateFinancierRequest.prototype, "externalRedirectUrl", void 0);
|
|
58
68
|
__decorate([
|
|
@@ -66,5 +76,6 @@ __decorate([
|
|
|
66
76
|
(0, class_transformer_1.Expose)(),
|
|
67
77
|
(0, class_validator_1.IsOptional)(),
|
|
68
78
|
(0, class_validator_1.IsObject)(),
|
|
79
|
+
(0, MaxJsonBytes_1.MaxJsonBytes)(offeringsInputLimits_1.FINANCIER_CONFIG_MAX_BYTES),
|
|
69
80
|
__metadata("design:type", Object)
|
|
70
81
|
], CreateFinancierRequest.prototype, "config", void 0);
|
|
@@ -14,7 +14,7 @@ export declare class CreatePromotionRequest {
|
|
|
14
14
|
/** Segmento de clientes al que apunta la promoción. */
|
|
15
15
|
segmentId: string;
|
|
16
16
|
targetLevels: CreditPlanLevelEnum[];
|
|
17
|
-
/** SKUs alcanzados; ausente o `null` = todos los productos. */
|
|
17
|
+
/** SKUs alcanzados; ausente o `null` = todos los productos. Hasta 2 000. */
|
|
18
18
|
productSkus?: string[] | null;
|
|
19
19
|
/** Tipos de producto alcanzados; ausente o `null` = todos los tipos. */
|
|
20
20
|
productCategories?: ProductCategoryEnum[] | null;
|
|
@@ -22,7 +22,7 @@ export declare class CreatePromotionRequest {
|
|
|
22
22
|
tiers?: ProductTierEnum[] | null;
|
|
23
23
|
/** Cadenas alcanzadas; ausente, `null` o vacío = todas las cadenas. */
|
|
24
24
|
retailerIds?: string[] | null;
|
|
25
|
-
/** Tiendas alcanzadas. `null` o ausente = todas. */
|
|
25
|
+
/** Tiendas alcanzadas. `null` o ausente = todas. Hasta 1 000. */
|
|
26
26
|
storeIds?: string[] | null;
|
|
27
27
|
validFrom?: string | null;
|
|
28
28
|
validUntil?: string | null;
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.CreatePromotionRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
const promotionRetailerScope_1 = require("../../constants/promotionRetailerScope");
|
|
16
17
|
const CreditPlanLevelEnum_1 = require("../../enums/CreditPlanLevelEnum");
|
|
17
18
|
const ProductCategoryEnum_1 = require("../../../retailCatalog/enums/ProductCategoryEnum");
|
|
@@ -28,11 +29,15 @@ exports.CreatePromotionRequest = CreatePromotionRequest;
|
|
|
28
29
|
__decorate([
|
|
29
30
|
(0, class_transformer_1.Expose)(),
|
|
30
31
|
(0, class_validator_1.IsString)(),
|
|
32
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
33
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_NAME_MAX_LENGTH),
|
|
31
34
|
__metadata("design:type", String)
|
|
32
35
|
], CreatePromotionRequest.prototype, "name", void 0);
|
|
33
36
|
__decorate([
|
|
34
37
|
(0, class_transformer_1.Expose)(),
|
|
35
38
|
(0, class_validator_1.IsString)(),
|
|
39
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
40
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_DESCRIPTION_MAX_LENGTH),
|
|
36
41
|
__metadata("design:type", String)
|
|
37
42
|
], CreatePromotionRequest.prototype, "description", void 0);
|
|
38
43
|
__decorate([
|
|
@@ -57,7 +62,9 @@ __decorate([
|
|
|
57
62
|
(0, class_transformer_1.Expose)(),
|
|
58
63
|
(0, class_validator_1.IsOptional)(),
|
|
59
64
|
(0, class_validator_1.IsArray)(),
|
|
65
|
+
(0, class_validator_1.ArrayMaxSize)(offeringsInputLimits_1.PROMOTION_PRODUCT_SKUS_MAX_ITEMS),
|
|
60
66
|
(0, class_validator_1.IsString)({ each: true }),
|
|
67
|
+
(0, class_validator_1.IsNotEmpty)({ each: true }),
|
|
61
68
|
__metadata("design:type", Array)
|
|
62
69
|
], CreatePromotionRequest.prototype, "productSkus", void 0);
|
|
63
70
|
__decorate([
|
|
@@ -87,7 +94,9 @@ __decorate([
|
|
|
87
94
|
(0, class_transformer_1.Expose)(),
|
|
88
95
|
(0, class_validator_1.IsOptional)(),
|
|
89
96
|
(0, class_validator_1.IsArray)(),
|
|
97
|
+
(0, class_validator_1.ArrayMaxSize)(offeringsInputLimits_1.SCOPE_STORE_IDS_MAX_ITEMS),
|
|
90
98
|
(0, class_validator_1.IsString)({ each: true }),
|
|
99
|
+
(0, class_validator_1.IsNotEmpty)({ each: true }),
|
|
91
100
|
__metadata("design:type", Array)
|
|
92
101
|
], CreatePromotionRequest.prototype, "storeIds", void 0);
|
|
93
102
|
__decorate([
|
|
@@ -19,7 +19,7 @@ export declare class CreateSegmentRequest {
|
|
|
19
19
|
filterIds?: string[];
|
|
20
20
|
/**
|
|
21
21
|
* Clientes agregados a mano por `retailCustomerId`. Ganan siempre, cumplan o no un cohort.
|
|
22
|
-
* Un segmento puede nacer SOLO con esta lista, sin ningún cohort.
|
|
22
|
+
* Un segmento puede nacer SOLO con esta lista, sin ningún cohort. Hasta 5 000, sin ids vacíos.
|
|
23
23
|
*/
|
|
24
24
|
memberIds?: string[];
|
|
25
25
|
}
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.CreateSegmentRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
const SegmentColorSlotEnum_1 = require("../../enums/SegmentColorSlotEnum");
|
|
16
17
|
/**
|
|
17
18
|
* Body de POST /segments — alta de un segmento de clientes.
|
|
@@ -61,6 +62,8 @@ __decorate([
|
|
|
61
62
|
(0, class_transformer_1.Expose)(),
|
|
62
63
|
(0, class_validator_1.IsOptional)(),
|
|
63
64
|
(0, class_validator_1.IsArray)(),
|
|
65
|
+
(0, class_validator_1.ArrayMaxSize)(offeringsInputLimits_1.SEGMENT_MEMBER_IDS_MAX_ITEMS),
|
|
64
66
|
(0, class_validator_1.IsString)({ each: true }),
|
|
67
|
+
(0, class_validator_1.IsNotEmpty)({ each: true }),
|
|
65
68
|
__metadata("design:type", Array)
|
|
66
69
|
], CreateSegmentRequest.prototype, "memberIds", void 0);
|
|
@@ -28,7 +28,7 @@ export declare class CreateStorePolicyRequest {
|
|
|
28
28
|
suspended?: boolean;
|
|
29
29
|
/** Compuerta: SKUs habilitados. Ausente = sin restricción. */
|
|
30
30
|
allowedSkus?: string[];
|
|
31
|
-
/** Alcance: tiendas alcanzadas. Ausente = toda la red. */
|
|
31
|
+
/** Alcance: tiendas alcanzadas. Ausente = toda la red. Hasta 1 000. */
|
|
32
32
|
storeIds?: string[];
|
|
33
33
|
/** Alcance: niveles alcanzados. Ausente = todos los niveles. */
|
|
34
34
|
targetLevels?: CreditPlanLevelEnum[];
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.CreateStorePolicyRequest = exports.StorePolicyEasingDto = exports.StorePolicyHardeningDto = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
const CreditPlanLevelEnum_1 = require("../../enums/CreditPlanLevelEnum");
|
|
16
17
|
/** Grupo de palancas que ENDURECEN las condiciones del plan. */
|
|
17
18
|
class StorePolicyHardeningDto {
|
|
@@ -129,7 +130,9 @@ __decorate([
|
|
|
129
130
|
(0, class_validator_1.IsOptional)(),
|
|
130
131
|
(0, class_validator_1.IsArray)(),
|
|
131
132
|
(0, class_validator_1.ArrayNotEmpty)(),
|
|
133
|
+
(0, class_validator_1.ArrayMaxSize)(offeringsInputLimits_1.SCOPE_STORE_IDS_MAX_ITEMS),
|
|
132
134
|
(0, class_validator_1.IsString)({ each: true }),
|
|
135
|
+
(0, class_validator_1.IsNotEmpty)({ each: true }),
|
|
133
136
|
__metadata("design:type", Array)
|
|
134
137
|
], CreateStorePolicyRequest.prototype, "storeIds", void 0);
|
|
135
138
|
__decorate([
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Body de POST /private/promotions/:promotionId/release — el crédito con promoción que se canceló.
|
|
3
|
+
* Baja `creditsGenerated` una sola vez por crédito: `creditId` es la llave de idempotencia, así que
|
|
4
|
+
* reenviarlo no vuelve a restar. El bono PCF no vuelve al presupuesto: es irreversible (L-052, D-2).
|
|
5
|
+
*/
|
|
6
|
+
export declare class ReleasePromotionRequest {
|
|
7
|
+
creditId: string;
|
|
8
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ReleasePromotionRequest = void 0;
|
|
13
|
+
const class_transformer_1 = require("class-transformer");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
16
|
+
/**
|
|
17
|
+
* Body de POST /private/promotions/:promotionId/release — el crédito con promoción que se canceló.
|
|
18
|
+
* Baja `creditsGenerated` una sola vez por crédito: `creditId` es la llave de idempotencia, así que
|
|
19
|
+
* reenviarlo no vuelve a restar. El bono PCF no vuelve al presupuesto: es irreversible (L-052, D-2).
|
|
20
|
+
*/
|
|
21
|
+
class ReleasePromotionRequest {
|
|
22
|
+
}
|
|
23
|
+
exports.ReleasePromotionRequest = ReleasePromotionRequest;
|
|
24
|
+
__decorate([
|
|
25
|
+
(0, class_transformer_1.Expose)(),
|
|
26
|
+
(0, class_validator_1.IsString)(),
|
|
27
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
28
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.PROMOTION_CREDIT_ID_MAX_LENGTH),
|
|
29
|
+
__metadata("design:type", String)
|
|
30
|
+
], ReleasePromotionRequest.prototype, "creditId", void 0);
|
|
@@ -3,5 +3,6 @@
|
|
|
3
3
|
* cobrar el bono. `creditId` es el candado: reenviarlo devuelve `reserved: false`, no un segundo pago.
|
|
4
4
|
*/
|
|
5
5
|
export declare class ReservePromotionBonusRequest {
|
|
6
|
+
/** Llave de idempotencia: vacía colapsaría todos los créditos en una sola fila (L-104). */
|
|
6
7
|
creditId: string;
|
|
7
8
|
}
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.ReservePromotionBonusRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
/**
|
|
16
17
|
* Body de POST /private/promotions/:promotionId/bonus-payment — el crédito recién activado que va a
|
|
17
18
|
* cobrar el bono. `creditId` es el candado: reenviarlo devuelve `reserved: false`, no un segundo pago.
|
|
@@ -22,5 +23,7 @@ exports.ReservePromotionBonusRequest = ReservePromotionBonusRequest;
|
|
|
22
23
|
__decorate([
|
|
23
24
|
(0, class_transformer_1.Expose)(),
|
|
24
25
|
(0, class_validator_1.IsString)(),
|
|
26
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
27
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.PROMOTION_CREDIT_ID_MAX_LENGTH),
|
|
25
28
|
__metadata("design:type", String)
|
|
26
29
|
], ReservePromotionBonusRequest.prototype, "creditId", void 0);
|
|
@@ -4,6 +4,7 @@ import { PromotionBonusStatusEnum } from '../../enums/PromotionBonusStatusEnum';
|
|
|
4
4
|
* contestó el processor. `RESERVED` no se acepta: es el estado del que se sale, no al que se llega.
|
|
5
5
|
*/
|
|
6
6
|
export declare class SettlePromotionBonusRequest {
|
|
7
|
+
/** Llave de idempotencia: vacía colapsaría todos los créditos en una sola fila (L-104). */
|
|
7
8
|
bonusId: string;
|
|
8
9
|
status: PromotionBonusStatusEnum;
|
|
9
10
|
/** Folio del processor. Ausente cuando aprobó sin darlo, o cuando el pago falló. */
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.SettlePromotionBonusRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
const PromotionBonusStatusEnum_1 = require("../../enums/PromotionBonusStatusEnum");
|
|
16
17
|
/**
|
|
17
18
|
* Body de PUT /private/promotions/:promotionId/bonus-payment/result — cierra el asiento con lo que
|
|
@@ -23,6 +24,8 @@ exports.SettlePromotionBonusRequest = SettlePromotionBonusRequest;
|
|
|
23
24
|
__decorate([
|
|
24
25
|
(0, class_transformer_1.Expose)(),
|
|
25
26
|
(0, class_validator_1.IsString)(),
|
|
27
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
28
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.PROMOTION_CREDIT_ID_MAX_LENGTH),
|
|
26
29
|
__metadata("design:type", String)
|
|
27
30
|
], SettlePromotionBonusRequest.prototype, "bonusId", void 0);
|
|
28
31
|
__decorate([
|
|
@@ -27,6 +27,7 @@ export declare class SimulateCreditPlanRequest {
|
|
|
27
27
|
/**
|
|
28
28
|
* Segmentos del cliente, los que devolvió `POST /private/segments/resolve`. Un arreglo vacío
|
|
29
29
|
* declara que el cliente no está en ninguno; ausente declara que el caller no lo consultó.
|
|
30
|
+
* Hasta 50, sin ids vacíos.
|
|
30
31
|
*/
|
|
31
32
|
customerSegmentIds?: string[];
|
|
32
33
|
}
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.SimulateCreditPlanRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
const ProductCategoryEnum_1 = require("../../../retailCatalog/enums/ProductCategoryEnum");
|
|
16
17
|
const ProductTierEnum_1 = require("../../../retailCatalog/enums/ProductTierEnum");
|
|
17
18
|
/**
|
|
@@ -88,6 +89,8 @@ __decorate([
|
|
|
88
89
|
(0, class_transformer_1.Expose)(),
|
|
89
90
|
(0, class_validator_1.IsOptional)(),
|
|
90
91
|
(0, class_validator_1.IsArray)(),
|
|
92
|
+
(0, class_validator_1.ArrayMaxSize)(offeringsInputLimits_1.CUSTOMER_SEGMENT_IDS_MAX_ITEMS),
|
|
91
93
|
(0, class_validator_1.IsString)({ each: true }),
|
|
94
|
+
(0, class_validator_1.IsNotEmpty)({ each: true }),
|
|
92
95
|
__metadata("design:type", Array)
|
|
93
96
|
], SimulateCreditPlanRequest.prototype, "customerSegmentIds", void 0);
|
|
@@ -2,10 +2,12 @@ import { CohortCondition } from './CohortCondition';
|
|
|
2
2
|
/**
|
|
3
3
|
* Body de PUT /cohorts/:cohortId — edición parcial; ausente deja el campo como está. Sube
|
|
4
4
|
* `version`. El cambio de estado va por su endpoint dedicado.
|
|
5
|
+
*
|
|
6
|
+
* `null` solo se acepta en `description`, donde la borra; en `name` y `conditions` da 400.
|
|
5
7
|
*/
|
|
6
8
|
export declare class UpdateCohortRequest {
|
|
7
9
|
name?: string;
|
|
8
|
-
description?: string;
|
|
10
|
+
description?: string | null;
|
|
9
11
|
/** Reemplaza todas las condiciones. */
|
|
10
12
|
conditions?: CohortCondition[];
|
|
11
13
|
reason?: string;
|
|
@@ -12,17 +12,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.UpdateCohortRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const IsOptionalNonNull_1 = require("../../validators/IsOptionalNonNull");
|
|
15
16
|
const CohortCondition_1 = require("./CohortCondition");
|
|
16
17
|
/**
|
|
17
18
|
* Body de PUT /cohorts/:cohortId — edición parcial; ausente deja el campo como está. Sube
|
|
18
19
|
* `version`. El cambio de estado va por su endpoint dedicado.
|
|
20
|
+
*
|
|
21
|
+
* `null` solo se acepta en `description`, donde la borra; en `name` y `conditions` da 400.
|
|
19
22
|
*/
|
|
20
23
|
class UpdateCohortRequest {
|
|
21
24
|
}
|
|
22
25
|
exports.UpdateCohortRequest = UpdateCohortRequest;
|
|
23
26
|
__decorate([
|
|
24
27
|
(0, class_transformer_1.Expose)(),
|
|
25
|
-
(0,
|
|
28
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
26
29
|
(0, class_validator_1.IsString)(),
|
|
27
30
|
(0, class_validator_1.MaxLength)(120),
|
|
28
31
|
__metadata("design:type", String)
|
|
@@ -36,7 +39,7 @@ __decorate([
|
|
|
36
39
|
], UpdateCohortRequest.prototype, "description", void 0);
|
|
37
40
|
__decorate([
|
|
38
41
|
(0, class_transformer_1.Expose)(),
|
|
39
|
-
(0,
|
|
42
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
40
43
|
(0, class_validator_1.IsArray)(),
|
|
41
44
|
(0, class_validator_1.ArrayMinSize)(1),
|
|
42
45
|
(0, class_validator_1.ArrayMaxSize)(10),
|
|
@@ -6,6 +6,9 @@ import { PrepaymentMinimum } from '../PrepaymentMinimum';
|
|
|
6
6
|
* En F1 el PUT puede editar `min/maxSciScore` por-plan (DEC-004); el guard atómico anti-huecos
|
|
7
7
|
* entre planes (21-100) es F2/F3. El cambio de `status` va por su endpoint dedicado.
|
|
8
8
|
* `code` y `level` no se editan aquí (identidad/segmentación del plan).
|
|
9
|
+
*
|
|
10
|
+
* Ausente deja el campo como está. `null` solo se acepta en los campos que lo declaran
|
|
11
|
+
* (`eligibleTiers`, `maxDownPaymentPct`, `min/maxSciScore`, `validFrom/Until`); en el resto da 400.
|
|
9
12
|
*/
|
|
10
13
|
export declare class UpdateCreditPlanRequest {
|
|
11
14
|
name?: string;
|
|
@@ -14,6 +17,7 @@ export declare class UpdateCreditPlanRequest {
|
|
|
14
17
|
eligibleTiers?: ProductTierEnum[] | null;
|
|
15
18
|
minDownPaymentPct?: number;
|
|
16
19
|
maxDownPaymentPct?: number | null;
|
|
20
|
+
/** Plazos ofrecidos, en semanas: de 1 a 104 cada uno. */
|
|
17
21
|
termWeeksOptions?: number[];
|
|
18
22
|
maxFinancedAmountCents?: number;
|
|
19
23
|
tnaAnnual?: number;
|
|
@@ -21,8 +25,12 @@ export declare class UpdateCreditPlanRequest {
|
|
|
21
25
|
paymentShift?: boolean;
|
|
22
26
|
minSciScore?: number | null;
|
|
23
27
|
maxSciScore?: number | null;
|
|
28
|
+
/** Inicio de vigencia en ISO-8601; `null` la quita. */
|
|
24
29
|
validFrom?: string | null;
|
|
30
|
+
/** Fin de vigencia en ISO-8601; `null` la quita. */
|
|
25
31
|
validUntil?: string | null;
|
|
26
32
|
/** Mínimo del abono a capital; ausente = sin cambios (en el alta: `ANY`). */
|
|
27
33
|
prepaymentMinimum?: PrepaymentMinimum;
|
|
34
|
+
/** Motivo del cambio; queda en la bitácora del plan. */
|
|
35
|
+
reason?: string;
|
|
28
36
|
}
|
|
@@ -12,33 +12,42 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.UpdateCreditPlanRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const offeringsInputLimits_1 = require("../../constants/offeringsInputLimits");
|
|
15
16
|
const ProductTierEnum_1 = require("../../enums/ProductTierEnum");
|
|
16
17
|
const SaleTypeEnum_1 = require("../../enums/SaleTypeEnum");
|
|
18
|
+
const IsOptionalNonNull_1 = require("../../validators/IsOptionalNonNull");
|
|
17
19
|
const PrepaymentMinimum_1 = require("../PrepaymentMinimum");
|
|
18
20
|
/**
|
|
19
21
|
* Body de PUT /credit-plans/:planId — edición parcial de parámetros del plan (todos opcionales).
|
|
20
22
|
* En F1 el PUT puede editar `min/maxSciScore` por-plan (DEC-004); el guard atómico anti-huecos
|
|
21
23
|
* entre planes (21-100) es F2/F3. El cambio de `status` va por su endpoint dedicado.
|
|
22
24
|
* `code` y `level` no se editan aquí (identidad/segmentación del plan).
|
|
25
|
+
*
|
|
26
|
+
* Ausente deja el campo como está. `null` solo se acepta en los campos que lo declaran
|
|
27
|
+
* (`eligibleTiers`, `maxDownPaymentPct`, `min/maxSciScore`, `validFrom/Until`); en el resto da 400.
|
|
23
28
|
*/
|
|
24
29
|
class UpdateCreditPlanRequest {
|
|
25
30
|
}
|
|
26
31
|
exports.UpdateCreditPlanRequest = UpdateCreditPlanRequest;
|
|
27
32
|
__decorate([
|
|
28
33
|
(0, class_transformer_1.Expose)(),
|
|
29
|
-
(0,
|
|
34
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
30
35
|
(0, class_validator_1.IsString)(),
|
|
36
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
37
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_NAME_MAX_LENGTH),
|
|
31
38
|
__metadata("design:type", String)
|
|
32
39
|
], UpdateCreditPlanRequest.prototype, "name", void 0);
|
|
33
40
|
__decorate([
|
|
34
41
|
(0, class_transformer_1.Expose)(),
|
|
35
|
-
(0,
|
|
42
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
36
43
|
(0, class_validator_1.IsString)(),
|
|
44
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
45
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_DESCRIPTION_MAX_LENGTH),
|
|
37
46
|
__metadata("design:type", String)
|
|
38
47
|
], UpdateCreditPlanRequest.prototype, "description", void 0);
|
|
39
48
|
__decorate([
|
|
40
49
|
(0, class_transformer_1.Expose)(),
|
|
41
|
-
(0,
|
|
50
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
42
51
|
(0, class_validator_1.IsArray)(),
|
|
43
52
|
(0, class_validator_1.ArrayNotEmpty)(),
|
|
44
53
|
(0, class_validator_1.IsEnum)(SaleTypeEnum_1.SaleTypeEnum, { each: true }),
|
|
@@ -53,7 +62,7 @@ __decorate([
|
|
|
53
62
|
], UpdateCreditPlanRequest.prototype, "eligibleTiers", void 0);
|
|
54
63
|
__decorate([
|
|
55
64
|
(0, class_transformer_1.Expose)(),
|
|
56
|
-
(0,
|
|
65
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
57
66
|
(0, class_validator_1.IsNumber)(),
|
|
58
67
|
(0, class_validator_1.Min)(0),
|
|
59
68
|
(0, class_validator_1.Max)(1),
|
|
@@ -69,23 +78,25 @@ __decorate([
|
|
|
69
78
|
], UpdateCreditPlanRequest.prototype, "maxDownPaymentPct", void 0);
|
|
70
79
|
__decorate([
|
|
71
80
|
(0, class_transformer_1.Expose)(),
|
|
72
|
-
(0,
|
|
81
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
73
82
|
(0, class_validator_1.IsArray)(),
|
|
74
83
|
(0, class_validator_1.ArrayNotEmpty)(),
|
|
84
|
+
(0, class_validator_1.ArrayMaxSize)(offeringsInputLimits_1.CREDIT_PLAN_TERM_OPTIONS_MAX_ITEMS),
|
|
75
85
|
(0, class_validator_1.IsInt)({ each: true }),
|
|
76
86
|
(0, class_validator_1.Min)(1, { each: true }),
|
|
87
|
+
(0, class_validator_1.Max)(offeringsInputLimits_1.CREDIT_PLAN_MAX_TERM_WEEKS, { each: true }),
|
|
77
88
|
__metadata("design:type", Array)
|
|
78
89
|
], UpdateCreditPlanRequest.prototype, "termWeeksOptions", void 0);
|
|
79
90
|
__decorate([
|
|
80
91
|
(0, class_transformer_1.Expose)(),
|
|
81
|
-
(0,
|
|
92
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
82
93
|
(0, class_validator_1.IsInt)(),
|
|
83
94
|
(0, class_validator_1.Min)(0),
|
|
84
95
|
__metadata("design:type", Number)
|
|
85
96
|
], UpdateCreditPlanRequest.prototype, "maxFinancedAmountCents", void 0);
|
|
86
97
|
__decorate([
|
|
87
98
|
(0, class_transformer_1.Expose)(),
|
|
88
|
-
(0,
|
|
99
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
89
100
|
(0, class_validator_1.IsNumber)(),
|
|
90
101
|
(0, class_validator_1.Min)(2.0),
|
|
91
102
|
(0, class_validator_1.Max)(2.6),
|
|
@@ -93,7 +104,7 @@ __decorate([
|
|
|
93
104
|
], UpdateCreditPlanRequest.prototype, "tnaAnnual", void 0);
|
|
94
105
|
__decorate([
|
|
95
106
|
(0, class_transformer_1.Expose)(),
|
|
96
|
-
(0,
|
|
107
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
97
108
|
(0, class_validator_1.IsNumber)(),
|
|
98
109
|
(0, class_validator_1.Min)(0),
|
|
99
110
|
(0, class_validator_1.Max)(1),
|
|
@@ -101,7 +112,7 @@ __decorate([
|
|
|
101
112
|
], UpdateCreditPlanRequest.prototype, "openingCommissionPct", void 0);
|
|
102
113
|
__decorate([
|
|
103
114
|
(0, class_transformer_1.Expose)(),
|
|
104
|
-
(0,
|
|
115
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
105
116
|
(0, class_validator_1.IsBoolean)(),
|
|
106
117
|
__metadata("design:type", Boolean)
|
|
107
118
|
], UpdateCreditPlanRequest.prototype, "paymentShift", void 0);
|
|
@@ -124,19 +135,26 @@ __decorate([
|
|
|
124
135
|
__decorate([
|
|
125
136
|
(0, class_transformer_1.Expose)(),
|
|
126
137
|
(0, class_validator_1.IsOptional)(),
|
|
127
|
-
(0, class_validator_1.
|
|
138
|
+
(0, class_validator_1.IsISO8601)(),
|
|
128
139
|
__metadata("design:type", String)
|
|
129
140
|
], UpdateCreditPlanRequest.prototype, "validFrom", void 0);
|
|
130
141
|
__decorate([
|
|
131
142
|
(0, class_transformer_1.Expose)(),
|
|
132
143
|
(0, class_validator_1.IsOptional)(),
|
|
133
|
-
(0, class_validator_1.
|
|
144
|
+
(0, class_validator_1.IsISO8601)(),
|
|
134
145
|
__metadata("design:type", String)
|
|
135
146
|
], UpdateCreditPlanRequest.prototype, "validUntil", void 0);
|
|
136
147
|
__decorate([
|
|
137
148
|
(0, class_transformer_1.Expose)(),
|
|
138
|
-
(0,
|
|
149
|
+
(0, IsOptionalNonNull_1.IsOptionalNonNull)(),
|
|
139
150
|
(0, class_validator_1.ValidateNested)(),
|
|
140
151
|
(0, class_transformer_1.Type)(() => PrepaymentMinimum_1.PrepaymentMinimum),
|
|
141
152
|
__metadata("design:type", PrepaymentMinimum_1.PrepaymentMinimum)
|
|
142
153
|
], UpdateCreditPlanRequest.prototype, "prepaymentMinimum", void 0);
|
|
154
|
+
__decorate([
|
|
155
|
+
(0, class_transformer_1.Expose)(),
|
|
156
|
+
(0, class_validator_1.IsOptional)(),
|
|
157
|
+
(0, class_validator_1.IsString)(),
|
|
158
|
+
(0, class_validator_1.MaxLength)(offeringsInputLimits_1.OFFERINGS_AUDIT_REASON_MAX_LENGTH),
|
|
159
|
+
__metadata("design:type", String)
|
|
160
|
+
], UpdateCreditPlanRequest.prototype, "reason", void 0);
|