@fiado/type-kit 3.508.0 → 3.510.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 (196) hide show
  1. package/_test_/unit/dynamicForm/dynamicForm.test.ts +78 -0
  2. package/_test_/unit/platformRbac/dtos/roleAssignmentsByScopeRefsDtos.test.ts +49 -0
  3. package/_test_/unit/retailOrg/dtos/sellerTableSources.test.ts +17 -0
  4. package/_test_/unit/retailWizard/sellerTableShapes.test.ts +9 -2
  5. package/_test_/unit/rewards/enums.test.ts +87 -0
  6. package/_test_/unit/rewards/grantMessages.test.ts +123 -0
  7. package/_test_/unit/rewards/readResponses.test.ts +136 -0
  8. package/_test_/unit/rewardsEligibility/events.test.ts +130 -0
  9. package/bin/benefitCenter/dtos/InputField.d.ts +1 -13
  10. package/bin/benefitCenter/dtos/InputField.js +3 -3
  11. package/bin/benefitCenter/dtos/InputSchema.d.ts +1 -6
  12. package/bin/benefitCenter/dtos/InputSchema.js +3 -3
  13. package/bin/benefitCenter/dtos/InputValidation.d.ts +1 -8
  14. package/bin/benefitCenter/dtos/InputValidation.js +3 -3
  15. package/bin/benefitCenter/dtos/SelectOption.d.ts +1 -4
  16. package/bin/benefitCenter/dtos/SelectOption.js +3 -3
  17. package/bin/benefitCenter/enums/InputFieldTypeEnum.d.ts +1 -10
  18. package/bin/benefitCenter/enums/InputFieldTypeEnum.js +3 -11
  19. package/bin/common/index.d.ts +1 -0
  20. package/bin/common/index.js +2 -0
  21. package/bin/common/types/JsonValue.d.ts +7 -0
  22. package/bin/common/types/JsonValue.js +2 -0
  23. package/bin/dynamicForm/dtos/InputField.d.ts +15 -0
  24. package/bin/dynamicForm/dtos/InputField.js +6 -0
  25. package/bin/dynamicForm/dtos/InputSchema.d.ts +6 -0
  26. package/bin/dynamicForm/dtos/InputSchema.js +6 -0
  27. package/bin/dynamicForm/dtos/InputValidation.d.ts +8 -0
  28. package/bin/dynamicForm/dtos/InputValidation.js +6 -0
  29. package/bin/dynamicForm/dtos/SelectOption.d.ts +4 -0
  30. package/bin/dynamicForm/dtos/SelectOption.js +6 -0
  31. package/bin/dynamicForm/enums/InputFieldTypeEnum.d.ts +18 -0
  32. package/bin/dynamicForm/enums/InputFieldTypeEnum.js +22 -0
  33. package/bin/dynamicForm/helpers/isDynamicFormValue.d.ts +7 -0
  34. package/bin/dynamicForm/helpers/isDynamicFormValue.js +19 -0
  35. package/bin/dynamicForm/index.d.ts +8 -0
  36. package/bin/dynamicForm/index.js +29 -0
  37. package/bin/dynamicForm/types/DynamicFormValue.d.ts +10 -0
  38. package/bin/dynamicForm/types/DynamicFormValue.js +2 -0
  39. package/bin/dynamicForm/validators/IsDynamicFormValues.d.ts +7 -0
  40. package/bin/dynamicForm/validators/IsDynamicFormValues.js +26 -0
  41. package/bin/index.d.ts +3 -0
  42. package/bin/index.js +12 -1
  43. package/bin/platformRbac/dtos/RoleAssignmentsByScopeRefsRequest.d.ts +4 -0
  44. package/bin/platformRbac/dtos/RoleAssignmentsByScopeRefsRequest.js +25 -0
  45. package/bin/platformRbac/dtos/RoleAssignmentsByScopeRefsResponse.d.ts +16 -0
  46. package/bin/platformRbac/dtos/RoleAssignmentsByScopeRefsResponse.js +2 -0
  47. package/bin/platformRbac/enums/ScopeRefLookupStatusEnum.d.ts +5 -0
  48. package/bin/platformRbac/enums/ScopeRefLookupStatusEnum.js +9 -0
  49. package/bin/platformRbac/index.d.ts +3 -0
  50. package/bin/platformRbac/index.js +3 -0
  51. package/bin/retailOrg/dtos/validation/PrivateSellerListResponse.d.ts +5 -1
  52. package/bin/retailWizard/dtos/responses/BackofficeSellerTableResponse.d.ts +21 -2
  53. package/bin/retailWizard/enums/SellerTableSourceStatusEnum.d.ts +3 -2
  54. package/bin/retailWizard/enums/SellerTableSourceStatusEnum.js +2 -1
  55. package/bin/rewards/constants/RewardsLimits.d.ts +2 -0
  56. package/bin/rewards/constants/RewardsLimits.js +5 -0
  57. package/bin/rewards/dtos/GrantFailedMessage.d.ts +13 -0
  58. package/bin/rewards/dtos/GrantFailedMessage.js +46 -0
  59. package/bin/rewards/dtos/GrantRequestedMessage.d.ts +21 -0
  60. package/bin/rewards/dtos/GrantRequestedMessage.js +61 -0
  61. package/bin/rewards/dtos/RewardChargeTo.d.ts +5 -0
  62. package/bin/rewards/dtos/RewardChargeTo.js +7 -0
  63. package/bin/rewards/dtos/RewardCost.d.ts +6 -0
  64. package/bin/rewards/dtos/RewardCost.js +7 -0
  65. package/bin/rewards/dtos/RewardDependency.d.ts +17 -0
  66. package/bin/rewards/dtos/RewardDependency.js +12 -0
  67. package/bin/rewards/dtos/RewardSource.d.ts +12 -0
  68. package/bin/rewards/dtos/RewardSource.js +40 -0
  69. package/bin/rewards/dtos/responses/GrantAttemptResponse.d.ts +15 -0
  70. package/bin/rewards/dtos/responses/GrantAttemptResponse.js +10 -0
  71. package/bin/rewards/dtos/responses/GrantItemResponse.d.ts +20 -0
  72. package/bin/rewards/dtos/responses/GrantItemResponse.js +6 -0
  73. package/bin/rewards/dtos/responses/GrantResponse.d.ts +23 -0
  74. package/bin/rewards/dtos/responses/GrantResponse.js +7 -0
  75. package/bin/rewards/dtos/responses/PackageContractItem.d.ts +12 -0
  76. package/bin/rewards/dtos/responses/PackageContractItem.js +7 -0
  77. package/bin/rewards/dtos/responses/PackageContractResponse.d.ts +13 -0
  78. package/bin/rewards/dtos/responses/PackageContractResponse.js +7 -0
  79. package/bin/rewards/enums/DependencyIfMissingEnum.d.ts +5 -0
  80. package/bin/rewards/enums/DependencyIfMissingEnum.js +9 -0
  81. package/bin/rewards/enums/GrantFailedReasonEnum.d.ts +11 -0
  82. package/bin/rewards/enums/GrantFailedReasonEnum.js +15 -0
  83. package/bin/rewards/enums/GrantItemStatusEnum.d.ts +6 -0
  84. package/bin/rewards/enums/GrantItemStatusEnum.js +10 -0
  85. package/bin/rewards/enums/GrantRejectReasonEnum.d.ts +6 -0
  86. package/bin/rewards/enums/GrantRejectReasonEnum.js +10 -0
  87. package/bin/rewards/enums/GrantStatusEnum.d.ts +8 -0
  88. package/bin/rewards/enums/GrantStatusEnum.js +12 -0
  89. package/bin/rewards/enums/ItemErrorCategoryEnum.d.ts +7 -0
  90. package/bin/rewards/enums/ItemErrorCategoryEnum.js +11 -0
  91. package/bin/rewards/enums/RewardStatusEnum.d.ts +4 -0
  92. package/bin/rewards/enums/RewardStatusEnum.js +8 -0
  93. package/bin/rewards/enums/RewardsErrorCodeEnum.d.ts +5 -0
  94. package/bin/rewards/enums/RewardsErrorCodeEnum.js +9 -0
  95. package/bin/rewards/enums/RewardsMessageTypeEnum.d.ts +4 -0
  96. package/bin/rewards/enums/RewardsMessageTypeEnum.js +8 -0
  97. package/bin/rewards/index.d.ts +24 -0
  98. package/bin/rewards/index.js +47 -0
  99. package/bin/rewards/types/RewardInputs.d.ts +3 -0
  100. package/bin/rewards/types/RewardInputs.js +2 -0
  101. package/bin/rewards/validators/IsRewardInputs.d.ts +7 -0
  102. package/bin/rewards/validators/IsRewardInputs.js +26 -0
  103. package/bin/rewards/validators/IsRewardTags.d.ts +7 -0
  104. package/bin/rewards/validators/IsRewardTags.js +28 -0
  105. package/bin/rewardsEligibility/dtos/EventRunResult.d.ts +11 -0
  106. package/bin/rewardsEligibility/dtos/EventRunResult.js +7 -0
  107. package/bin/rewardsEligibility/dtos/EventSource.d.ts +5 -0
  108. package/bin/rewardsEligibility/dtos/EventSource.js +30 -0
  109. package/bin/rewardsEligibility/dtos/GetRunResponse.d.ts +22 -0
  110. package/bin/rewardsEligibility/dtos/GetRunResponse.js +7 -0
  111. package/bin/rewardsEligibility/dtos/PostEventRequest.d.ts +14 -0
  112. package/bin/rewardsEligibility/dtos/PostEventRequest.js +47 -0
  113. package/bin/rewardsEligibility/dtos/PostEventResponse.d.ts +5 -0
  114. package/bin/rewardsEligibility/dtos/PostEventResponse.js +7 -0
  115. package/bin/rewardsEligibility/dtos/RunCounts.d.ts +12 -0
  116. package/bin/rewardsEligibility/dtos/RunCounts.js +7 -0
  117. package/bin/rewardsEligibility/dtos/RunResultItem.d.ts +16 -0
  118. package/bin/rewardsEligibility/dtos/RunResultItem.js +7 -0
  119. package/bin/rewardsEligibility/enums/EvaluationOutcomeEnum.d.ts +11 -0
  120. package/bin/rewardsEligibility/enums/EvaluationOutcomeEnum.js +15 -0
  121. package/bin/rewardsEligibility/enums/GrantRequestStatusEnum.d.ts +11 -0
  122. package/bin/rewardsEligibility/enums/GrantRequestStatusEnum.js +15 -0
  123. package/bin/rewardsEligibility/enums/RewardsEligibilityErrorCodeEnum.d.ts +8 -0
  124. package/bin/rewardsEligibility/enums/RewardsEligibilityErrorCodeEnum.js +12 -0
  125. package/bin/rewardsEligibility/enums/RunModeEnum.d.ts +4 -0
  126. package/bin/rewardsEligibility/enums/RunModeEnum.js +8 -0
  127. package/bin/rewardsEligibility/enums/RunStatusEnum.d.ts +9 -0
  128. package/bin/rewardsEligibility/enums/RunStatusEnum.js +13 -0
  129. package/bin/rewardsEligibility/enums/TriggerTypeEnum.d.ts +5 -0
  130. package/bin/rewardsEligibility/enums/TriggerTypeEnum.js +9 -0
  131. package/bin/rewardsEligibility/index.d.ts +13 -0
  132. package/bin/rewardsEligibility/index.js +31 -0
  133. package/package.json +1 -1
  134. package/src/benefitCenter/dtos/InputField.ts +2 -14
  135. package/src/benefitCenter/dtos/InputSchema.ts +2 -7
  136. package/src/benefitCenter/dtos/InputValidation.ts +2 -8
  137. package/src/benefitCenter/dtos/SelectOption.ts +2 -4
  138. package/src/benefitCenter/enums/InputFieldTypeEnum.ts +2 -10
  139. package/src/common/index.ts +4 -1
  140. package/src/common/types/JsonValue.ts +5 -0
  141. package/src/dynamicForm/dtos/InputField.ts +16 -0
  142. package/src/dynamicForm/dtos/InputSchema.ts +7 -0
  143. package/src/dynamicForm/dtos/InputValidation.ts +8 -0
  144. package/src/dynamicForm/dtos/SelectOption.ts +4 -0
  145. package/src/dynamicForm/enums/InputFieldTypeEnum.ts +18 -0
  146. package/src/dynamicForm/helpers/isDynamicFormValue.ts +16 -0
  147. package/src/dynamicForm/index.ts +17 -0
  148. package/src/dynamicForm/types/DynamicFormValue.ts +8 -0
  149. package/src/dynamicForm/validators/IsDynamicFormValues.ts +16 -0
  150. package/src/index.ts +14 -0
  151. package/src/platformRbac/dtos/RoleAssignmentsByScopeRefsRequest.ts +12 -0
  152. package/src/platformRbac/dtos/RoleAssignmentsByScopeRefsResponse.ts +22 -0
  153. package/src/platformRbac/enums/ScopeRefLookupStatusEnum.ts +5 -0
  154. package/src/platformRbac/index.ts +9 -0
  155. package/src/retailOrg/dtos/validation/PrivateSellerListResponse.ts +5 -1
  156. package/src/retailWizard/dtos/responses/BackofficeSellerTableResponse.ts +22 -2
  157. package/src/retailWizard/enums/SellerTableSourceStatusEnum.ts +2 -1
  158. package/src/rewards/constants/RewardsLimits.ts +2 -0
  159. package/src/rewards/dtos/GrantFailedMessage.ts +29 -0
  160. package/src/rewards/dtos/GrantRequestedMessage.ts +46 -0
  161. package/src/rewards/dtos/RewardChargeTo.ts +5 -0
  162. package/src/rewards/dtos/RewardCost.ts +7 -0
  163. package/src/rewards/dtos/RewardDependency.ts +18 -0
  164. package/src/rewards/dtos/RewardSource.ts +27 -0
  165. package/src/rewards/dtos/responses/GrantAttemptResponse.ts +16 -0
  166. package/src/rewards/dtos/responses/GrantItemResponse.ts +21 -0
  167. package/src/rewards/dtos/responses/GrantResponse.ts +24 -0
  168. package/src/rewards/dtos/responses/PackageContractItem.ts +13 -0
  169. package/src/rewards/dtos/responses/PackageContractResponse.ts +14 -0
  170. package/src/rewards/enums/DependencyIfMissingEnum.ts +5 -0
  171. package/src/rewards/enums/GrantFailedReasonEnum.ts +11 -0
  172. package/src/rewards/enums/GrantItemStatusEnum.ts +6 -0
  173. package/src/rewards/enums/GrantRejectReasonEnum.ts +6 -0
  174. package/src/rewards/enums/GrantStatusEnum.ts +8 -0
  175. package/src/rewards/enums/ItemErrorCategoryEnum.ts +7 -0
  176. package/src/rewards/enums/RewardStatusEnum.ts +4 -0
  177. package/src/rewards/enums/RewardsErrorCodeEnum.ts +5 -0
  178. package/src/rewards/enums/RewardsMessageTypeEnum.ts +4 -0
  179. package/src/rewards/index.ts +37 -0
  180. package/src/rewards/types/RewardInputs.ts +4 -0
  181. package/src/rewards/validators/IsRewardInputs.ts +18 -0
  182. package/src/rewards/validators/IsRewardTags.ts +18 -0
  183. package/src/rewardsEligibility/dtos/EventRunResult.ts +12 -0
  184. package/src/rewardsEligibility/dtos/EventSource.ts +15 -0
  185. package/src/rewardsEligibility/dtos/GetRunResponse.ts +23 -0
  186. package/src/rewardsEligibility/dtos/PostEventRequest.ts +32 -0
  187. package/src/rewardsEligibility/dtos/PostEventResponse.ts +6 -0
  188. package/src/rewardsEligibility/dtos/RunCounts.ts +12 -0
  189. package/src/rewardsEligibility/dtos/RunResultItem.ts +17 -0
  190. package/src/rewardsEligibility/enums/EvaluationOutcomeEnum.ts +11 -0
  191. package/src/rewardsEligibility/enums/GrantRequestStatusEnum.ts +11 -0
  192. package/src/rewardsEligibility/enums/RewardsEligibilityErrorCodeEnum.ts +8 -0
  193. package/src/rewardsEligibility/enums/RunModeEnum.ts +4 -0
  194. package/src/rewardsEligibility/enums/RunStatusEnum.ts +9 -0
  195. package/src/rewardsEligibility/enums/TriggerTypeEnum.ts +5 -0
  196. package/src/rewardsEligibility/index.ts +16 -0
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InputField = void 0;
4
- class InputField {
5
- }
6
- exports.InputField = InputField;
4
+ // Alias (D-E5): el origen vive en `dynamicForm`. No duplicar.
5
+ var InputField_1 = require("../../dynamicForm/dtos/InputField");
6
+ Object.defineProperty(exports, "InputField", { enumerable: true, get: function () { return InputField_1.InputField; } });
@@ -1,6 +1 @@
1
- import { InputField } from "./InputField";
2
- import { InputValidation } from "./InputValidation";
3
- export declare class InputSchema {
4
- fields: InputField[];
5
- validations?: Record<string, InputValidation>;
6
- }
1
+ export { InputSchema } from '../../dynamicForm/dtos/InputSchema';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InputSchema = void 0;
4
- class InputSchema {
5
- }
6
- exports.InputSchema = InputSchema;
4
+ // Alias (D-E5): el origen vive en `dynamicForm`. No duplicar.
5
+ var InputSchema_1 = require("../../dynamicForm/dtos/InputSchema");
6
+ Object.defineProperty(exports, "InputSchema", { enumerable: true, get: function () { return InputSchema_1.InputSchema; } });
@@ -1,8 +1 @@
1
- export declare class InputValidation {
2
- pattern?: string;
3
- maxLength?: number;
4
- minLength?: number;
5
- min?: number;
6
- max?: number;
7
- hasCheckDigit?: boolean;
8
- }
1
+ export { InputValidation } from '../../dynamicForm/dtos/InputValidation';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InputValidation = void 0;
4
- class InputValidation {
5
- }
6
- exports.InputValidation = InputValidation;
4
+ // Alias (D-E5): el origen vive en `dynamicForm`. No duplicar.
5
+ var InputValidation_1 = require("../../dynamicForm/dtos/InputValidation");
6
+ Object.defineProperty(exports, "InputValidation", { enumerable: true, get: function () { return InputValidation_1.InputValidation; } });
@@ -1,4 +1 @@
1
- export declare class SelectOption {
2
- value: string;
3
- label: string;
4
- }
1
+ export { SelectOption } from '../../dynamicForm/dtos/SelectOption';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SelectOption = void 0;
4
- class SelectOption {
5
- }
6
- exports.SelectOption = SelectOption;
4
+ // Alias (D-E5): el origen vive en `dynamicForm`. No duplicar.
5
+ var SelectOption_1 = require("../../dynamicForm/dtos/SelectOption");
6
+ Object.defineProperty(exports, "SelectOption", { enumerable: true, get: function () { return SelectOption_1.SelectOption; } });
@@ -1,10 +1 @@
1
- export declare enum InputFieldTypeEnum {
2
- PHONE = "PHONE",
3
- BARCODE = "BARCODE",
4
- ACCOUNT_NUMBER = "ACCOUNT_NUMBER",
5
- TEXT = "TEXT",
6
- NUMBER = "NUMBER",
7
- MONEY = "MONEY",
8
- SELECT = "SELECT",
9
- DATE = "DATE"
10
- }
1
+ export { InputFieldTypeEnum } from '../../dynamicForm/enums/InputFieldTypeEnum';
@@ -1,14 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InputFieldTypeEnum = void 0;
4
- var InputFieldTypeEnum;
5
- (function (InputFieldTypeEnum) {
6
- InputFieldTypeEnum["PHONE"] = "PHONE";
7
- InputFieldTypeEnum["BARCODE"] = "BARCODE";
8
- InputFieldTypeEnum["ACCOUNT_NUMBER"] = "ACCOUNT_NUMBER";
9
- InputFieldTypeEnum["TEXT"] = "TEXT";
10
- InputFieldTypeEnum["NUMBER"] = "NUMBER";
11
- InputFieldTypeEnum["MONEY"] = "MONEY";
12
- InputFieldTypeEnum["SELECT"] = "SELECT";
13
- InputFieldTypeEnum["DATE"] = "DATE";
14
- })(InputFieldTypeEnum || (exports.InputFieldTypeEnum = InputFieldTypeEnum = {}));
4
+ // Alias (D-E5): el origen vive en el dominio compartido `dynamicForm`. No duplicar.
5
+ var InputFieldTypeEnum_1 = require("../../dynamicForm/enums/InputFieldTypeEnum");
6
+ Object.defineProperty(exports, "InputFieldTypeEnum", { enumerable: true, get: function () { return InputFieldTypeEnum_1.InputFieldTypeEnum; } });
@@ -3,3 +3,4 @@ export * from './validators/IsStringValueRecord';
3
3
  export * from './dtos/ProcessValidationResultDto';
