@fiado/type-kit 3.518.0 → 3.520.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.
Files changed (94) hide show
  1. package/_test_/unit/retailWizard/fixtures/saleWithoutPhone.strict.ts +57 -0
  2. package/_test_/unit/retailWizard/saleWithoutPhone.test.ts +46 -0
  3. package/_test_/unit/retailWizard/saleWithoutPhoneLines.test.ts +82 -0
  4. package/_test_/unit/rewards/backoffice.test.ts +1 -1
  5. package/_test_/unit/rewards/chargeDtos.test.ts +21 -0
  6. package/_test_/unit/rewards/deliveryMetricsDtos.test.ts +25 -0
  7. package/_test_/unit/rewards/grantBackofficeDtos.test.ts +30 -0
  8. package/_test_/unit/rewards/partnerDtos.test.ts +47 -0
  9. package/bin/retailCommission/dtos/CommissionAccrual.d.ts +2 -1
  10. package/bin/retailWizard/dtos/Sale.d.ts +3 -2
  11. package/bin/retailWizard/dtos/WizardLineProduct.d.ts +3 -0
  12. package/bin/retailWizard/events/RetailCommissionInboundMessage.d.ts +2 -0
  13. package/bin/retailWizard/events/RetailCommissionInboundMessage.js +6 -0
  14. package/bin/retailWizard/events/SaleCompletedV1.d.ts +3 -2
  15. package/bin/retailWizard/events/SaleCompletedV2.d.ts +2 -1
  16. package/bin/rewards/constants/BackofficeLimits.d.ts +13 -0
  17. package/bin/rewards/constants/BackofficeLimits.js +14 -1
  18. package/bin/rewards/dtos/backoffice/BackofficeGrantAttemptResponse.d.ts +5 -0
  19. package/bin/rewards/dtos/backoffice/BackofficeGrantAttemptResponse.js +7 -0
  20. package/bin/rewards/dtos/backoffice/BackofficeGrantItemResponse.d.ts +7 -0
  21. package/bin/rewards/dtos/backoffice/BackofficeGrantItemResponse.js +7 -0
  22. package/bin/rewards/dtos/backoffice/BackofficeGrantResponse.d.ts +7 -0
  23. package/bin/rewards/dtos/backoffice/BackofficeGrantResponse.js +8 -0
  24. package/bin/rewards/dtos/backoffice/ChargeListResponse.d.ts +6 -0
  25. package/bin/rewards/dtos/backoffice/ChargeListResponse.js +6 -0
  26. package/bin/rewards/dtos/backoffice/ChargeRecord.d.ts +17 -0
  27. package/bin/rewards/dtos/backoffice/ChargeRecord.js +7 -0
  28. package/bin/rewards/dtos/backoffice/ChargesExportQuery.d.ts +5 -0
  29. package/bin/rewards/dtos/backoffice/ChargesExportQuery.js +7 -0
  30. package/bin/rewards/dtos/backoffice/ChargesQuery.d.ts +7 -0
  31. package/bin/rewards/dtos/backoffice/ChargesQuery.js +7 -0
  32. package/bin/rewards/dtos/backoffice/DeliveryMetricsPoint.d.ts +13 -0
  33. package/bin/rewards/dtos/backoffice/DeliveryMetricsPoint.js +7 -0
  34. package/bin/rewards/dtos/backoffice/DeliveryMetricsQuery.d.ts +9 -0
  35. package/bin/rewards/dtos/backoffice/DeliveryMetricsQuery.js +7 -0
  36. package/bin/rewards/dtos/backoffice/DeliveryTopEntry.d.ts +16 -0
  37. package/bin/rewards/dtos/backoffice/DeliveryTopEntry.js +7 -0
  38. package/bin/rewards/dtos/backoffice/DeliveryTopQuery.d.ts +11 -0
  39. package/bin/rewards/dtos/backoffice/DeliveryTopQuery.js +7 -0
  40. package/bin/rewards/dtos/backoffice/GrantListQuery.d.ts +22 -0
  41. package/bin/rewards/dtos/backoffice/GrantListQuery.js +7 -0
  42. package/bin/rewards/dtos/backoffice/GrantListResponse.d.ts +5 -0
  43. package/bin/rewards/dtos/backoffice/GrantListResponse.js +6 -0
  44. package/bin/rewards/dtos/backoffice/PartnerListResponse.d.ts +6 -0
  45. package/bin/rewards/dtos/backoffice/PartnerListResponse.js +6 -0
  46. package/bin/rewards/dtos/backoffice/PartnerRequest.d.ts +7 -0
  47. package/bin/rewards/dtos/backoffice/PartnerRequest.js +38 -0
  48. package/bin/rewards/dtos/backoffice/PartnerResponse.d.ts +11 -0
  49. package/bin/rewards/dtos/backoffice/PartnerResponse.js +6 -0
  50. package/bin/rewards/dtos/backoffice/PartnerSummary.d.ts +12 -0
  51. package/bin/rewards/dtos/backoffice/PartnerSummary.js +7 -0
  52. package/bin/rewards/dtos/backoffice/PartnersSummaryQuery.d.ts +5 -0
  53. package/bin/rewards/dtos/backoffice/PartnersSummaryQuery.js +7 -0
  54. package/bin/rewards/dtos/backoffice/RewardChargeToInput.d.ts +1 -1
  55. package/bin/rewards/dtos/backoffice/RewardChargeToInput.js +1 -7
  56. package/bin/rewards/enums/DeliveryDimensionEnum.d.ts +8 -0
  57. package/bin/rewards/enums/DeliveryDimensionEnum.js +12 -0
  58. package/bin/rewards/enums/DeliveryTopByEnum.d.ts +5 -0
  59. package/bin/rewards/enums/DeliveryTopByEnum.js +9 -0
  60. package/bin/rewards/enums/DeliveryTopDimensionEnum.d.ts +7 -0
  61. package/bin/rewards/enums/DeliveryTopDimensionEnum.js +11 -0
  62. package/bin/rewards/index.d.ts +21 -0
  63. package/bin/rewards/index.js +21 -0
  64. package/package.json +1 -1
  65. package/src/retailCommission/dtos/CommissionAccrual.ts +2 -1
  66. package/src/retailWizard/dtos/Sale.ts +3 -2
  67. package/src/retailWizard/dtos/WizardLineProduct.ts +3 -0
  68. package/src/retailWizard/events/RetailCommissionInboundMessage.ts +6 -0
  69. package/src/retailWizard/events/SaleCompletedV1.ts +3 -2
  70. package/src/retailWizard/events/SaleCompletedV2.ts +2 -1
  71. package/src/rewards/constants/BackofficeLimits.ts +16 -0
  72. package/src/rewards/dtos/backoffice/BackofficeGrantAttemptResponse.ts +6 -0
  73. package/src/rewards/dtos/backoffice/BackofficeGrantItemResponse.ts +8 -0
  74. package/src/rewards/dtos/backoffice/BackofficeGrantResponse.ts +8 -0
  75. package/src/rewards/dtos/backoffice/ChargeListResponse.ts +7 -0
  76. package/src/rewards/dtos/backoffice/ChargeRecord.ts +18 -0
  77. package/src/rewards/dtos/backoffice/ChargesExportQuery.ts +5 -0
  78. package/src/rewards/dtos/backoffice/ChargesQuery.ts +7 -0
  79. package/src/rewards/dtos/backoffice/DeliveryMetricsPoint.ts +14 -0
  80. package/src/rewards/dtos/backoffice/DeliveryMetricsQuery.ts +10 -0
  81. package/src/rewards/dtos/backoffice/DeliveryTopEntry.ts +14 -0
  82. package/src/rewards/dtos/backoffice/DeliveryTopQuery.ts +12 -0
  83. package/src/rewards/dtos/backoffice/GrantListQuery.ts +23 -0
  84. package/src/rewards/dtos/backoffice/GrantListResponse.ts +6 -0
  85. package/src/rewards/dtos/backoffice/PartnerListResponse.ts +7 -0
  86. package/src/rewards/dtos/backoffice/PartnerRequest.ts +22 -0
  87. package/src/rewards/dtos/backoffice/PartnerResponse.ts +12 -0
  88. package/src/rewards/dtos/backoffice/PartnerSummary.ts +13 -0
  89. package/src/rewards/dtos/backoffice/PartnersSummaryQuery.ts +5 -0
  90. package/src/rewards/dtos/backoffice/RewardChargeToInput.ts +1 -6
  91. package/src/rewards/enums/DeliveryDimensionEnum.ts +8 -0
  92. package/src/rewards/enums/DeliveryTopByEnum.ts +5 -0
  93. package/src/rewards/enums/DeliveryTopDimensionEnum.ts +7 -0
  94. package/src/rewards/index.ts +21 -0
