@fiado/type-kit 3.87.0 → 3.89.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 (168) hide show
  1. package/_test_/unit/platformRbac/enums/__snapshots__/permissionBits.test.ts.snap +2 -1
  2. package/bin/index.d.ts +1 -0
  3. package/bin/index.js +4 -1
  4. package/bin/networkConnector/dtos/AssignLeadToGroupRequest.d.ts +3 -0
  5. package/bin/{credit/dtos/internal/DocumentSignRequest.js → networkConnector/dtos/AssignLeadToGroupRequest.js} +6 -5
  6. package/bin/networkConnector/dtos/CreateLeadGroupRequest.d.ts +5 -0
  7. package/bin/{credit/dtos/EarlyPaymentRequest.js → networkConnector/dtos/CreateLeadGroupRequest.js} +17 -18
  8. package/bin/networkConnector/dtos/CreateProfileRequest.d.ts +12 -0
  9. package/bin/{cognitoConnector/dtos/SignUpBackofficeRequest.js → networkConnector/dtos/CreateProfileRequest.js} +44 -33
  10. package/bin/networkConnector/dtos/DeletePhotoResponse.d.ts +4 -0
  11. package/bin/networkConnector/dtos/DeleteProfileResponse.d.ts +4 -0
  12. package/bin/networkConnector/dtos/GetPhotoUploadUrlRequest.d.ts +5 -0
  13. package/bin/{credit/dtos/CreditRequestCreate.js → networkConnector/dtos/GetPhotoUploadUrlRequest.js} +11 -8
  14. package/bin/networkConnector/dtos/LeadGroupResponse.d.ts +8 -0
  15. package/bin/networkConnector/dtos/LeadGroupResponse.js +2 -0
  16. package/bin/networkConnector/dtos/LeadResponse.d.ts +16 -0
  17. package/bin/networkConnector/dtos/LeadResponse.js +2 -0
  18. package/bin/networkConnector/dtos/ListLeadGroupsResponse.d.ts +5 -0
  19. package/bin/networkConnector/dtos/ListLeadGroupsResponse.js +2 -0
  20. package/bin/networkConnector/dtos/ListLeadsResponse.d.ts +5 -0
  21. package/bin/networkConnector/dtos/ListLeadsResponse.js +2 -0
  22. package/bin/networkConnector/dtos/ListProfilesResponse.d.ts +5 -0
  23. package/bin/networkConnector/dtos/ListProfilesResponse.js +2 -0
  24. package/bin/networkConnector/dtos/PhotoUploadUrlResponse.d.ts +5 -0
  25. package/bin/networkConnector/dtos/PhotoUploadUrlResponse.js +2 -0
  26. package/bin/networkConnector/dtos/ProfileResponse.d.ts +18 -0
  27. package/bin/networkConnector/dtos/ProfileResponse.js +2 -0
  28. package/bin/networkConnector/dtos/SaveLeadRequest.d.ts +9 -0
  29. package/bin/{credit/dtos/internal/CreditTransferLoancoRequest.js → networkConnector/dtos/SaveLeadRequest.js} +30 -19
  30. package/bin/networkConnector/dtos/SaveLeadResponse.d.ts +5 -0
  31. package/bin/networkConnector/dtos/SaveLeadResponse.js +2 -0
  32. package/bin/networkConnector/dtos/UpdateLeadGroupRequest.d.ts +4 -0
  33. package/bin/{credit/dtos/internal/CreditReversalRequest.js → networkConnector/dtos/UpdateLeadGroupRequest.js} +13 -12
  34. package/bin/networkConnector/dtos/UpdateProfileRequest.d.ts +13 -0
  35. package/bin/networkConnector/dtos/UpdateProfileRequest.js +87 -0
  36. package/bin/networkConnector/enums/LeadSourceEnum.d.ts +6 -0
  37. package/bin/networkConnector/enums/LeadSourceEnum.js +10 -0
  38. package/bin/networkConnector/enums/LeadStatusEnum.d.ts +6 -0
  39. package/bin/networkConnector/enums/LeadStatusEnum.js +10 -0
  40. package/bin/networkConnector/enums/PhotoContentType.d.ts +5 -0
  41. package/bin/networkConnector/enums/PhotoContentType.js +9 -0
  42. package/bin/networkConnector/enums/ProfileStatusEnum.d.ts +5 -0
  43. package/bin/networkConnector/enums/ProfileStatusEnum.js +9 -0
  44. package/bin/networkConnector/index.d.ts +21 -0
  45. package/bin/networkConnector/index.js +42 -0
  46. package/bin/platformRbac/dtos/AuthContext.d.ts +6 -0
  47. package/bin/platformRbac/dtos/CreateUserFieldRequest.d.ts +10 -0
  48. package/bin/platformRbac/dtos/CreateUserFieldRequest.js +54 -0
  49. package/bin/platformRbac/dtos/InjectableUserAttributesResponse.d.ts +5 -0
  50. package/bin/platformRbac/dtos/InjectableUserAttributesResponse.js +2 -0
  51. package/bin/platformRbac/dtos/UpdateUserFieldRequest.d.ts +8 -0
  52. package/bin/platformRbac/dtos/UpdateUserFieldRequest.js +51 -0
  53. package/bin/platformRbac/dtos/UserFieldDef.d.ts +19 -0
  54. package/bin/platformRbac/dtos/UserFieldDef.js +2 -0
  55. package/bin/platformRbac/enums/Permission.d.ts +1 -0
  56. package/bin/platformRbac/enums/Permission.js +5 -0
  57. package/bin/platformRbac/enums/UserFieldType.d.ts +5 -0
  58. package/bin/platformRbac/enums/UserFieldType.js +9 -0
  59. package/bin/platformRbac/index.d.ts +5 -0
  60. package/bin/platformRbac/index.js +9 -1
  61. package/package.json +1 -1
  62. package/src/index.ts +3 -0
  63. package/src/networkConnector/dtos/AssignLeadToGroupRequest.ts +6 -0
  64. package/src/networkConnector/dtos/CreateLeadGroupRequest.ts +8 -0
  65. package/src/networkConnector/dtos/CreateProfileRequest.ts +15 -0
  66. package/src/networkConnector/dtos/DeletePhotoResponse.ts +4 -0
  67. package/src/networkConnector/dtos/DeleteProfileResponse.ts +4 -0
  68. package/src/networkConnector/dtos/GetPhotoUploadUrlRequest.ts +8 -0
  69. package/src/networkConnector/dtos/LeadGroupResponse.ts +8 -0
  70. package/src/networkConnector/dtos/LeadResponse.ts +17 -0
  71. package/src/networkConnector/dtos/ListLeadGroupsResponse.ts +6 -0
  72. package/src/networkConnector/dtos/ListLeadsResponse.ts +6 -0
  73. package/src/networkConnector/dtos/ListProfilesResponse.ts +6 -0
  74. package/src/networkConnector/dtos/PhotoUploadUrlResponse.ts +5 -0
  75. package/src/networkConnector/dtos/ProfileResponse.ts +19 -0
  76. package/src/networkConnector/dtos/SaveLeadRequest.ts +12 -0
  77. package/src/networkConnector/dtos/SaveLeadResponse.ts +5 -0
  78. package/src/networkConnector/dtos/UpdateLeadGroupRequest.ts +7 -0
  79. package/src/networkConnector/dtos/UpdateProfileRequest.ts +16 -0
  80. package/src/networkConnector/enums/LeadSourceEnum.ts +6 -0
  81. package/src/networkConnector/enums/LeadStatusEnum.ts +6 -0
  82. package/src/networkConnector/enums/PhotoContentType.ts +5 -0
  83. package/src/networkConnector/enums/ProfileStatusEnum.ts +5 -0
  84. package/src/networkConnector/index.ts +30 -0
  85. package/src/platformRbac/dtos/AuthContext.ts +6 -0
  86. package/src/platformRbac/dtos/CreateUserFieldRequest.ts +13 -0
  87. package/src/platformRbac/dtos/InjectableUserAttributesResponse.ts +5 -0
  88. package/src/platformRbac/dtos/UpdateUserFieldRequest.ts +11 -0
  89. package/src/platformRbac/dtos/UserFieldDef.ts +20 -0
  90. package/src/platformRbac/enums/Permission.ts +5 -0
  91. package/src/platformRbac/enums/UserFieldType.ts +5 -0
  92. package/src/platformRbac/index.ts +11 -0
  93. package/bin/benefitCenter/dtos/BackofficeLeafOverrideUpsertRequest.d.ts +0 -22
  94. package/bin/benefitCenter/dtos/BackofficeLeafOverrideUpsertRequest.js +0 -91
  95. package/bin/benefitCenter/dtos/FieldOverrideRequest.d.ts +0 -19
  96. package/bin/benefitCenter/dtos/FieldOverrideRequest.js +0 -80
  97. package/bin/benefitCenter/dtos/InputSchemaOverrideRequest.d.ts +0 -9
  98. package/bin/benefitCenter/dtos/InputSchemaOverrideRequest.js +0 -29
  99. package/bin/benefitCenter/enums/LeafOverrideStatusEnum.d.ts +0 -10
  100. package/bin/benefitCenter/enums/LeafOverrideStatusEnum.js +0 -14
  101. package/bin/cognitoBackofficeConnector/dtos/MfaPoolConfig.d.ts +0 -7
  102. package/bin/cognitoBackofficeConnector/dtos/MfaPoolConfig.js +0 -36
  103. package/bin/cognitoBackofficeConnector/validators/MfaTypesRequiresOne.d.ts +0 -17
  104. package/bin/cognitoBackofficeConnector/validators/MfaTypesRequiresOne.js +0 -39
  105. package/bin/cognitoConnector/dtos/SignUpBackofficeRequest.d.ts +0 -13
  106. package/bin/comission-business/dtos/GenerateReportRequest.d.ts +0 -10
  107. package/bin/comission-business/dtos/GenerateReportResponse.d.ts +0 -6
  108. package/bin/comission-business/enums/PaymentStatusEnum.d.ts +0 -5
  109. package/bin/comission-business/enums/PaymentStatusEnum.js +0 -9
  110. package/bin/credit/dtos/CreditBannerStateResponse.d.ts +0 -10
  111. package/bin/credit/dtos/CreditBannerStateResponse.js +0 -6
  112. package/bin/credit/dtos/CreditDetailResponse.d.ts +0 -23
  113. package/bin/credit/dtos/CreditDetailResponse.js +0 -6
  114. package/bin/credit/dtos/CreditEligibilityResponse.d.ts +0 -9
  115. package/bin/credit/dtos/CreditEligibilityResponse.js +0 -6
  116. package/bin/credit/dtos/CreditMovementResponse.d.ts +0 -20
  117. package/bin/credit/dtos/CreditMovementResponse.js +0 -9
  118. package/bin/credit/dtos/CreditRequestCreate.d.ts +0 -4
  119. package/bin/credit/dtos/CreditRequestResponse.d.ts +0 -7
  120. package/bin/credit/dtos/CreditRequestResponse.js +0 -6
  121. package/bin/credit/dtos/CreditScheduleResponse.d.ts +0 -18
  122. package/bin/credit/dtos/CreditScheduleResponse.js +0 -9
  123. package/bin/credit/dtos/CreditStatementResponse.d.ts +0 -11
  124. package/bin/credit/dtos/CreditStatementResponse.js +0 -9
  125. package/bin/credit/dtos/EarlyPaymentRequest.d.ts +0 -7
  126. package/bin/credit/dtos/EarlyPaymentResponse.d.ts +0 -11
  127. package/bin/credit/dtos/EarlyPaymentResponse.js +0 -6
  128. package/bin/credit/dtos/internal/CreditBalanceRequest.d.ts +0 -3
  129. package/bin/credit/dtos/internal/CreditBalanceRequest.js +0 -21
  130. package/bin/credit/dtos/internal/CreditCollectionRequest.d.ts +0 -11
  131. package/bin/credit/dtos/internal/CreditCollectionRequest.js +0 -59
  132. package/bin/credit/dtos/internal/CreditCollectionResponse.d.ts +0 -12
  133. package/bin/credit/dtos/internal/CreditCollectionResponse.js +0 -6
  134. package/bin/credit/dtos/internal/CreditDisbursementRequest.d.ts +0 -7
  135. package/bin/credit/dtos/internal/CreditDisbursementRequest.js +0 -43
  136. package/bin/credit/dtos/internal/CreditDisbursementResponse.d.ts +0 -8
  137. package/bin/credit/dtos/internal/CreditDisbursementResponse.js +0 -6
  138. package/bin/credit/dtos/internal/CreditProfileRequest.d.ts +0 -3
  139. package/bin/credit/dtos/internal/CreditProfileRequest.js +0 -23
  140. package/bin/credit/dtos/internal/CreditReversalRequest.d.ts +0 -5
  141. package/bin/credit/dtos/internal/CreditReversalResponse.d.ts +0 -7
  142. package/bin/credit/dtos/internal/CreditReversalResponse.js +0 -6
  143. package/bin/credit/dtos/internal/CreditTransferLoancoRequest.d.ts +0 -8
  144. package/bin/credit/dtos/internal/CreditTransferLoancoResponse.d.ts +0 -8
  145. package/bin/credit/dtos/internal/CreditTransferLoancoResponse.js +0 -6
  146. package/bin/credit/dtos/internal/DocumentSignRequest.d.ts +0 -3
  147. package/bin/credit/dtos/internal/LienApplyRequest.d.ts +0 -7
  148. package/bin/credit/dtos/internal/LienApplyRequest.js +0 -45
  149. package/bin/credit/enums/CollectionFrequencyEnum.d.ts +0 -5
  150. package/bin/credit/enums/CollectionFrequencyEnum.js +0 -9
  151. package/bin/credit/enums/CreditOperationEnum.d.ts +0 -11
  152. package/bin/credit/enums/CreditOperationEnum.js +0 -15
  153. package/bin/credit/enums/CreditStatusEnum.d.ts +0 -12
  154. package/bin/credit/enums/CreditStatusEnum.js +0 -16
  155. package/bin/credit/enums/DelinquencyLevelEnum.d.ts +0 -9
  156. package/bin/credit/enums/DelinquencyLevelEnum.js +0 -13
  157. package/bin/credit/enums/DocumentTypeEnum.d.ts +0 -8
  158. package/bin/credit/enums/DocumentTypeEnum.js +0 -12
  159. package/bin/credit/enums/OfferStatusEnum.d.ts +0 -8
  160. package/bin/credit/enums/OfferStatusEnum.js +0 -12
  161. package/bin/credit/enums/PaymentTypeEnum.d.ts +0 -9
  162. package/bin/credit/enums/PaymentTypeEnum.js +0 -13
  163. package/bin/credit/enums/ReconciliationStatusEnum.d.ts +0 -6
  164. package/bin/credit/enums/ReconciliationStatusEnum.js +0 -10
  165. package/bin/credit/enums/TransferStatusEnum.d.ts +0 -8
  166. package/bin/credit/enums/TransferStatusEnum.js +0 -12
  167. /package/bin/{comission-business/dtos/GenerateReportRequest.js → networkConnector/dtos/DeletePhotoResponse.js} +0 -0
  168. /package/bin/{comission-business/dtos/GenerateReportResponse.js → networkConnector/dtos/DeleteProfileResponse.js} +0 -0