4
4
  export * from './enums/ProcessValidationEnum';
5
5
  export * from './enums/ProcessResultEnum';
6
+ export * from './types/JsonValue';
@@ -23,3 +23,5 @@ __exportStar(require("./dtos/ProcessValidationResultDto"), exports);
23
23
  //Enums
24
24
  __exportStar(require("./enums/ProcessValidationEnum"), exports);
25
25
  __exportStar(require("./enums/ProcessResultEnum"), exports);
26
+ //types
27
+ __exportStar(require("./types/JsonValue"), exports);
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Valor JSON arbitrario, sin `any` ni `unknown`. Tipo de entrada para los validadores de
3
+ * class-validator que reciben datos no confiables (mensajes de cola, cuerpos HTTP).
4
+ */
5
+ export type JsonValue = string | number | boolean | null | JsonValue[] | {
6
+ [key: string]: JsonValue;
7
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,15 @@
1
+ import { InputFieldTypeEnum } from "../enums/InputFieldTypeEnum";
2
+ import { SelectOption } from "./SelectOption";
3
+ export declare class InputField {
4
+ key: string;
5
+ type: InputFieldTypeEnum;
6
+ label: string;
7
+ required: boolean;
8
+ placeholder?: string;
9
+ helpImage?: string;
10
+ showHelp?: boolean;
11
+ options?: SelectOption[];
12
+ dependsOn?: string;
13
+ /** Endpoint del que salen las opciones (SELECT ampliado y ENTITY_REF). */
14
+ optionsSource?: string;
15
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InputField = void 0;
4
+ class InputField {
5
+ }
6
+ exports.InputField = InputField;
@@ -0,0 +1,6 @@
1
+ import { InputField } from "./InputField";
2
+ import { InputValidation } from "./InputValidation";
3
+ export declare class InputSchema {
4
+ fields: InputField[];
5
+ validations?: Record<string, InputValidation>;
6
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InputSchema = void 0;
4
+ class InputSchema {
5
+ }
6
+ exports.InputSchema = InputSchema;
@@ -0,0 +1,8 @@
1
+ export declare class InputValidation {
2
+ pattern?: string;
3
+ maxLength?: number;
4
+ minLength?: number;
5
+ min?: number;
6
+ max?: number;
7
+ hasCheckDigit?: boolean;
8
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InputValidation = void 0;
4
+ class InputValidation {
5
+ }
6
+ exports.InputValidation = InputValidation;
@@ -0,0 +1,4 @@
1
+ export declare class SelectOption {
2
+ value: string;
3
+ label: string;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SelectOption = void 0;
4
+ class SelectOption {
5
+ }
6
+ exports.SelectOption = SelectOption;
@@ -0,0 +1,18 @@
1
+ export declare enum InputFieldTypeEnum {
2
+ PHONE = "PHONE",
3
+ BARCODE = "BARCODE",
4
+ ACCOUNT_NUMBER = "ACCOUNT_NUMBER",
5
+ TEXT = "TEXT",
6
+ NUMBER = "NUMBER",
7
+ MONEY = "MONEY",
8
+ SELECT = "SELECT",
9
+ DATE = "DATE",
10
+ /** Buscador de usuario (nombre, teléfono, correo). Valor: `directoryId`. */
11
+ DIRECTORY = "DIRECTORY",
12
+ /** Buscador contra `optionsSource` (ej. ventas). Valor: id de la entidad. */
13
+ ENTITY_REF = "ENTITY_REF",
14
+ /** Rango de fechas. Valor: `{from, to}`; cada extremo es fecha ISO o ventana relativa (`7d`, `1M`; spec B §9). */
15
+ DATE_RANGE = "DATE_RANGE",
16
+ /** Interruptor. Valor: `true`/`false`. */
17
+ BOOLEAN = "BOOLEAN"
18
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InputFieldTypeEnum = void 0;
4
+ var InputFieldTypeEnum;
5
+ (function (InputFieldTypeEnum) {
6
+ InputFieldTypeEnum["PHONE"] = "PHONE";
7
+ InputFieldTypeEnum["BARCODE"] = "BARCODE";
8
+ InputFieldTypeEnum["ACCOUNT_NUMBER"] = "ACCOUNT_NUMBER";
9
+ InputFieldTypeEnum["TEXT"] = "TEXT";
10
+ InputFieldTypeEnum["NUMBER"] = "NUMBER";
11
+ InputFieldTypeEnum["MONEY"] = "MONEY";
12
+ InputFieldTypeEnum["SELECT"] = "SELECT";
13
+ InputFieldTypeEnum["DATE"] = "DATE";
14
+ /** Buscador de usuario (nombre, teléfono, correo). Valor: `directoryId`. */
15
+ InputFieldTypeEnum["DIRECTORY"] = "DIRECTORY";
16
+ /** Buscador contra `optionsSource` (ej. ventas). Valor: id de la entidad. */
17
+ InputFieldTypeEnum["ENTITY_REF"] = "ENTITY_REF";
18
+ /** Rango de fechas. Valor: `{from, to}`; cada extremo es fecha ISO o ventana relativa (`7d`, `1M`; spec B §9). */
19
+ InputFieldTypeEnum["DATE_RANGE"] = "DATE_RANGE";
20
+ /** Interruptor. Valor: `true`/`false`. */
21
+ InputFieldTypeEnum["BOOLEAN"] = "BOOLEAN";
22
+ })(InputFieldTypeEnum || (exports.InputFieldTypeEnum = InputFieldTypeEnum = {}));
@@ -0,0 +1,7 @@
1
+ import { JsonValue } from '../../common/types/JsonValue';
2
+ import { DateRangeValue, DynamicFormValue } from '../types/DynamicFormValue';
3
+ export declare const isPlainObject: (value: JsonValue) => value is {
4
+ [key: string]: JsonValue;
5
+ };
6
+ export declare const isDateRangeValue: (value: JsonValue) => value is DateRangeValue;
7
+ export declare const isDynamicFormValue: (value: JsonValue) => value is DynamicFormValue;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDynamicFormValue = exports.isDateRangeValue = exports.isPlainObject = void 0;
4
+ const isPlainObject = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
5
+ exports.isPlainObject = isPlainObject;
6
+ const isDateRangeValue = (value) => {
7
+ if (!(0, exports.isPlainObject)(value))
8
+ return false;
9
+ return Object.keys(value).length === 2 && typeof value.from === 'string' && typeof value.to === 'string';
10
+ };
11
+ exports.isDateRangeValue = isDateRangeValue;
12
+ const isDynamicFormValue = (value) => {
13
+ if (typeof value === 'string' || typeof value === 'boolean')
14
+ return true;
15
+ if (typeof value === 'number')
16
+ return Number.isFinite(value);
17
+ return (0, exports.isDateRangeValue)(value);
18
+ };
19
+ exports.isDynamicFormValue = isDynamicFormValue;
@@ -0,0 +1,8 @@
1
+ export * from './enums/InputFieldTypeEnum';
2
+ export * from './dtos/SelectOption';
3
+ export * from './dtos/InputValidation';
4
+ export * from './dtos/InputField';
5
+ export * from './dtos/InputSchema';
6
+ export * from './types/DynamicFormValue';
7
+ export * from './helpers/isDynamicFormValue';
8
+ export * from './validators/IsDynamicFormValues';
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ //Enums
18
+ __exportStar(require("./enums/InputFieldTypeEnum"), exports);
19
+ //DTOs
20
+ __exportStar(require("./dtos/SelectOption"), exports);
21
+ __exportStar(require("./dtos/InputValidation"), exports);
22
+ __exportStar(require("./dtos/InputField"), exports);
23
+ __exportStar(require("./dtos/InputSchema"), exports);
24
+ //Types
25
+ __exportStar(require("./types/DynamicFormValue"), exports);
26
+ //Helpers
27
+ __exportStar(require("./helpers/isDynamicFormValue"), exports);
28
+ //Validators
29
+ __exportStar(require("./validators/IsDynamicFormValues"), exports);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Valor de un campo `DATE_RANGE`: `{from, to}`. `from`/`to` son fechas ISO o una ventana relativa
3
+ * (`7d`, `1M`; spec B §9) que el consumidor resuelve contra «ahora».
4
+ */
5
+ export type DateRangeValue = {
6
+ from: string;
7
+ to: string;
8
+ };
9
+ /** Lo que puede valer una entrada de un formulario dinámico. */
10
+ export type DynamicFormValue = string | number | boolean | DateRangeValue;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ import { ValidationArguments, ValidatorConstraintInterface } from 'class-validator';
2
+ import { JsonValue } from '../../common/types/JsonValue';
3
+ /** Valida un mapa `clave → DynamicFormValue` (string | number | boolean | {from, to}). */
4
+ export declare class IsDynamicFormValues implements ValidatorConstraintInterface {
5
+ validate(value: JsonValue, _args: ValidationArguments): boolean;
6
+ defaultMessage(_args: ValidationArguments): string;
7
+ }
@@ -0,0 +1,26 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.IsDynamicFormValues = void 0;
10
+ const class_validator_1 = require("class-validator");
11
+ const isDynamicFormValue_1 = require("../helpers/isDynamicFormValue");
12
+ /** Valida un mapa `clave → DynamicFormValue` (string | number | boolean | {from, to}). */
13
+ let IsDynamicFormValues = class IsDynamicFormValues {
14
+ validate(value, _args) {
15
+ if (!(0, isDynamicFormValue_1.isPlainObject)(value))
16
+ return false;
17
+ return Object.values(value).every(isDynamicFormValue_1.isDynamicFormValue);
18
+ }
19
+ defaultMessage(_args) {
20
+ return 'inputs debe ser un mapa clave → string | number | boolean | {from, to}';
21
+ }
22
+ };
23
+ exports.IsDynamicFormValues = IsDynamicFormValues;
24
+ exports.IsDynamicFormValues = IsDynamicFormValues = __decorate([
25
+ (0, class_validator_1.ValidatorConstraint)({ name: 'IsDynamicFormValues', async: false })
26
+ ], IsDynamicFormValues);
package/bin/index.d.ts CHANGED
@@ -120,3 +120,6 @@ export * as Membership from './membership';
120
120
  export * as RetailLoan from './retailLoan';
121
121
  export * as MoneyTransfer from './moneyTransfer';
122
122
  export * as FileStorage from './fileStorage';
123
+ export * as DynamicForm from './dynamicForm';
124
+ export * as Rewards from './rewards';
125
+ export * as RewardsEligibility from './rewardsEligibility';
package/bin/index.js CHANGED
@@ -38,7 +38,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.IssuanceBusiness = exports.Blacklist = exports.CentralPayments = exports.Helpdesk = exports.FiadoApiResponse = exports.Auth = exports.LegalDocumentsBusiness = exports.Role = exports.STPAccount = exports.RiskProfile = exports.FraudPreventionEngine = exports.BBVARst = exports.Stp = exports.BenefitCenter = exports.BankAccount = exports.P2pContact = exports.CreditContract = exports.Contract = exports.ProductCatalog = exports.ContactInfo = exports.TransactionAnalytics = exports.Transaction = exports.TransactionProcessor = exports.GenericMessage = exports.EventBridgeMessage = exports.SessionActivity = exports.NotificationMessages = exports.ServicePayment = exports.Header = exports.Identity = exports.UserTags = exports.Group = exports.File = exports.ExchangeRate = exports.Directory = exports.Currency = exports.Country = exports.Card = exports.Authentication = exports.AppContent = exports.App = exports.Offices = exports.Places = exports.Address = exports.Beneficiary = exports.Activity = exports.Biometrics = exports.MetamapConnector = exports.Account = exports.Crypto = void 0;
40
40
  exports.RetailPromotions = exports.RetailWizard = exports.RetailCustomer = exports.RetailCards = exports.RetailCatalog = exports.RetailCommission = exports.RetailOrg = exports.EmailVerification = exports.NetworkConnector = exports.Modelias = exports.TotpSecurity = exports.Passport = exports.WalletFunding = exports.Remittance = exports.PlatformRbac = exports.CognitoBackofficeConnector = exports.WhatsappConnector = exports.TwilioConnector = exports.MessagesConnector = exports.Mdm = exports.MilestoneBusiness = exports.CirculoCredito = exports.CreditStatements = exports.Sentry = exports.AiEngine = exports.Funnel = exports.TeamsConnector = exports.PlatformErrorEvents = exports.CustomerFile = exports.CreditBackoffice = exports.CreditDashboard = exports.CreditEngine = exports.Credit = exports.ComissionBusiness = exports.ReferralBusiness = exports.ZendeskMessaging = exports.NotificationWS = exports.Event = exports.PayrollBusiness = exports.Cnbv = exports.DirectorySetting = exports.InvoiceCollector = exports.Collector = exports.Pricelist = exports.Company = exports.Services = exports.AccountIssuanceBusiness = exports.AppSelectionData = exports.Device = exports.Observations = void 0;
41
- exports.FileStorage = exports.MoneyTransfer = exports.RetailLoan = exports.Membership = exports.WebhookBusiness = exports.PeopleBusiness = exports.UserConfirmations = exports.Collection = exports.Shipping = exports.PhoneSales = exports.Onboarding = exports.Kyc = exports.LoanScoring = exports.LoanCredit = exports.LoanCollectorAssignment = exports.LoanOfferings = exports.Shortlink = exports.LoanConfig = exports.DatalakeQuery = exports.RetailIntegration = void 0;
41
+ exports.RewardsEligibility = exports.Rewards = exports.DynamicForm = exports.FileStorage = exports.MoneyTransfer = exports.RetailLoan = exports.Membership = exports.WebhookBusiness = exports.PeopleBusiness = exports.UserConfirmations = exports.Collection = exports.Shipping = exports.PhoneSales = exports.Onboarding = exports.Kyc = exports.LoanScoring = exports.LoanCredit = exports.LoanCollectorAssignment = exports.LoanOfferings = exports.Shortlink = exports.LoanConfig = exports.DatalakeQuery = exports.RetailIntegration = void 0;
42
42
  exports.Crypto = __importStar(require("./crypto"));
43
43
  exports.Account = __importStar(require("./account"));
44
44
  exports.MetamapConnector = __importStar(require("./metamapConnector"));
@@ -233,3 +233,14 @@ exports.RetailLoan = __importStar(require("./retailLoan"));
233
233
  exports.MoneyTransfer = __importStar(require("./moneyTransfer"));
234
234
  // FileStorage: contrato de fiado-s3-lambda (documentos de usuario en S3). Consumido por api-invoker (IFileStorageApi).
235
235
  exports.FileStorage = __importStar(require("./fileStorage"));
236
+ // DynamicForm: formulario dinámico compartido (InputField, InputFieldTypeEnum, SelectOption,
237
+ // InputValidation, InputSchema). Antes vivía en `benefitCenter`, que lo reexporta como alias.
238
+ // Lo usan rewards (dependencies de las recompensas) y rewardsEligibility (inputs, fields, params).
239
+ exports.DynamicForm = __importStar(require("./dynamicForm"));
240
+ // Rewards: contrato entre rewards-business (entrega paquetes de recompensas) y sus llamadores
241
+ // (rewards-eligibility-business): mensajes GRANT_REQUESTED / GRANT_FAILED de las colas compartidas
242
+ // y respuestas de las lecturas privadas GET /packages/{id} y GET /grants/{id}.
243
+ exports.Rewards = __importStar(require("./rewards"));
244
+ // RewardsEligibility: contrato del validador de elegibilidad (rewards-eligibility-business) hacia los
245
+ // servicios emisores: POST /events (request/response) y GET /runs/{id}.
246
+ exports.RewardsEligibility = __importStar(require("./rewardsEligibility"));
@@ -0,0 +1,4 @@
1
+ export declare const ROLE_ASSIGNMENTS_BY_SCOPE_REFS_MAX_BATCH = 100;
2
+ export declare class RoleAssignmentsByScopeRefsRequest {
3
+ scopeRefs: string[];
4
+ }
@@ -0,0 +1,25 @@
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.RoleAssignmentsByScopeRefsRequest = exports.ROLE_ASSIGNMENTS_BY_SCOPE_REFS_MAX_BATCH = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ // Tope de scopeRefs por request del endpoint batch de asignaciones por destino.
15
+ exports.ROLE_ASSIGNMENTS_BY_SCOPE_REFS_MAX_BATCH = 100;
16
+ // Body de POST /internal/tenants/{tenantId}/role-assignments/by-scope-refs; la lista vacía responde sin items.
17
+ class RoleAssignmentsByScopeRefsRequest {
18
+ }
19
+ exports.RoleAssignmentsByScopeRefsRequest = RoleAssignmentsByScopeRefsRequest;
20
+ __decorate([
21
+ (0, class_validator_1.IsArray)(),
22
+ (0, class_validator_1.ArrayMaxSize)(exports.ROLE_ASSIGNMENTS_BY_SCOPE_REFS_MAX_BATCH),
23
+ (0, class_validator_1.IsString)({ each: true }),
24
+ __metadata("design:type", Array)
25
+ ], RoleAssignmentsByScopeRefsRequest.prototype, "scopeRefs", void 0);
@@ -0,0 +1,16 @@
1
+ import type { PermissionScope } from '../enums/PermissionScope';
2
+ import type { ScopeRefLookupStatusEnum } from '../enums/ScopeRefLookupStatusEnum';
3
+ export interface ScopeRefRoleAssignment {
4
+ cognitoSub: string;
5
+ roleId: string;
6
+ roleName: string | null;
7
+ scope: PermissionScope;
8
+ }
9
+ export interface ScopeRefRoleAssignments {
10
+ scopeRef: string;
11
+ status: ScopeRefLookupStatusEnum;
12
+ assignments: ScopeRefRoleAssignment[];
13
+ }
14
+ export interface RoleAssignmentsByScopeRefsResponse {
15
+ items: ScopeRefRoleAssignments[];
16
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ /** Si la lectura de asignaciones de un destino contestó (`OK`) o falló (`UNAVAILABLE`). */
2
+ export declare enum ScopeRefLookupStatusEnum {
3
+ OK = "OK",
4
+ UNAVAILABLE = "UNAVAILABLE"
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ScopeRefLookupStatusEnum = void 0;
4
+ /** Si la lectura de asignaciones de un destino contestó (`OK`) o falló (`UNAVAILABLE`). */
5
+ var ScopeRefLookupStatusEnum;
6
+ (function (ScopeRefLookupStatusEnum) {
7
+ ScopeRefLookupStatusEnum["OK"] = "OK";
8
+ ScopeRefLookupStatusEnum["UNAVAILABLE"] = "UNAVAILABLE";
9
+ })(ScopeRefLookupStatusEnum || (exports.ScopeRefLookupStatusEnum = ScopeRefLookupStatusEnum = {}));
@@ -87,6 +87,9 @@ export * from './dtos/RevokeTenantRoleRequest';
87
87
  export type { RevokeTenantRoleResponse } from './dtos/RevokeTenantRoleResponse';
88
88
  export * from './dtos/TenantUsersBySubsRequest';
89
89
  export type { TenantUserBySubItem, TenantUsersBySubsResponse } from './dtos/TenantUsersBySubsResponse';
90
+ export * from './dtos/RoleAssignmentsByScopeRefsRequest';
91
+ export * from './enums/ScopeRefLookupStatusEnum';
92
+ export type { ScopeRefRoleAssignment, ScopeRefRoleAssignments, RoleAssignmentsByScopeRefsResponse, } from './dtos/RoleAssignmentsByScopeRefsResponse';
90
93
  export * from './apiUser/ApiLoginRequest';
91
94
  export * from './apiUser/ApiLoginResponse';
92
95
  export * from './apiUser/CreateApiUserRequest';
@@ -129,6 +129,9 @@ __exportStar(require("./dtos/AssignTenantRoleRequest"), exports);
129
129
  __exportStar(require("./dtos/RevokeTenantRoleRequest"), exports);
130
130
  // Batch privado de usuarios del tenant por cognitoSub (hub de miembros de group-business).
131
131
  __exportStar(require("./dtos/TenantUsersBySubsRequest"), exports);
132
+ // Batch privado de asignaciones de rol por destino (scopeRef), para la tabla de Vendedores.
133
+ __exportStar(require("./dtos/RoleAssignmentsByScopeRefsRequest"), exports);
134
+ __exportStar(require("./enums/ScopeRefLookupStatusEnum"), exports);
132
135
  // Usuarios de API: login por Bearer, alta, rotación de secreto y diagnóstico del W5.
133
136
  __exportStar(require("./apiUser/ApiLoginRequest"), exports);
134
137
  __exportStar(require("./apiUser/ApiLoginResponse"), exports);
@@ -3,7 +3,7 @@ import type { RetailUserStatusEnum } from '../../enums/RetailUserStatusEnum';
3
3
  * Shape mínimo de un vendedor para el motor de comisiones (F3b): a quién pagarle, de qué tienda es y
4
4
  * en qué tier va.
5
5
  *
6
- * **Sin PII** — nada de teléfono ni `cognitoSub`. `displayName` es el rótulo de conveniencia con el
6
+ * **Sin PII** — el teléfono solo viaja a pedido. `displayName` es el rótulo de conveniencia con el
7
7
  * que el motor arma su reporte de devengo; no es identidad (la identidad vive en RBAC).
8
8
  *
9
9
  * `commissionTier` no es adorno: es lo que el motor usa para resolver CUÁNTO le toca a cada vendedor
@@ -17,6 +17,10 @@ export interface PrivateSellerDto {
17
17
  status: RetailUserStatusEnum;
18
18
  /** Teléfono del vendedor. Solo viaja si se pidió `includePhone=true`; `null` si no lo tiene. */
19
19
  phone?: string | null;
20
+ /** Cuenta del vendedor en RBAC; `null` si todavía no tiene usuario. */
21
+ cognitoSub?: string | null;
22
+ /** Alta del vendedor en el padrón (ISO); `null` si la fila no la trae. */
23
+ createdAt?: string | null;
20
24
  }
21
25
  /**
22
26
  * Respuesta de `GET /private/sellers?retailerId=…` — el padrón de una cadena, para máquinas.
@@ -1,5 +1,10 @@
1
1
  import type { RetailUserStatusEnum } from '../../../retailOrg/enums/RetailUserStatusEnum';
2
2
  import type { SellerTableSourceStatusEnum } from '../../enums/SellerTableSourceStatusEnum';
3
+ /** Rol del vendedor en RBAC: `key` es el `roleId` y `name` su nombre legible. */
4
+ export interface SellerTableRole {
5
+ key: string;
6
+ name: string;
7
+ }
3
8
  /** Una fila de la tabla de Vendedores: padrón + ventas de la ventana + meta + comisión. */
4
9
  export interface SellerTableRow {
5
10
  retailUserId: string;
@@ -11,15 +16,25 @@ export interface SellerTableRow {
11
16
  storeId: string | null;
12
17
  storeName: string | null;
13
18
  zoneName: string | null;
14
- /** Es el encargado (`managerRetailUserId`) de su tienda. */
19
+ /** Tiene el rol `store_manager`; si RBAC cae, es el encargado (`managerRetailUserId`) de su tienda. */
15
20
  isStoreAdmin: boolean;
21
+ /** Roles de RBAC en la cadena, sus zonas y tiendas; `null` si RBAC no contestó, `[]` sin cuenta o sin roles. */
22
+ roles: SellerTableRole[] | null;
23
+ /** Correo de su cuenta de RBAC; `null` sin cuenta, sin correo o con RBAC caído. */
24
+ email: string | null;
16
25
  /** Sin ventas en la ventana viaja `0`: el barrido es exhaustivo. */
17
26
  salesCount: number;
18
27
  placedCents: number;
19
28
  averageTicketCents: number | null;
20
29
  lastSaleAt: string | null;
21
- /** Δ % contra la misma ventana 7 días antes; `null` si la ventana pasa de 7 días o no hubo base. */
30
+ /** Clientes distintos de la ventana, sin canceladas; `null` si los totales vinieron del lake. */
31
+ customersServed: number | null;
32
+ /** Alta del vendedor en el padrón (ISO); `null` si no está en el padrón. */
33
+ memberSince: string | null;
34
+ /** Δ % de los últimos 7 días (al cierre de la ventana) contra los 7 anteriores; `null` si la semana base vendió 0. */
22
35
  weekOverWeekChangePct: number | null;
36
+ /** Colocación de las últimas 8 semanas, de la más vieja a la actual; `null` sin lake. */
37
+ weeklyPlacedCents: number[] | null;
23
38
  /**
24
39
  * Meta mensual (`monthCents` del mes de `to`, hora de CDMX) escalada a los días de la ventana:
25
40
  * `round(monthCents * días / 30)`. `null` sin meta, con metas caídas o con ventana > 90 días.
@@ -35,6 +50,10 @@ export interface SellerTableSources {
35
50
  roster: SellerTableSourceStatusEnum;
36
51
  goals: SellerTableSourceStatusEnum;
37
52
  commission: SellerTableSourceStatusEnum;
53
+ /** Roles y correo. */
54
+ rbac: SellerTableSourceStatusEnum;
55
+ /** «Todo» y la tendencia de 8 semanas; `DISABLED` con el flag del lake apagado. */
56
+ lake: SellerTableSourceStatusEnum;
38
57
  }
39
58
  /** Corte semanal del que sale `commissionCents`; días locales `YYYY-MM-DD`, ambos incluidos. */
40
59
  export interface SellerTableCommissionPeriod {
@@ -1,5 +1,6 @@
1
- /** Si una fuente de la tabla de Vendedores contestó (`OK`) o falló (`UNAVAILABLE`). */
1
+ /** Si una fuente de la tabla contestó (`OK`), falló (`UNAVAILABLE`) o está apagada por flag (`DISABLED`). */
2
2
  export declare enum SellerTableSourceStatusEnum {
3
3
  OK = "OK",
4
- UNAVAILABLE = "UNAVAILABLE"
4
+ UNAVAILABLE = "UNAVAILABLE",
5
+ DISABLED = "DISABLED"
5
6
  }
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SellerTableSourceStatusEnum = void 0;
4
- /** Si una fuente de la tabla de Vendedores contestó (`OK`) o falló (`UNAVAILABLE`). */
4
+ /** Si una fuente de la tabla contestó (`OK`), falló (`UNAVAILABLE`) o está apagada por flag (`DISABLED`). */
5
5
  var SellerTableSourceStatusEnum;
6
6
  (function (SellerTableSourceStatusEnum) {
7
7
  SellerTableSourceStatusEnum["OK"] = "OK";
8
8
  SellerTableSourceStatusEnum["UNAVAILABLE"] = "UNAVAILABLE";
9
+ SellerTableSourceStatusEnum["DISABLED"] = "DISABLED";
9
10
  })(SellerTableSourceStatusEnum || (exports.SellerTableSourceStatusEnum = SellerTableSourceStatusEnum = {}));
@@ -0,0 +1,2 @@
1
+ /** Máximo de llaves en `source.tags` (spec A 5.3). */
2
+ export declare const REWARD_TAGS_MAX_KEYS = 10;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.REWARD_TAGS_MAX_KEYS = void 0;
4
+ /** Máximo de llaves en `source.tags` (spec A 5.3). */
5
+ exports.REWARD_TAGS_MAX_KEYS = 10;
@@ -0,0 +1,13 @@
1
+ import { GrantFailedReasonEnum } from '../enums/GrantFailedReasonEnum';
2
+ import { RewardsMessageTypeEnum } from '../enums/RewardsMessageTypeEnum';
3
+ /**
4
+ * Aviso de que una entrega terminó SIN ningún ítem entregado (`FAILED` o `REJECTED`). Lo publica
5
+ * rewards-business en la cola registrada para `source.service` (spec A 6.5) para que el llamador
6
+ * libere lo que reservó. Una entrega `PARTIAL` no avisa. Es idempotente en el destino.
7
+ */
8
+ export declare class GrantFailedMessage {
9
+ messageType: RewardsMessageTypeEnum.GRANT_FAILED;
10
+ idempotencyKey: string;
11
+ grantId: string;
12
+ reason: GrantFailedReasonEnum;
13
+ }