@@ -0,0 +1,23 @@
1
+ import { ItemErrorCategoryEnum } from '../../enums/ItemErrorCategoryEnum';
2
+
3
+ /** Query params ya validados de `GET /grants` y `GET /grants/export` (el lambda los valida; ver `GrantListQueryHelper`). */
4
+ export class GrantListQuery {
5
+ limit?: number;
6
+ cursor?: string;
7
+ /** Uno o varios `GrantStatusEnum` separados por coma. */
8
+ status?: string;
9
+ packageId?: string;
10
+ campaignId?: string;
11
+ service?: string;
12
+ partnerId?: string;
13
+ directoryId?: string;
14
+ /** Coincide con un `id` de entrega; si no, se trata como `directoryId`. Sin búsqueda por nombre. */
15
+ search?: string;
16
+ /** `AAAA-MM-DD` UTC, inclusivos. Default: `to` = hoy, `from` = `to − 6`. Máximo 92 días. */
17
+ from?: string;
18
+ to?: string;
19
+ /** Entregas que contienen esta recompensa del catálogo (D-F1). */
20
+ catalogItemId?: string;
21
+ /** Entregas con al menos un ítem FAILED cuyo último intento falló con esta categoría (D-F1). */
22
+ errorCategory?: ItemErrorCategoryEnum;
23
+ }
@@ -0,0 +1,6 @@
1
+ import { BackofficeGrantResponse } from './BackofficeGrantResponse';
2
+
3
+ export class GrantListResponse {
4
+ items: BackofficeGrantResponse[];
5
+ nextCursor?: string;
6
+ }
@@ -0,0 +1,7 @@
1
+ import { PartnerResponse } from './PartnerResponse';
2
+
3
+ export class PartnerListResponse {
4
+ items: PartnerResponse[];
5
+ /** Cursor opaco de la página siguiente; ausente en la última página. */
6
+ nextCursor?: string;
7
+ }
@@ -0,0 +1,22 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsEnum, IsNotEmpty, IsString, Matches, MaxLength } from 'class-validator';
3
+ import { REWARD_ID_PATTERN } from '../../constants/BackofficeLimits';
4
+ import { RewardStatusEnum } from '../../enums/RewardStatusEnum';
5
+
6
+ /** Crear (POST) o reemplazar (PUT) un aliado. `version` y `updatedBy` los pone el servidor. El `id` lo genera el front del nombre. */
7
+ export class PartnerRequest {
8
+ @Expose()
9
+ @IsString()
10
+ @Matches(REWARD_ID_PATTERN)
11
+ id: string;
12
+
13
+ @Expose()
14
+ @IsString()
15
+ @IsNotEmpty()
16
+ @MaxLength(120)
17
+ name: string;
18
+
19
+ @Expose()
20
+ @IsEnum(RewardStatusEnum)
21
+ status: RewardStatusEnum;
22
+ }
@@ -0,0 +1,12 @@
1
+ import { RewardStatusEnum } from '../../enums/RewardStatusEnum';
2
+
3
+ export class PartnerResponse {
4
+ id: string;
5
+ name: string;
6
+ status: RewardStatusEnum;
7
+ version: number;
8
+ /** Epoch en milisegundos. */
9
+ createdAt: number;
10
+ updatedAt: number;
11
+ updatedBy: string;
12
+ }
@@ -0,0 +1,13 @@
1
+ import { RewardCost } from '../RewardCost';
2
+ import { RewardStatusEnum } from '../../enums/RewardStatusEnum';
3
+
4
+ /** Un aliado con sus recompensas cobradas y el valor entregado en el rango (`GET /partners/summary`). */
5
+ export class PartnerSummary {
6
+ partnerId: string;
7
+ partnerName: string;
8
+ status: RewardStatusEnum;
9
+ /** Recompensas del catálogo que se le cobran a este aliado. */
10
+ catalogItemIds: string[];
11
+ /** Valor entregado en el rango, POR MONEDA (nunca se mezclan). Vacío si no hubo entregas. */
12
+ delivered: RewardCost[];
13
+ }
@@ -0,0 +1,5 @@
1
+ /** Query params ya validados de `GET /partners/summary` (`AAAA-MM-DD`, UTC, inclusivos; default últimos 30 días). */
2
+ export class PartnersSummaryQuery {
3
+ from?: string;
4
+ to?: string;
5
+ }
@@ -1,16 +1,11 @@
1
1
  import { Expose } from 'class-transformer';