@@ -0,0 +1,6 @@
1
+ export declare enum LeadSourceEnum {
2
+ QR_SCAN = "QR_SCAN",
3
+ DIRECT_LINK = "DIRECT_LINK",
4
+ SHARED_CONTACT = "SHARED_CONTACT",
5
+ WALLET_PASS = "WALLET_PASS"
6
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LeadSourceEnum = void 0;
4
+ var LeadSourceEnum;
5
+ (function (LeadSourceEnum) {
6
+ LeadSourceEnum["QR_SCAN"] = "QR_SCAN";
7
+ LeadSourceEnum["DIRECT_LINK"] = "DIRECT_LINK";
8
+ LeadSourceEnum["SHARED_CONTACT"] = "SHARED_CONTACT";
9
+ LeadSourceEnum["WALLET_PASS"] = "WALLET_PASS";
10
+ })(LeadSourceEnum || (exports.LeadSourceEnum = LeadSourceEnum = {}));
@@ -0,0 +1,6 @@
1
+ export declare enum LeadStatusEnum {
2
+ NEW = "NEW",
3
+ CONTACTED = "CONTACTED",
4
+ CONVERTED = "CONVERTED",
5
+ ARCHIVED = "ARCHIVED"
6
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LeadStatusEnum = void 0;
4
+ var LeadStatusEnum;
5
+ (function (LeadStatusEnum) {
6
+ LeadStatusEnum["NEW"] = "NEW";
7
+ LeadStatusEnum["CONTACTED"] = "CONTACTED";
8
+ LeadStatusEnum["CONVERTED"] = "CONVERTED";
9
+ LeadStatusEnum["ARCHIVED"] = "ARCHIVED";
10
+ })(LeadStatusEnum || (exports.LeadStatusEnum = LeadStatusEnum = {}));
@@ -0,0 +1,5 @@
1
+ export declare enum PhotoContentType {
2
+ JPEG = "image/jpeg",
3
+ PNG = "image/png",
4
+ WEBP = "image/webp"
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PhotoContentType = void 0;
4
+ var PhotoContentType;
5
+ (function (PhotoContentType) {
6
+ PhotoContentType["JPEG"] = "image/jpeg";
7
+ PhotoContentType["PNG"] = "image/png";
8
+ PhotoContentType["WEBP"] = "image/webp";
9
+ })(PhotoContentType || (exports.PhotoContentType = PhotoContentType = {}));
@@ -0,0 +1,5 @@
1
+ export declare enum ProfileStatusEnum {
2
+ ACTIVE = "ACTIVE",
3
+ INACTIVE = "INACTIVE",
4
+ DRAFT = "DRAFT"
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProfileStatusEnum = void 0;
4
+ var ProfileStatusEnum;
5
+ (function (ProfileStatusEnum) {
6
+ ProfileStatusEnum["ACTIVE"] = "ACTIVE";
7
+ ProfileStatusEnum["INACTIVE"] = "INACTIVE";
8
+ ProfileStatusEnum["DRAFT"] = "DRAFT";
9
+ })(ProfileStatusEnum || (exports.ProfileStatusEnum = ProfileStatusEnum = {}));
@@ -0,0 +1,21 @@
1
+ export * from './enums/ProfileStatusEnum';
2
+ export * from './enums/LeadSourceEnum';
3
+ export * from './enums/LeadStatusEnum';
4
+ export * from './enums/PhotoContentType';
5
+ export * from './dtos/CreateProfileRequest';
6
+ export * from './dtos/UpdateProfileRequest';
7
+ export * from './dtos/ProfileResponse';
8
+ export * from './dtos/ListProfilesResponse';
9
+ export * from './dtos/DeleteProfileResponse';
10
+ export * from './dtos/SaveLeadRequest';
11
+ export * from './dtos/SaveLeadResponse';
12
+ export * from './dtos/LeadResponse';
13
+ export * from './dtos/ListLeadsResponse';
14
+ export * from './dtos/CreateLeadGroupRequest';
15
+ export * from './dtos/UpdateLeadGroupRequest';
16
+ export * from './dtos/AssignLeadToGroupRequest';
17
+ export * from './dtos/LeadGroupResponse';
18
+ export * from './dtos/ListLeadGroupsResponse';
19
+ export * from './dtos/GetPhotoUploadUrlRequest';
20
+ export * from './dtos/PhotoUploadUrlResponse';
21
+ export * from './dtos/DeletePhotoResponse';
@@ -0,0 +1,42 @@
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/ProfileStatusEnum"), exports);
19
+ __exportStar(require("./enums/LeadSourceEnum"), exports);
20
+ __exportStar(require("./enums/LeadStatusEnum"), exports);
21
+ __exportStar(require("./enums/PhotoContentType"), exports);
22
+ // Profile DTOs
23
+ __exportStar(require("./dtos/CreateProfileRequest"), exports);
24
+ __exportStar(require("./dtos/UpdateProfileRequest"), exports);
25
+ __exportStar(require("./dtos/ProfileResponse"), exports);
26
+ __exportStar(require("./dtos/ListProfilesResponse"), exports);
27
+ __exportStar(require("./dtos/DeleteProfileResponse"), exports);
28
+ // Lead DTOs
29
+ __exportStar(require("./dtos/SaveLeadRequest"), exports);
30
+ __exportStar(require("./dtos/SaveLeadResponse"), exports);
31
+ __exportStar(require("./dtos/LeadResponse"), exports);
32
+ __exportStar(require("./dtos/ListLeadsResponse"), exports);
33
+ // Lead Group DTOs
34
+ __exportStar(require("./dtos/CreateLeadGroupRequest"), exports);
35
+ __exportStar(require("./dtos/UpdateLeadGroupRequest"), exports);
36
+ __exportStar(require("./dtos/AssignLeadToGroupRequest"), exports);
37
+ __exportStar(require("./dtos/LeadGroupResponse"), exports);
38
+ __exportStar(require("./dtos/ListLeadGroupsResponse"), exports);
39
+ // Photo DTOs
40
+ __exportStar(require("./dtos/GetPhotoUploadUrlRequest"), exports);
41
+ __exportStar(require("./dtos/PhotoUploadUrlResponse"), exports);
42
+ __exportStar(require("./dtos/DeletePhotoResponse"), exports);
@@ -24,4 +24,10 @@ export interface AuthContext {
24
24
  permVer?: number;
25
25
  /** @deprecated DEC-RBAC-008: epoch de permisos. El authorizer ya no lo chequea. */
26
26
  permsEpoch?: number;
27
+ /**
28
+ * Metadata de negocio por-usuario inyectada por jwt-inyector (campos personalizados del tenant
29
+ * marcados injectToToken). NO es autorización: NUNCA usar en un guard/decisión de acceso (DEC-RBAC-020).
30
+ * El gateway-adapter (buildAuthContextFromToken) parsea el claim JSON a este objeto.
31
+ */
32
+ customAttributes?: Record<string, string>;
27
33
  }
@@ -0,0 +1,10 @@
1
+ import { UserFieldType } from '../enums/UserFieldType';
2
+ /** Body del POST /backoffice/tenants/{tenantId}/user-fields. La validación de `options` por `type` (no vacío si select) la hace el manager. */
3
+ export declare class CreateUserFieldRequest {
4
+ key: string;
5
+ label: string;
6
+ type: UserFieldType;
7
+ options?: string[];
8
+ required: boolean;
9
+ injectToToken: boolean;
10
+ }
@@ -0,0 +1,54 @@
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.CreateUserFieldRequest = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ const UserFieldType_1 = require("../enums/UserFieldType");
16
+ /** Body del POST /backoffice/tenants/{tenantId}/user-fields. La validación de `options` por `type` (no vacío si select) la hace el manager. */
17
+ class CreateUserFieldRequest {
18
+ }
19
+ exports.CreateUserFieldRequest = CreateUserFieldRequest;
20
+ __decorate([
21
+ (0, class_transformer_1.Expose)(),
22
+ (0, class_validator_1.IsString)(),
23
+ (0, class_validator_1.Matches)(/^[a-z][a-zA-Z0-9_]*$/, { message: 'key debe ser slug ^[a-z][a-zA-Z0-9_]*$' }),
24
+ __metadata("design:type", String)
25
+ ], CreateUserFieldRequest.prototype, "key", void 0);
26
+ __decorate([
27
+ (0, class_transformer_1.Expose)(),
28
+ (0, class_validator_1.IsString)(),
29
+ (0, class_validator_1.MaxLength)(80),
30
+ __metadata("design:type", String)
31
+ ], CreateUserFieldRequest.prototype, "label", void 0);
32
+ __decorate([
33
+ (0, class_transformer_1.Expose)(),
34
+ (0, class_validator_1.IsEnum)(UserFieldType_1.UserFieldType),
35
+ __metadata("design:type", String)
36
+ ], CreateUserFieldRequest.prototype, "type", void 0);
37
+ __decorate([
38
+ (0, class_transformer_1.Expose)(),
39
+ (0, class_validator_1.IsOptional)(),
40
+ (0, class_validator_1.IsArray)(),
41
+ (0, class_validator_1.ArrayNotEmpty)(),
42
+ (0, class_validator_1.IsString)({ each: true }),
43
+ __metadata("design:type", Array)
44
+ ], CreateUserFieldRequest.prototype, "options", void 0);
45
+ __decorate([
46
+ (0, class_transformer_1.Expose)(),
47
+ (0, class_validator_1.IsBoolean)(),
48
+ __metadata("design:type", Boolean)
49
+ ], CreateUserFieldRequest.prototype, "required", void 0);
50
+ __decorate([
51
+ (0, class_transformer_1.Expose)(),
52
+ (0, class_validator_1.IsBoolean)(),
53
+ __metadata("design:type", Boolean)
54
+ ], CreateUserFieldRequest.prototype, "injectToToken", void 0);
@@ -0,0 +1,5 @@
1
+ /** Respuesta del GET /internal/users/{cognitoSub}/injectable-attributes (consumida por jwt-inyector). */
2
+ export interface InjectableUserAttributesResponse {
3
+ /** Solo los campos injectToToken && enabled del tenant que tengan valor en el usuario. */
4
+ customAttributes: Record<string, string>;
5
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,8 @@
1
+ /** Body del PATCH /backoffice/tenants/{tenantId}/user-fields/{key}. `key` y `type` NO son editables (inmutables, DEC-RBAC-016). */
2
+ export declare class UpdateUserFieldRequest {
3
+ label?: string;
4
+ options?: string[];
5
+ required?: boolean;
6
+ injectToToken?: boolean;
7
+ enabled?: boolean;
8
+ }
@@ -0,0 +1,51 @@
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.UpdateUserFieldRequest = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ /** Body del PATCH /backoffice/tenants/{tenantId}/user-fields/{key}. `key` y `type` NO son editables (inmutables, DEC-RBAC-016). */
16
+ class UpdateUserFieldRequest {
17
+ }
18
+ exports.UpdateUserFieldRequest = UpdateUserFieldRequest;
19
+ __decorate([
20
+ (0, class_transformer_1.Expose)(),
21
+ (0, class_validator_1.IsOptional)(),
22
+ (0, class_validator_1.IsString)(),
23
+ (0, class_validator_1.MaxLength)(80),
24
+ __metadata("design:type", String)
25
+ ], UpdateUserFieldRequest.prototype, "label", void 0);
26
+ __decorate([
27
+ (0, class_transformer_1.Expose)(),
28
+ (0, class_validator_1.IsOptional)(),
29
+ (0, class_validator_1.IsArray)(),
30
+ (0, class_validator_1.ArrayNotEmpty)(),
31
+ (0, class_validator_1.IsString)({ each: true }),
32
+ __metadata("design:type", Array)
33
+ ], UpdateUserFieldRequest.prototype, "options", void 0);
34
+ __decorate([
35
+ (0, class_transformer_1.Expose)(),
36
+ (0, class_validator_1.IsOptional)(),
37
+ (0, class_validator_1.IsBoolean)(),
38
+ __metadata("design:type", Boolean)
39
+ ], UpdateUserFieldRequest.prototype, "required", void 0);
40
+ __decorate([
41
+ (0, class_transformer_1.Expose)(),
42
+ (0, class_validator_1.IsOptional)(),
43
+ (0, class_validator_1.IsBoolean)(),
44
+ __metadata("design:type", Boolean)
45
+ ], UpdateUserFieldRequest.prototype, "injectToToken", void 0);
46
+ __decorate([
47
+ (0, class_transformer_1.Expose)(),
48
+ (0, class_validator_1.IsOptional)(),
49
+ (0, class_validator_1.IsBoolean)(),
50
+ __metadata("design:type", Boolean)
51
+ ], UpdateUserFieldRequest.prototype, "enabled", void 0);
@@ -0,0 +1,19 @@
1
+ import type { UserFieldType } from '../enums/UserFieldType';
2
+ /**
3
+ * Definición de un campo personalizado de usuario, embebida en PlatformTenantConfig.userFieldDefs.
4
+ * El `key` es inmutable (clave en el map de valores y en el claim). `enabled:false` = soft-disable.
5
+ * Timestamps inline: los setea el manager a mano (Dynamoose no mantiene sub-objetos inline). DEC-RBAC-016.
6
+ */
7
+ export interface UserFieldDef {
8
+ key: string;
9
+ label: string;
10
+ type: UserFieldType;
11
+ options?: string[];
12
+ required: boolean;
13
+ injectToToken: boolean;
14
+ enabled: boolean;
15
+ createdAt: number;
16
+ updatedAt: number;
17
+ createdBy: string;
18
+ updatedBy: string;
19
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -51,6 +51,7 @@ export declare enum Permission {
51
51
  PLATFORM_ROLE_UPDATE = "platform.role.update",
52
52
  PLATFORM_ROLE_DELETE = "platform.role.delete",
53
53
  PLATFORM_AUDIT_VIEW = "platform.audit.view",
54
+ PLATFORM_TENANT_USERFIELDS_MANAGE = "platform.tenant.userfields.manage",
54
55
  TENANT_USER_CREATE = "tenant.user.create",
55
56
  TENANT_USER_CREATE_LATERAL = "tenant.user.create.lateral",
56
57
  TENANT_USER_READ = "tenant.user.read",
@@ -63,6 +63,7 @@ var Permission;
63
63
  Permission["PLATFORM_ROLE_UPDATE"] = "platform.role.update";
64
64
  Permission["PLATFORM_ROLE_DELETE"] = "platform.role.delete";
65
65
  Permission["PLATFORM_AUDIT_VIEW"] = "platform.audit.view";
66
+ Permission["PLATFORM_TENANT_USERFIELDS_MANAGE"] = "platform.tenant.userfields.manage";
66
67
  // ====================================================
67
68
  // TENANT — operaciones dentro del silo de un tenant
68
69
  // ====================================================
@@ -321,6 +322,10 @@ exports.PERMISSION_BIT_ORDER = [
321
322
  // Append-only: nuevo permiso agregado 2026-06-18 (DEC-A2-02). Va al FINAL para no correr los bits
322
323
  // existentes (PERMS_VERSION cambia, pero los índices previos se conservan).
323
324
  Permission.AGENTS_PERSON_CREATE,
325
+ // Append-only 2026-06-18 (DEC-RBAC-017): catálogo de campos personalizados por tenant. Al FINAL para
326
+ // no correr bits existentes. (El bitset está deprecado por token-flaco, pero el orden se mantiene
327
+ // sincronizado con el enum para que el test de bits no rompa.)
328
+ Permission.PLATFORM_TENANT_USERFIELDS_MANAGE,
324
329
  ];
325
330
  function djb2(input) {
326
331
  let h = 5381;
@@ -0,0 +1,5 @@
1
+ /** Tipo de un campo personalizado de usuario. text = texto libre; select = lista cerrada de opciones. */
2
+ export declare enum UserFieldType {
3
+ TEXT = "text",
4
+ SELECT = "select"
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserFieldType = void 0;
4
+ /** Tipo de un campo personalizado de usuario. text = texto libre; select = lista cerrada de opciones. */
5
+ var UserFieldType;
6
+ (function (UserFieldType) {
7
+ UserFieldType["TEXT"] = "text";
8
+ UserFieldType["SELECT"] = "select";
9
+ })(UserFieldType || (exports.UserFieldType = UserFieldType = {}));
@@ -29,3 +29,8 @@ export type { CreateTenantResponse } from './dtos/CreateTenantResponse';
29
29
  export * from './dtos/UpdateTenantSecurityPolicyRequest';
30
30
  export type { TenantSecurityPolicyResponse } from './dtos/TenantSecurityPolicyResponse';
31
31
  export { TenantType, TENANT_TYPES, levelsOf, tableSuffixForLevel, scopeRankOrder } from './tenantTypes';
32
+ export { UserFieldType } from './enums/UserFieldType';
33
+ export type { UserFieldDef } from './dtos/UserFieldDef';
34
+ export * from './dtos/CreateUserFieldRequest';
35
+ export * from './dtos/UpdateUserFieldRequest';
36
+ export type { InjectableUserAttributesResponse } from './dtos/InjectableUserAttributesResponse';
@@ -23,7 +23,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
23
23
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.scopeRankOrder = exports.tableSuffixForLevel = exports.levelsOf = exports.TENANT_TYPES = exports.TenantType = exports.AuthorizeDenyReason = exports.PermissionCategory = exports.PermissionScope = exports.bitsToPermissions = exports.permissionsToBits = exports.PERMS_VERSION = exports.PERMISSION_BIT_ORDER = exports.Permission = void 0;
26
+ exports.UserFieldType = exports.scopeRankOrder = exports.tableSuffixForLevel = exports.levelsOf = exports.TENANT_TYPES = exports.TenantType = exports.AuthorizeDenyReason = exports.PermissionCategory = exports.PermissionScope = exports.bitsToPermissions = exports.permissionsToBits = exports.PERMS_VERSION = exports.PERMISSION_BIT_ORDER = exports.Permission = void 0;
27
27
  var Permission_1 = require("./enums/Permission");
28
28
  Object.defineProperty(exports, "Permission", { enumerable: true, get: function () { return Permission_1.Permission; } });
29
29
  Object.defineProperty(exports, "PERMISSION_BIT_ORDER", { enumerable: true, get: function () { return Permission_1.PERMISSION_BIT_ORDER; } });
@@ -73,3 +73,11 @@ Object.defineProperty(exports, "TENANT_TYPES", { enumerable: true, get: function
73
73
  Object.defineProperty(exports, "levelsOf", { enumerable: true, get: function () { return tenantTypes_1.levelsOf; } });
74
74
  Object.defineProperty(exports, "tableSuffixForLevel", { enumerable: true, get: function () { return tenantTypes_1.tableSuffixForLevel; } });
75
75
  Object.defineProperty(exports, "scopeRankOrder", { enumerable: true, get: function () { return tenantTypes_1.scopeRankOrder; } });
76
+ // Campos personalizados de usuario por tenant — embebidos en PlatformTenantConfig.userFieldDefs.
77
+ // UserFieldType es enum (export de valor); UserFieldDef es interface plain (type-only).
78
+ var UserFieldType_1 = require("./enums/UserFieldType");
79
+ Object.defineProperty(exports, "UserFieldType", { enumerable: true, get: function () { return UserFieldType_1.UserFieldType; } });
80
+ // DTOs de endpoints user-fields. Create/Update Request llevan decoradores class-validator → export de valor.
81
+ // InjectableUserAttributesResponse es interface plain (consumida por jwt-inyector) → type-only.
82
+ __exportStar(require("./dtos/CreateUserFieldRequest"), exports);
83
+ __exportStar(require("./dtos/UpdateUserFieldRequest"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiado/type-kit",
3
- "version": "3.87.0",
3
+ "version": "3.89.0",
4
4
  "description": "",
5
5
  "main": "bin/index.js",
6
6
  "types": "bin/index.d.ts",
package/src/index.ts CHANGED
@@ -85,5 +85,8 @@ export * as PlatformRbac from './platformRbac';
85
85
  export * as Remittance from './remittance';
86
86
  export * as WalletFunding from './walletFunding';
87
87
  export * as TotpSecurity from './totpSecurity';
88
+ // NetworkConnector: módulo del lambda fiado-network-business (Access Card / Digital Business Card).
89
+ // Contiene DTOs y enums para perfiles, leads, lead groups y fotos.
90
+ export * as NetworkConnector from './networkConnector';
88
91
  export * from './messaging';
89
92
  export * from './complaint';
@@ -0,0 +1,6 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsString } from 'class-validator';
3
+
4
+ export class AssignLeadToGroupRequest {
5
+ @Expose() @IsString() leadId!: string;
6
+ }
@@ -0,0 +1,8 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsString, IsOptional, MaxLength, MinLength } from 'class-validator';
3
+
4
+ export class CreateLeadGroupRequest {
5
+ @Expose() @IsString() @MinLength(1) @MaxLength(100) name!: string;
6
+ @Expose() @IsOptional() @IsString() @MaxLength(500) description?: string;
7
+ @Expose() @IsString() profileId!: string;
8
+ }
@@ -0,0 +1,15 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsString, IsOptional, IsObject, MaxLength, MinLength } from 'class-validator';
3
+
4
+ export class CreateProfileRequest {
5
+ @Expose() @IsString() @MinLength(1) @MaxLength(100) firstName!: string;
6
+ @Expose() @IsString() @MinLength(1) @MaxLength(100) lastName!: string;
7
+ @Expose() @IsString() @MinLength(1) @MaxLength(200) title!: string;
8
+ @Expose() @IsString() @MinLength(1) @MaxLength(200) company!: string;
9
+ @Expose() @IsString() @MinLength(2) @MaxLength(100) slug!: string;
10
+ @Expose() @IsString() directoryId!: string;
11
+ @Expose() @IsOptional() @IsString() phone?: string;
12
+ @Expose() @IsOptional() @IsString() email?: string;
13
+ @Expose() @IsOptional() @IsString() @MaxLength(500) bio?: string;
14
+ @Expose() @IsOptional() @IsObject() socialLinks?: Record<string, string>;
15
+ }
@@ -0,0 +1,4 @@
1
+ export interface DeletePhotoResponse {
2
+ deleted: boolean;
3
+ profileId: string;
4
+ }
@@ -0,0 +1,4 @@
1
+ export interface DeleteProfileResponse {
2
+ deleted: boolean;
3
+ profileId: string;
4
+ }
@@ -0,0 +1,8 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsString, IsOptional, IsEnum } from 'class-validator';
3
+ import { PhotoContentType } from '../enums/PhotoContentType';
4
+
5
+ export class GetPhotoUploadUrlRequest {
6
+ @Expose() @IsString() profileId!: string;
7
+ @Expose() @IsOptional() @IsEnum(PhotoContentType) contentType?: PhotoContentType;
8
+ }
@@ -0,0 +1,8 @@
1
+ export interface LeadGroupResponse {
2
+ id: string;
3
+ profileId: string;
4
+ name: string;
5
+ description?: string;
6
+ createdAt: number;
7
+ updatedAt: number;
8
+ }
@@ -0,0 +1,17 @@
1
+ import { LeadSourceEnum } from '../enums/LeadSourceEnum';
2
+ import { LeadStatusEnum } from '../enums/LeadStatusEnum';
3
+
4
+ export interface LeadResponse {
5
+ id: string;
6
+ profileId: string;
7
+ name: string;
8
+ email?: string;
9
+ phone?: string;
10
+ company?: string;
11
+ notes?: string;
12
+ source: LeadSourceEnum;
13
+ status: LeadStatusEnum;
14
+ groupId?: string;
15
+ createdAt: number;
16
+ updatedAt: number;
17
+ }
@@ -0,0 +1,6 @@
1
+ import { LeadGroupResponse } from './LeadGroupResponse';
2
+
3
+ export interface ListLeadGroupsResponse {
4
+ groups: LeadGroupResponse[];
5
+ total: number;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { LeadResponse } from './LeadResponse';
2
+
3
+ export interface ListLeadsResponse {
4
+ leads: LeadResponse[];
5
+ total: number;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { ProfileResponse } from './ProfileResponse';
2
+
3
+ export interface ListProfilesResponse {
4
+ profiles: ProfileResponse[];
5
+ total: number;
6
+ }
@@ -0,0 +1,5 @@
1
+ export interface PhotoUploadUrlResponse {
2
+ uploadUrl: string;
3
+ photoUrl: string;
4
+ expiresIn: number;
5
+ }
@@ -0,0 +1,19 @@
1
+ import { ProfileStatusEnum } from '../enums/ProfileStatusEnum';
2
+
3
+ export interface ProfileResponse {
4
+ id: string;
5
+ slug: string;
6
+ firstName: string;
7
+ lastName: string;
8
+ title: string;
9
+ company: string;
10
+ phone?: string;
11
+ email?: string;
12
+ photoUrl?: string;
13
+ bio?: string;
14
+ socialLinks?: Record<string, string>;
15
+ status: ProfileStatusEnum;
16
+ directoryId: string;
17
+ createdAt: number;
18
+ updatedAt: number;
19
+ }
@@ -0,0 +1,12 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsString, IsOptional, IsEnum, IsEmail, MaxLength, MinLength } from 'class-validator';
3
+ import { LeadSourceEnum } from '../enums/LeadSourceEnum';
4
+
5
+ export class SaveLeadRequest {
6
+ @Expose() @IsString() @MinLength(1) @MaxLength(200) name!: string;
7
+ @Expose() @IsOptional() @IsEmail() email?: string;
8
+ @Expose() @IsOptional() @IsString() phone?: string;
9
+ @Expose() @IsOptional() @IsString() @MaxLength(200) company?: string;
10
+ @Expose() @IsOptional() @IsString() @MaxLength(500) notes?: string;
11
+ @Expose() @IsOptional() @IsEnum(LeadSourceEnum) source?: LeadSourceEnum;
12
+ }
@@ -0,0 +1,5 @@
1
+ export interface SaveLeadResponse {
2
+ leadId: string;
3
+ profileId: string;
4
+ createdAt: number;
5
+ }
@@ -0,0 +1,7 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsString, IsOptional, MaxLength, MinLength } from 'class-validator';
3
+
4
+ export class UpdateLeadGroupRequest {
5
+ @Expose() @IsOptional() @IsString() @MinLength(1) @MaxLength(100) name?: string;
6
+ @Expose() @IsOptional() @IsString() @MaxLength(500) description?: string;
7
+ }
@@ -0,0 +1,16 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsString, IsOptional, IsEnum, IsObject, MaxLength, MinLength } from 'class-validator';
3
+ import { ProfileStatusEnum } from '../enums/ProfileStatusEnum';
4
+
5
+ export class UpdateProfileRequest {
6
+ @Expose() @IsOptional() @IsString() @MinLength(1) @MaxLength(100) firstName?: string;
7
+ @Expose() @IsOptional() @IsString() @MinLength(1) @MaxLength(100) lastName?: string;
8
+ @Expose() @IsOptional() @IsString() @MaxLength(200) title?: string;
9
+ @Expose() @IsOptional() @IsString() @MaxLength(200) company?: string;
10
+ @Expose() @IsOptional() @IsString() @MinLength(2) @MaxLength(100) slug?: string;
11
+ @Expose() @IsOptional() @IsString() phone?: string;
12
+ @Expose() @IsOptional() @IsString() email?: string;
13
+ @Expose() @IsOptional() @IsString() @MaxLength(500) bio?: string;
14
+ @Expose() @IsOptional() @IsObject() socialLinks?: Record<string, string>;
15
+ @Expose() @IsOptional() @IsEnum(ProfileStatusEnum) status?: ProfileStatusEnum;
16
+ }
@@ -0,0 +1,6 @@
1
+ export enum LeadSourceEnum {
2
+ QR_SCAN = 'QR_SCAN',
3
+ DIRECT_LINK = 'DIRECT_LINK',
4
+ SHARED_CONTACT = 'SHARED_CONTACT',
5
+ WALLET_PASS = 'WALLET_PASS',
6
+ }
@@ -0,0 +1,6 @@
1
+ export enum LeadStatusEnum {
2
+ NEW = 'NEW',
3
+ CONTACTED = 'CONTACTED',
4
+ CONVERTED = 'CONVERTED',
5
+ ARCHIVED = 'ARCHIVED',
6
+ }
@@ -0,0 +1,5 @@
1
+ export enum PhotoContentType {
2
+ JPEG = 'image/jpeg',
3
+ PNG = 'image/png',
4
+ WEBP = 'image/webp',
5
+ }
@@ -0,0 +1,5 @@
1
+ export enum ProfileStatusEnum {
2
+ ACTIVE = 'ACTIVE',
3
+ INACTIVE = 'INACTIVE',
4
+ DRAFT = 'DRAFT',
5
+ }