@fiado/type-kit 3.141.0 → 3.142.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_test_/unit/platformRbac/dtos/CreateTenantRequest.test.ts +6 -5
- package/_test_/unit/platformRbac/enums/__snapshots__/permissionBits.test.ts.snap +1 -73
- package/_test_/unit/platformRbac/tenantTypes.test.ts +5 -40
- package/bin/platformRbac/dtos/CreateTenantRequest.d.ts +5 -4
- package/bin/platformRbac/dtos/CreateTenantRequest.js +1 -2
- package/bin/platformRbac/dtos/ResendOtpRequest.d.ts +22 -0
- package/bin/{walletFunding/dtos/CancelFundingRequest.js → platformRbac/dtos/ResendOtpRequest.js} +16 -13
- package/bin/platformRbac/dtos/ResendSelfRegisterOtpRequest.d.ts +11 -0
- package/bin/{cognitoBackofficeConnector/dtos/MfaPoolConfig.js → platformRbac/dtos/ResendSelfRegisterOtpRequest.js} +18 -18
- package/bin/platformRbac/enums/Permission.d.ts +0 -77
- package/bin/platformRbac/enums/Permission.js +8 -186
- package/bin/platformRbac/enums/PermissionCategory.d.ts +0 -7
- package/bin/platformRbac/enums/PermissionCategory.js +4 -9
- package/bin/platformRbac/tenantTypes.d.ts +18 -13
- package/bin/platformRbac/tenantTypes.js +20 -30
- package/package.json +1 -1
- package/src/platformRbac/dtos/CreateTenantRequest.ts +5 -4
- package/src/platformRbac/enums/Permission.ts +8 -191
- package/src/platformRbac/enums/PermissionCategory.ts +4 -9
- package/src/platformRbac/tenantTypes.ts +21 -32
- package/bin/cognitoBackofficeConnector/dtos/MfaPoolConfig.d.ts +0 -7
- package/bin/cognitoBackofficeConnector/dtos/PoolConfigResponse.d.ts +0 -20
- package/bin/cognitoBackofficeConnector/dtos/PoolConfigResponse.js +0 -11
- package/bin/cognitoBackofficeConnector/dtos/PoolsListResponse.d.ts +0 -4
- package/bin/cognitoBackofficeConnector/dtos/PoolsListResponse.js +0 -6
- package/bin/cognitoBackofficeConnector/validators/MfaTypesRequiresOne.d.ts +0 -17
- package/bin/cognitoBackofficeConnector/validators/MfaTypesRequiresOne.js +0 -39
- package/bin/rbac/enums/PoolKind.d.ts +0 -16
- package/bin/rbac/enums/PoolKind.js +0 -20
- package/bin/rbac/index.d.ts +0 -1
- package/bin/rbac/index.js +0 -17
- package/bin/walletFunding/dtos/CancelFundingReferenceRequest.d.ts +0 -5
- package/bin/walletFunding/dtos/CancelFundingReferenceRequest.js +0 -31
- package/bin/walletFunding/dtos/CancelFundingReferenceResponse.d.ts +0 -7
- package/bin/walletFunding/dtos/CancelFundingReferenceResponse.js +0 -6
- package/bin/walletFunding/dtos/CancelFundingRequest.d.ts +0 -11
- package/bin/walletFunding/dtos/CancelFundingResponse.d.ts +0 -14
- package/bin/walletFunding/dtos/CancelFundingResponse.js +0 -12
- package/bin/walletFunding/dtos/CancelWalletFundingRequest.d.ts +0 -3
- package/bin/walletFunding/dtos/CancelWalletFundingRequest.js +0 -21
- package/bin/walletFunding/dtos/CancelWalletFundingResponse.d.ts +0 -7
- package/bin/walletFunding/dtos/CancelWalletFundingResponse.js +0 -6
|
@@ -2,7 +2,6 @@ import 'reflect-metadata';
|
|
|
2
2
|
import { plainToInstance } from 'class-transformer';
|
|
3
3
|
import { validate } from 'class-validator';
|
|
4
4
|
import { CreateTenantRequest } from '../../../../src/platformRbac/dtos/CreateTenantRequest';
|
|
5
|
-
import { TenantType } from '../../../../src/platformRbac/tenantTypes';
|
|
6
5
|
|
|
7
6
|
describe('CreateTenantRequest', () => {
|
|
8
7
|
const valid = {
|
|
@@ -47,15 +46,17 @@ describe('CreateTenantRequest', () => {
|
|
|
47
46
|
expect(errors.some(e => e.property === 'tenantId')).toBe(true);
|
|
48
47
|
});
|
|
49
48
|
|
|
50
|
-
it('valida con tenantType opcional
|
|
49
|
+
it('valida con tenantType opcional (legacy string libre — DEC-RBAC-062/063, purga v4.0.0)', async () => {
|
|
50
|
+
// Tras la purga de los tenant-types de dominio, tenantType es string libre por back-compat
|
|
51
|
+
// del shape del body (el alta se hace por applicationId). Cualquier string valida.
|
|
51
52
|
const dto = plainToInstance(CreateTenantRequest, { ...valid, tenantType: 'agents' });
|
|
52
53
|
const errors = await validate(dto);
|
|
53
54
|
expect(errors).toEqual([]);
|
|
54
|
-
expect(dto.tenantType).toBe(
|
|
55
|
+
expect(dto.tenantType).toBe('agents');
|
|
55
56
|
});
|
|
56
57
|
|
|
57
|
-
it('falla si tenantType no es
|
|
58
|
-
const dto = plainToInstance(CreateTenantRequest, { ...valid, tenantType:
|
|
58
|
+
it('falla si tenantType no es string', async () => {
|
|
59
|
+
const dto = plainToInstance(CreateTenantRequest, { ...valid, tenantType: 123 });
|
|
59
60
|
const errors = await validate(dto);
|
|
60
61
|
expect(errors.some(e => e.property === 'tenantType')).toBe(true);
|
|
61
62
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
|
2
2
|
|
|
3
|
-
exports[`PERMISSION_BIT_ORDER PERMS_VERSION es número estable 1`] = `
|
|
3
|
+
exports[`PERMISSION_BIT_ORDER PERMS_VERSION es número estable 1`] = `1018014330`;
|
|
4
4
|
|
|
5
5
|
exports[`PERMISSION_BIT_ORDER append-only: snapshot del ORDEN COMPLETO (rompe ante cualquier reorden/inserción) 1`] = `
|
|
6
6
|
[
|
|
@@ -49,79 +49,7 @@ exports[`PERMISSION_BIT_ORDER append-only: snapshot del ORDEN COMPLETO (rompe an
|
|
|
49
49
|
"tenant.security.policy.manage",
|
|
50
50
|
"tenant.branding.manage",
|
|
51
51
|
"tenant.audit.view",
|
|
52
|
-
"retail.user.create",
|
|
53
|
-
"retail.user.create.lateral",
|
|
54
|
-
"retail.user.read",
|
|
55
|
-
"retail.user.update",
|
|
56
|
-
"retail.user.status",
|
|
57
|
-
"retail.user.delete",
|
|
58
|
-
"retail.user.password.reset",
|
|
59
|
-
"retail.user.mfa.reset",
|
|
60
|
-
"retail.product.create",
|
|
61
|
-
"retail.product.list",
|
|
62
|
-
"retail.product.view",
|
|
63
|
-
"retail.product.update",
|
|
64
|
-
"retail.product.delete",
|
|
65
|
-
"retail.product.mdm_config",
|
|
66
|
-
"retail.inventory.list",
|
|
67
|
-
"retail.inventory.view",
|
|
68
|
-
"retail.inventory.update",
|
|
69
|
-
"retail.sale.create",
|
|
70
|
-
"retail.sale.list",
|
|
71
|
-
"retail.sale.cancel",
|
|
72
|
-
"retail.store.manage",
|
|
73
|
-
"retail.retailer.manage",
|
|
74
|
-
"lend.credit.create",
|
|
75
|
-
"lend.credit.list",
|
|
76
|
-
"lend.credit.view",
|
|
77
|
-
"lend.credit.update",
|
|
78
|
-
"lend.credit.liquidate",
|
|
79
|
-
"lend.credit.restructure",
|
|
80
|
-
"lend.payment.apply",
|
|
81
|
-
"lend.payment.list",
|
|
82
|
-
"lend.payment.reverse",
|
|
83
|
-
"lend.installment.view",
|
|
84
|
-
"mdm.device.enroll",
|
|
85
|
-
"mdm.device.release",
|
|
86
|
-
"mdm.device.archive",
|
|
87
|
-
"mdm.device.deactivate",
|
|
88
|
-
"mdm.device.lock.manual",
|
|
89
|
-
"mdm.device.unlock.manual",
|
|
90
|
-
"mdm.device.pin_unlock",
|
|
91
|
-
"mdm.device.extend_validity",
|
|
92
|
-
"mdm.device.notify",
|
|
93
|
-
"mdm.device.status.view",
|
|
94
|
-
"mdm.operation_log.view",
|
|
95
|
-
"mdm.test",
|
|
96
|
-
"pay.transaction.view",
|
|
97
|
-
"agents.agent.list",
|
|
98
|
-
"agents.agent.create",
|
|
99
|
-
"agents.agent.create_bulk",
|
|
100
|
-
"agents.agent.move",
|
|
101
|
-
"agents.agent.delete",
|
|
102
|
-
"agents.referral.view",
|
|
103
|
-
"agents.ranking.view",
|
|
104
|
-
"agents.production.view",
|
|
105
|
-
"agents.person.search",
|
|
106
|
-
"agents.person.view",
|
|
107
|
-
"agents.person.update",
|
|
108
|
-
"agents.document.view",
|
|
109
|
-
"agents.document.upload",
|
|
110
|
-
"agents.address.view",
|
|
111
|
-
"agents.address.manage",
|
|
112
|
-
"agents.beneficiary.view",
|
|
113
|
-
"agents.beneficiary.manage",
|
|
114
|
-
"agents.card.issue",
|
|
115
|
-
"agents.chat.view",
|
|
116
|
-
"agents.chat.send",
|
|
117
|
-
"agents.notification.send",
|
|
118
|
-
"agents.export.run",
|
|
119
|
-
"agents.catalog.view",
|
|
120
|
-
"agents.group.manage",
|
|
121
|
-
"agents.group.user.manage",
|
|
122
|
-
"agents.person.create",
|
|
123
52
|
"platform.tenant.userfields.manage",
|
|
124
|
-
"agents.app.access",
|
|
125
53
|
"platform.user.create.lateral",
|
|
126
54
|
"platform.application.manage",
|
|
127
55
|
"tenant.level.manage",
|
|
@@ -1,58 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { TENANT_TYPES, scopeRankOrder } from '../../../src/platformRbac/tenantTypes';
|
|
2
2
|
import { PermissionScope } from '../../../src/platformRbac/enums/PermissionScope';
|
|
3
3
|
|
|
4
|
-
describe('tenantTypes', () => {
|
|
5
|
-
it('
|
|
6
|
-
expect(
|
|
4
|
+
describe('tenantTypes (post-purga v4.0.0 — solo niveles genéricos)', () => {
|
|
5
|
+
it('TENANT_TYPES quedó vacío tras purgar los tipos de dominio (retail/agents)', () => {
|
|
6
|
+
expect(Object.keys(TENANT_TYPES)).toHaveLength(0);
|
|
7
7
|
});
|
|
8
8
|
|
|
9
|
-
it('scopeRankOrder = [PLATFORM, TENANT,
|
|
9
|
+
it('scopeRankOrder = [PLATFORM, TENANT, LEVEL_1, LEVEL_2, LEVEL_3]', () => {
|
|
10
10
|
expect(scopeRankOrder()).toEqual([
|
|
11
11
|
PermissionScope.PLATFORM,
|
|
12
12
|
PermissionScope.TENANT,
|
|
13
|
-
PermissionScope.RETAILER,
|
|
14
|
-
PermissionScope.STORE,
|
|
15
|
-
PermissionScope.GROUP,
|
|
16
13
|
PermissionScope.LEVEL_1,
|
|
17
14
|
PermissionScope.LEVEL_2,
|
|
18
15
|
PermissionScope.LEVEL_3,
|
|
19
16
|
]);
|
|
20
17
|
});
|
|
21
18
|
|
|
22
|
-
it('tableSuffixForLevel mapea cada nivel de retail a su sufijo de tabla', () => {
|
|
23
|
-
expect(tableSuffixForLevel(TenantType.RETAIL, PermissionScope.RETAILER)).toBe('SharedRetailer');
|
|
24
|
-
expect(tableSuffixForLevel(TenantType.RETAIL, PermissionScope.STORE)).toBe('SharedStore');
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
it('tableSuffixForLevel devuelve undefined para un nivel no mapeado (PLATFORM/TENANT son fijos)', () => {
|
|
28
|
-
expect(tableSuffixForLevel(TenantType.RETAIL, PermissionScope.PLATFORM)).toBeUndefined();
|
|
29
|
-
expect(tableSuffixForLevel(TenantType.RETAIL, PermissionScope.TENANT)).toBeUndefined();
|
|
30
|
-
});
|
|
31
|
-
|
|
32
19
|
it('scopeRankOrder no produce duplicados', () => {
|
|
33
20
|
const order = scopeRankOrder();
|
|
34
21
|
expect(new Set(order).size).toBe(order.length);
|
|
35
22
|
});
|
|
36
|
-
|
|
37
|
-
it('agents define un único nivel GROUP debajo de TENANT', () => {
|
|
38
|
-
expect(levelsOf(TenantType.AGENTS)).toEqual([PermissionScope.GROUP]);
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
it('agents mapea GROUP a su sufijo de tabla SharedGroup', () => {
|
|
42
|
-
expect(TENANT_TYPES[TenantType.AGENTS].tableSuffix).toEqual({ [PermissionScope.GROUP]: 'SharedGroup' });
|
|
43
|
-
expect(tableSuffixForLevel(TenantType.AGENTS, PermissionScope.GROUP)).toBe('SharedGroup');
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
it('scopeRankOrder incluye GROUP (vía los levels de agents) seguido de los niveles genéricos LEVEL_1/2/3', () => {
|
|
47
|
-
expect(scopeRankOrder()).toEqual([
|
|
48
|
-
PermissionScope.PLATFORM,
|
|
49
|
-
PermissionScope.TENANT,
|
|
50
|
-
PermissionScope.RETAILER,
|
|
51
|
-
PermissionScope.STORE,
|
|
52
|
-
PermissionScope.GROUP,
|
|
53
|
-
PermissionScope.LEVEL_1,
|
|
54
|
-
PermissionScope.LEVEL_2,
|
|
55
|
-
PermissionScope.LEVEL_3,
|
|
56
|
-
]);
|
|
57
|
-
});
|
|
58
23
|
});
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { TokenValidationMode } from '../enums/TokenValidationMode';
|
|
2
|
-
import { TenantType } from '../tenantTypes';
|
|
3
2
|
/**
|
|
4
3
|
* Punto inicial de la política 2FA elegido en el alta del tenant (DEC-RBAC-064). Para el CREATE
|
|
5
4
|
* ambos campos son OPCIONALES: es un override del punto de partida — si se omite, el onboarding
|
|
@@ -35,10 +34,12 @@ export declare class CreateTenantRequest {
|
|
|
35
34
|
region: string;
|
|
36
35
|
tokenValidationMode?: TokenValidationMode;
|
|
37
36
|
/**
|
|
38
|
-
* Tipo de tenant a crear.
|
|
39
|
-
* @deprecated DEC-RBAC-062/063:
|
|
37
|
+
* Tipo de tenant a crear (legacy). El alta se hace por `applicationId`.
|
|
38
|
+
* @deprecated DEC-RBAC-062/063: los tenant-types de dominio fueron purgados (v4.0.0, BREAKING).
|
|
39
|
+
* El alta se hace por `applicationId`; `tenantType` queda como string libre solo por back-compat
|
|
40
|
+
* del shape del body. No usar en código nuevo.
|
|
40
41
|
*/
|
|
41
|
-
tenantType?:
|
|
42
|
+
tenantType?: string;
|
|
42
43
|
/** DEC-RBAC-034: aplicación (plantilla) de la que se crea el tenant; opcional, fallback a tenantType (back-compat). */
|
|
43
44
|
applicationId?: string;
|
|
44
45
|
/**
|
|
@@ -13,7 +13,6 @@ exports.CreateTenantRequest = exports.CreateTenantSecurityPolicy = void 0;
|
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
15
|
const TokenValidationMode_1 = require("../enums/TokenValidationMode");
|
|
16
|
-
const tenantTypes_1 = require("../tenantTypes");
|
|
17
16
|
/**
|
|
18
17
|
* Punto inicial de la política 2FA elegido en el alta del tenant (DEC-RBAC-064). Para el CREATE
|
|
19
18
|
* ambos campos son OPCIONALES: es un override del punto de partida — si se omite, el onboarding
|
|
@@ -91,7 +90,7 @@ __decorate([
|
|
|
91
90
|
__decorate([
|
|
92
91
|
(0, class_transformer_1.Expose)(),
|
|
93
92
|
(0, class_validator_1.IsOptional)(),
|
|
94
|
-
(0, class_validator_1.
|
|
93
|
+
(0, class_validator_1.IsString)(),
|
|
95
94
|
__metadata("design:type", String)
|
|
96
95
|
], CreateTenantRequest.prototype, "tenantType", void 0);
|
|
97
96
|
__decorate([
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { MfaMethodEnum } from '../enums/MfaMethodEnum';
|
|
2
|
+
/**
|
|
3
|
+
* Body del POST /auth/resend-otp (público, anónimo). DEC-RBAC-054.
|
|
4
|
+
* Reenvía el OTP del login re-disparando el challenge real CUSTOM_AUTH (EMAIL_OTP) para la
|
|
5
|
+
* identidad SIN password. `tenantId` obligatorio (DEC-064 — el picker ya lo resolvió, NO "solo email").
|
|
6
|
+
* El email se normaliza lowercase server-side. Postura anti-enumeración: respuesta 200 genérica
|
|
7
|
+
* siempre, sin filtrar existencia (ver AuthLoginManager.resendChallengeOtp).
|
|
8
|
+
*/
|
|
9
|
+
export declare class ResendOtpRequest {
|
|
10
|
+
email: string;
|
|
11
|
+
tenantId: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Respuesta del resend-otp. `session`/`mfaMethod` frescos del nuevo challenge CUSTOM_AUTH.
|
|
15
|
+
* Plain sin validators (no validamos lo que mandamos al cliente — fiado-validation-and-dtos § 7).
|
|
16
|
+
* Ambos opcionales: en los caminos de rechazo silencioso (anti-enumeración) o ramas sin CUSTOM_AUTH
|
|
17
|
+
* el server responde 200 genérico sin session ni método.
|
|
18
|
+
*/
|
|
19
|
+
export interface ResendOtpResponse {
|
|
20
|
+
session?: string;
|
|
21
|
+
mfaMethod?: MfaMethodEnum;
|
|
22
|
+
}
|
package/bin/{walletFunding/dtos/CancelFundingRequest.js → platformRbac/dtos/ResendOtpRequest.js}
RENAMED
|
@@ -9,25 +9,28 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.ResendOtpRequest = void 0;
|
|
13
|
+
const class_transformer_1 = require("class-transformer");
|
|
13
14
|
const class_validator_1 = require("class-validator");
|
|
14
15
|
/**
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* `
|
|
18
|
-
*
|
|
19
|
-
*
|
|
16
|
+
* Body del POST /auth/resend-otp (público, anónimo). DEC-RBAC-054.
|
|
17
|
+
* Reenvía el OTP del login re-disparando el challenge real CUSTOM_AUTH (EMAIL_OTP) para la
|
|
18
|
+
* identidad SIN password. `tenantId` obligatorio (DEC-064 — el picker ya lo resolvió, NO "solo email").
|
|
19
|
+
* El email se normaliza lowercase server-side. Postura anti-enumeración: respuesta 200 genérica
|
|
20
|
+
* siempre, sin filtrar existencia (ver AuthLoginManager.resendChallengeOtp).
|
|
20
21
|
*/
|
|
21
|
-
class
|
|
22
|
+
class ResendOtpRequest {
|
|
22
23
|
}
|
|
23
|
-
exports.
|
|
24
|
+
exports.ResendOtpRequest = ResendOtpRequest;
|
|
24
25
|
__decorate([
|
|
25
|
-
(0,
|
|
26
|
-
(0, class_validator_1.
|
|
26
|
+
(0, class_transformer_1.Expose)(),
|
|
27
|
+
(0, class_validator_1.IsEmail)(),
|
|
28
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
27
29
|
__metadata("design:type", String)
|
|
28
|
-
],
|
|
30
|
+
], ResendOtpRequest.prototype, "email", void 0);
|
|
29
31
|
__decorate([
|
|
32
|
+
(0, class_transformer_1.Expose)(),
|
|
30
33
|
(0, class_validator_1.IsString)(),
|
|
31
|
-
(0, class_validator_1.
|
|
34
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
32
35
|
__metadata("design:type", String)
|
|
33
|
-
],
|
|
36
|
+
], ResendOtpRequest.prototype, "tenantId", void 0);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Body del POST /self-register/resend-otp (público, anónimo). DEC-RBAC-054.
|
|
3
|
+
* Re-envía el OTP del autoregistro (mecanismo messages-business, NO Cognito) tras validar un
|
|
4
|
+
* `pending` existente. Misma postura anti-enumeración del start. El email se normaliza lowercase
|
|
5
|
+
* server-side. DTO propio por endpoint (NO reusa SelfRegisterStartRequest, que exige roleId/scope/
|
|
6
|
+
* scopeRef, ni SelfRegisterVerifyOtpRequest, que exige otp).
|
|
7
|
+
*/
|
|
8
|
+
export declare class ResendSelfRegisterOtpRequest {
|
|
9
|
+
tenantId: string;
|
|
10
|
+
email: string;
|
|
11
|
+
}
|
|
@@ -9,28 +9,28 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.ResendSelfRegisterOtpRequest = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
class
|
|
15
|
+
/**
|
|
16
|
+
* Body del POST /self-register/resend-otp (público, anónimo). DEC-RBAC-054.
|
|
17
|
+
* Re-envía el OTP del autoregistro (mecanismo messages-business, NO Cognito) tras validar un
|
|
18
|
+
* `pending` existente. Misma postura anti-enumeración del start. El email se normaliza lowercase
|
|
19
|
+
* server-side. DTO propio por endpoint (NO reusa SelfRegisterStartRequest, que exige roleId/scope/
|
|
20
|
+
* scopeRef, ni SelfRegisterVerifyOtpRequest, que exige otp).
|
|
21
|
+
*/
|
|
22
|
+
class ResendSelfRegisterOtpRequest {
|
|
23
23
|
}
|
|
24
|
-
exports.
|
|
24
|
+
exports.ResendSelfRegisterOtpRequest = ResendSelfRegisterOtpRequest;
|
|
25
25
|
__decorate([
|
|
26
26
|
(0, class_transformer_1.Expose)(),
|
|
27
|
-
(0, class_validator_1.
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
(0, class_validator_1.IsString)(),
|
|
28
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
29
|
+
__metadata("design:type", String)
|
|
30
|
+
], ResendSelfRegisterOtpRequest.prototype, "tenantId", void 0);
|
|
30
31
|
__decorate([
|
|
31
32
|
(0, class_transformer_1.Expose)(),
|
|
32
|
-
(0, class_validator_1.
|
|
33
|
-
(0, class_validator_1.
|
|
34
|
-
(
|
|
35
|
-
|
|
36
|
-
], MfaPoolConfig.prototype, "mfaTypes", void 0);
|
|
33
|
+
(0, class_validator_1.IsEmail)(),
|
|
34
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
35
|
+
__metadata("design:type", String)
|
|
36
|
+
], ResendSelfRegisterOtpRequest.prototype, "email", void 0);
|
|
@@ -79,83 +79,6 @@ export declare enum Permission {
|
|
|
79
79
|
TENANT_BRANDING_MANAGE = "tenant.branding.manage",
|
|
80
80
|
TENANT_AUDIT_VIEW = "tenant.audit.view",
|
|
81
81
|
TENANT_LEVEL_MANAGE = "tenant.level.manage",
|
|
82
|
-
RETAIL_USER_CREATE = "retail.user.create",
|
|
83
|
-
RETAIL_USER_CREATE_LATERAL = "retail.user.create.lateral",
|
|
84
|
-
RETAIL_USER_READ = "retail.user.read",
|
|
85
|
-
RETAIL_USER_UPDATE = "retail.user.update",
|
|
86
|
-
RETAIL_USER_STATUS = "retail.user.status",
|
|
87
|
-
RETAIL_USER_DELETE = "retail.user.delete",
|
|
88
|
-
RETAIL_USER_PASSWORD_RESET = "retail.user.password.reset",
|
|
89
|
-
RETAIL_USER_MFA_RESET = "retail.user.mfa.reset",
|
|
90
|
-
RETAIL_PRODUCT_CREATE = "retail.product.create",
|
|
91
|
-
RETAIL_PRODUCT_LIST = "retail.product.list",
|
|
92
|
-
RETAIL_PRODUCT_VIEW = "retail.product.view",
|
|
93
|
-
RETAIL_PRODUCT_UPDATE = "retail.product.update",
|
|
94
|
-
RETAIL_PRODUCT_DELETE = "retail.product.delete",
|
|
95
|
-
/** @deprecated DEC-RBAC-061: se renombrará a 'retail.product.mdm.config' (naming con puntos). Migración de datos coordinada por backend pendiente; no usar en código nuevo. */
|
|
96
|
-
RETAIL_PRODUCT_MDM_CONFIG = "retail.product.mdm_config",
|
|
97
|
-
RETAIL_INVENTORY_LIST = "retail.inventory.list",
|
|
98
|
-
RETAIL_INVENTORY_VIEW = "retail.inventory.view",
|
|
99
|
-
RETAIL_INVENTORY_UPDATE = "retail.inventory.update",
|
|
100
|
-
RETAIL_SALE_CREATE = "retail.sale.create",
|
|
101
|
-
RETAIL_SALE_LIST = "retail.sale.list",
|
|
102
|
-
RETAIL_SALE_CANCEL = "retail.sale.cancel",
|
|
103
|
-
RETAIL_STORE_MANAGE = "retail.store.manage",
|
|
104
|
-
RETAIL_RETAILER_MANAGE = "retail.retailer.manage",
|
|
105
|
-
LEND_CREDIT_CREATE = "lend.credit.create",
|
|
106
|
-
LEND_CREDIT_LIST = "lend.credit.list",
|
|
107
|
-
LEND_CREDIT_VIEW = "lend.credit.view",
|
|
108
|
-
LEND_CREDIT_UPDATE = "lend.credit.update",
|
|
109
|
-
LEND_CREDIT_LIQUIDATE = "lend.credit.liquidate",
|
|
110
|
-
LEND_CREDIT_RESTRUCTURE = "lend.credit.restructure",
|
|
111
|
-
LEND_PAYMENT_APPLY = "lend.payment.apply",
|
|
112
|
-
LEND_PAYMENT_LIST = "lend.payment.list",
|
|
113
|
-
LEND_PAYMENT_REVERSE = "lend.payment.reverse",
|
|
114
|
-
LEND_INSTALLMENT_VIEW = "lend.installment.view",
|
|
115
|
-
MDM_DEVICE_ENROLL = "mdm.device.enroll",
|
|
116
|
-
MDM_DEVICE_RELEASE = "mdm.device.release",
|
|
117
|
-
MDM_DEVICE_ARCHIVE = "mdm.device.archive",
|
|
118
|
-
MDM_DEVICE_DEACTIVATE = "mdm.device.deactivate",
|
|
119
|
-
MDM_DEVICE_LOCK_MANUAL = "mdm.device.lock.manual",
|
|
120
|
-
MDM_DEVICE_UNLOCK_MANUAL = "mdm.device.unlock.manual",
|
|
121
|
-
/** @deprecated DEC-RBAC-061: se renombrará a 'mdm.device.pin.unlock' (naming con puntos). Migración de datos coordinada por backend pendiente; no usar en código nuevo. */
|
|
122
|
-
MDM_DEVICE_PIN_UNLOCK = "mdm.device.pin_unlock",
|
|
123
|
-
/** @deprecated DEC-RBAC-061: se renombrará a 'mdm.device.extend.validity' (naming con puntos). Migración de datos coordinada por backend pendiente; no usar en código nuevo. */
|
|
124
|
-
MDM_DEVICE_EXTEND_VALIDITY = "mdm.device.extend_validity",
|
|
125
|
-
MDM_DEVICE_NOTIFY = "mdm.device.notify",
|
|
126
|
-
MDM_DEVICE_STATUS_VIEW = "mdm.device.status.view",
|
|
127
|
-
/** @deprecated DEC-RBAC-061: se renombrará a 'mdm.operation.log.view' (naming con puntos). Migración de datos coordinada por backend pendiente; no usar en código nuevo. */
|
|
128
|
-
MDM_OPERATION_LOG_VIEW = "mdm.operation_log.view",
|
|
129
|
-
MDM_TEST = "mdm.test",
|
|
130
|
-
PAY_TRANSACTION_VIEW = "pay.transaction.view",
|
|
131
|
-
AGENTS_APP_ACCESS = "agents.app.access",
|
|
132
|
-
AGENTS_AGENT_LIST = "agents.agent.list",
|
|
133
|
-
AGENTS_AGENT_CREATE = "agents.agent.create",
|
|
134
|
-
/** @deprecated DEC-RBAC-061: se renombrará a 'agents.agent.create.bulk' (naming con puntos). Migración de datos coordinada por backend pendiente; no usar en código nuevo. */
|
|
135
|
-
AGENTS_AGENT_CREATE_BULK = "agents.agent.create_bulk",
|
|
136
|
-
AGENTS_AGENT_MOVE = "agents.agent.move",
|
|
137
|
-
AGENTS_AGENT_DELETE = "agents.agent.delete",
|
|
138
|
-
AGENTS_REFERRAL_VIEW = "agents.referral.view",
|
|
139
|
-
AGENTS_RANKING_VIEW = "agents.ranking.view",
|
|
140
|
-
AGENTS_PRODUCTION_VIEW = "agents.production.view",
|
|
141
|
-
AGENTS_PERSON_SEARCH = "agents.person.search",
|
|
142
|
-
AGENTS_PERSON_VIEW = "agents.person.view",
|
|
143
|
-
AGENTS_PERSON_UPDATE = "agents.person.update",
|
|
144
|
-
AGENTS_PERSON_CREATE = "agents.person.create",
|
|
145
|
-
AGENTS_DOCUMENT_VIEW = "agents.document.view",
|
|
146
|
-
AGENTS_DOCUMENT_UPLOAD = "agents.document.upload",
|
|
147
|
-
AGENTS_ADDRESS_VIEW = "agents.address.view",
|
|
148
|
-
AGENTS_ADDRESS_MANAGE = "agents.address.manage",
|
|
149
|
-
AGENTS_BENEFICIARY_VIEW = "agents.beneficiary.view",
|
|
150
|
-
AGENTS_BENEFICIARY_MANAGE = "agents.beneficiary.manage",
|
|
151
|
-
AGENTS_CARD_ISSUE = "agents.card.issue",
|
|
152
|
-
AGENTS_CHAT_VIEW = "agents.chat.view",
|
|
153
|
-
AGENTS_CHAT_SEND = "agents.chat.send",
|
|
154
|
-
AGENTS_NOTIFICATION_SEND = "agents.notification.send",
|
|
155
|
-
AGENTS_EXPORT_RUN = "agents.export.run",
|
|
156
|
-
AGENTS_CATALOG_VIEW = "agents.catalog.view",
|
|
157
|
-
AGENTS_GROUP_MANAGE = "agents.group.manage",
|
|
158
|
-
AGENTS_GROUP_USER_MANAGE = "agents.group.user.manage",
|
|
159
82
|
LEVEL1_USER_CREATE = "level1.user.create",
|
|
160
83
|
LEVEL1_USER_READ = "level1.user.read",
|
|
161
84
|
LEVEL1_USER_UPDATE = "level1.user.update",
|