2
2
  import { IsNotEmpty, IsString, MaxLength } from 'class-validator';
3
3
 
4
+ /** A quién se le cobra. `partnerName` ya no se escribe a mano: el servidor lo copia de `RewardPartner_GT` (D-A2). */
4
5
  export class RewardChargeToInput {
5
6
  @Expose()
6
7
  @IsString()
7
8
  @IsNotEmpty()
8
9
  @MaxLength(64)
9
10
  partnerId: string;
10
-
11
- @Expose()
12
- @IsString()
13
- @IsNotEmpty()
14
- @MaxLength(120)
15
- partnerName: string;
16
11
  }
@@ -0,0 +1,8 @@
1
+ /** Dimensión de la serie diaria de métricas. Las etiquetas (`TAG#campaignId`, `TAG#evaluationId`) se validan con `METRICS_TAG_DIMENSION_PATTERN`. */
2
+ export enum DeliveryDimensionEnum {
3
+ ALL = 'ALL',
4
+ PACKAGE = 'PACKAGE',
5
+ CATALOG_ITEM = 'CATALOG_ITEM',
6
+ PARTNER = 'PARTNER',
7
+ SOURCE = 'SOURCE',
8
+ }
@@ -0,0 +1,5 @@
1
+ /** Criterio de ordenamiento del top de métricas. */
2
+ export enum DeliveryTopByEnum {
3
+ cost = 'cost',
4
+ count = 'count',
5
+ }
@@ -0,0 +1,7 @@
1
+ /** Dimensiones sobre las que se calcula el top de métricas. */
2
+ export enum DeliveryTopDimensionEnum {
3
+ PACKAGE = 'PACKAGE',
4
+ CATALOG_ITEM = 'CATALOG_ITEM',
5
+ PARTNER = 'PARTNER',
6
+ SOURCE = 'SOURCE',
7
+ }
@@ -8,6 +8,9 @@ export * from './enums/ItemErrorCategoryEnum';
8
8
  export * from './enums/RewardStatusEnum';
9
9
  export * from './enums/DependencyIfMissingEnum';
10
10
  export * from './enums/RewardsErrorCodeEnum';
11
+ export * from './enums/DeliveryDimensionEnum';
12
+ export * from './enums/DeliveryTopDimensionEnum';
13
+ export * from './enums/DeliveryTopByEnum';
11
14
 
12
15
  //Types
13
16
  export * from './types/RewardInputs';
@@ -50,3 +53,21 @@ export * from './dtos/backoffice/PackageResponse';
50
53
  export * from './dtos/backoffice/RewardTypeResponse';
51
54
  export * from './dtos/backoffice/CatalogItemListResponse';
52
55
  export * from './dtos/backoffice/PackageListResponse';
56
+ export * from './dtos/backoffice/PartnerRequest';
57
+ export * from './dtos/backoffice/PartnerResponse';
58
+ export * from './dtos/backoffice/PartnerListResponse';
59
+ export * from './dtos/backoffice/PartnerSummary';
60
+ export * from './dtos/backoffice/PartnersSummaryQuery';
61
+ export * from './dtos/backoffice/GrantListQuery';
62
+ export * from './dtos/backoffice/BackofficeGrantAttemptResponse';
63
+ export * from './dtos/backoffice/BackofficeGrantItemResponse';
64
+ export * from './dtos/backoffice/BackofficeGrantResponse';
65
+ export * from './dtos/backoffice/GrantListResponse';
66
+ export * from './dtos/backoffice/ChargeRecord';
67
+ export * from './dtos/backoffice/ChargeListResponse';
68
+ export * from './dtos/backoffice/ChargesQuery';
69
+ export * from './dtos/backoffice/ChargesExportQuery';
70
+ export * from './dtos/backoffice/DeliveryMetricsQuery';
71
+ export * from './dtos/backoffice/DeliveryTopQuery';
72
+ export * from './dtos/backoffice/DeliveryMetricsPoint';
73
+ export * from './dtos/backoffice/DeliveryTopEntry';