fiscalia_bo-nest-helpers 0.1.22 → 0.1.23
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/README.md +2 -0
- package/dist/helpers/global-exception.filter.d.ts +3 -0
- package/dist/helpers/global-exception.filter.js +13 -2
- package/dist/helpers/global-exception.filter.js.map +1 -1
- package/dist/ms-seguridad/Seguridad.pb.d.ts +5 -4
- package/dist/ms-seguridad/Seguridad.pb.js.map +1 -1
- package/dist/ms-seguridad/Seguridad.proto +6 -5
- package/dist/ms-seguridad/ms-seguridad.decorator.d.ts +4 -3
- package/dist/ms-seguridad/ms-seguridad.decorator.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
@@ -106,6 +106,8 @@ En este ejemplo, estamos utilizando el método register para cargar la configura
|
|
106
106
|
- idFuncionario: number;
|
107
107
|
- idPersona: number;
|
108
108
|
- usuarioId: number;
|
109
|
+
- perfilPersonaId: number;
|
110
|
+
- personaId: number;
|
109
111
|
- `@AuthToken()`, decorador para obtener el token de tipo string
|
110
112
|
|
111
113
|
- `@AuthPermissions()`, decorador para obtener la lista de permisos, devuelve array de string.
|
@@ -5,6 +5,9 @@ export declare class GlobalExceptionFilter implements ExceptionFilter {
|
|
5
5
|
export declare class MsSeguridadHttpError extends HttpException {
|
6
6
|
constructor(message?: string, status?: number, response?: any, error?: boolean);
|
7
7
|
}
|
8
|
+
export declare class ValidatorException extends HttpException {
|
9
|
+
constructor(message?: string, status?: number, response?: any, error?: boolean);
|
10
|
+
}
|
8
11
|
export declare class ApiBadRequestError extends BadRequestException {
|
9
12
|
constructor(message?: string, status?: number, response?: any, error?: boolean);
|
10
13
|
}
|
@@ -6,11 +6,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
7
|
};
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
9
|
-
exports.ApiUnauthorizedError = exports.NotAcceptableError = exports.ApiBadRequestError = exports.MsSeguridadHttpError = exports.GlobalExceptionFilter = void 0;
|
9
|
+
exports.ApiUnauthorizedError = exports.NotAcceptableError = exports.ApiBadRequestError = exports.ValidatorException = exports.MsSeguridadHttpError = exports.GlobalExceptionFilter = void 0;
|
10
10
|
const common_1 = require("@nestjs/common");
|
11
11
|
const throttler_1 = require("@nestjs/throttler");
|
12
12
|
let GlobalExceptionFilter = class GlobalExceptionFilter {
|
13
13
|
catch(error, host) {
|
14
|
+
console.log('__error___', error);
|
14
15
|
const response = host.switchToHttp().getResponse();
|
15
16
|
let resp = {
|
16
17
|
error: true,
|
@@ -34,7 +35,11 @@ let GlobalExceptionFilter = class GlobalExceptionFilter {
|
|
34
35
|
resp.message = 'Entidad no processable';
|
35
36
|
resp.status = 422;
|
36
37
|
}
|
37
|
-
else if (error instanceof
|
38
|
+
else if (error instanceof ValidatorException) {
|
39
|
+
resp.message = 'error de validación';
|
40
|
+
resp.status = 406;
|
41
|
+
}
|
42
|
+
else if (error.constructor.toString().includes('class HttpException extends Error')) {
|
38
43
|
const respErr = error.getResponse();
|
39
44
|
if (typeof (respErr === null || respErr === void 0 ? void 0 : respErr.error) !== 'boolean' && typeof (respErr === null || respErr === void 0 ? void 0 : respErr.message) !== 'string') {
|
40
45
|
if (typeof respErr === 'string')
|
@@ -91,6 +96,12 @@ class MsSeguridadHttpError extends common_1.HttpException {
|
|
91
96
|
}
|
92
97
|
}
|
93
98
|
exports.MsSeguridadHttpError = MsSeguridadHttpError;
|
99
|
+
class ValidatorException extends common_1.HttpException {
|
100
|
+
constructor(message = 'Ocurrió un error', status = 406, response = null, error = true) {
|
101
|
+
super({ error, message, status, response }, status);
|
102
|
+
}
|
103
|
+
}
|
104
|
+
exports.ValidatorException = ValidatorException;
|
94
105
|
class ApiBadRequestError extends common_1.BadRequestException {
|
95
106
|
constructor(message = 'Ocurrió un error', status = 400, response = null, error = true) {
|
96
107
|
super({ error, message, status, response });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"global-exception.filter.js","sourceRoot":"","sources":["../../src/helpers/global-exception.filter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAUwB;AAExB,iDAAuD;AAGhD,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAChC,KAAK,CAAC,KAAY,EAAE,IAAmB;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,CAAC;QACnD,IAAI,IAAI,GAAsB;YAC5B,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,4BAA4B;YACrC,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,GAAG;SACZ,CAAC;QAEF,IAAI,KAAK,YAAY,4BAAmB,EAAE;YACxC,IAAI,CAAC,OAAO,GAAG,sCACZ,KAAK,CAAC,WAAW,EAA2B,CAAC,OAChD,EAAE,CAAC;YAEH,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;SACnB;aAAM,IAAI,KAAK,YAAY,0BAAiB,EAAE;YAC7C,IAAI,CAAC,OAAO,GAAG,eAAe,CAAC;YAC/B,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;SACnB;aAAM,IAAI,KAAK,YAAY,8BAAkB,EAAE;YAC9C,IAAI,CAAC,OAAO,GAAG,kCAAkC,CAAC;YAClD,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;SACnB;aAAM,IAAI,KAAK,YAAY,qCAA4B,EAAE;YACxD,IAAI,CAAC,OAAO,GAAG,wBAAwB,CAAC;YACxC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;SACnB;aAAM,IAAI,KAAK,YAAY,
|
1
|
+
{"version":3,"file":"global-exception.filter.js","sourceRoot":"","sources":["../../src/helpers/global-exception.filter.ts"],"names":[],"mappings":"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"}
|
@@ -62,11 +62,12 @@ export interface ResponseUserData {
|
|
62
62
|
response: ResponseUserData_UserPayload | undefined;
|
63
63
|
}
|
64
64
|
export interface ResponseUserData_UserPayload {
|
65
|
-
ci: string;
|
66
|
-
idAplicacion: number;
|
67
|
-
idFuncionario: number;
|
68
|
-
idPersona: number;
|
69
65
|
usuarioId: number;
|
66
|
+
aplicacionId: number;
|
67
|
+
funcionarioId: number;
|
68
|
+
personaId: number;
|
69
|
+
perfilPersonaId: number;
|
70
|
+
ci: string;
|
70
71
|
}
|
71
72
|
export interface LogoutResponse {
|
72
73
|
error: boolean;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Seguridad.pb.js","sourceRoot":"","sources":["../../src/ms-seguridad/Seguridad.pb.ts"],"names":[],"mappings":";;;AACA,yDAAqE;AAGxD,QAAA,eAAe,GAAG,qBAAqB,CAAC;
|
1
|
+
{"version":3,"file":"Seguridad.pb.js","sourceRoot":"","sources":["../../src/ms-seguridad/Seguridad.pb.ts"],"names":[],"mappings":";;;AACA,yDAAqE;AAGxD,QAAA,eAAe,GAAG,qBAAqB,CAAC;AAuLxC,QAAA,iCAAiC,GAAG,qBAAqB,CAAC;AAgDvE,SAAgB,oCAAoC;IAClD,OAAO,UAAU,WAAqB;QACpC,MAAM,WAAW,GAAa;YAC5B,iBAAiB;YACjB,cAAc;YACd,YAAY;YACZ,OAAO;YACP,kBAAkB;YAClB,QAAQ;YACR,iBAAiB;YACjB,YAAY;SACb,CAAC;QACF,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE;YAChC,MAAM,UAAU,GAAQ,OAAO,CAAC,wBAAwB,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxF,IAAA,0BAAU,EAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;SAC9F;QACD,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE;YACtC,MAAM,UAAU,GAAQ,OAAO,CAAC,wBAAwB,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxF,IAAA,gCAAgB,EAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;SACpG;IACH,CAAC,CAAC;AACJ,CAAC;AAtBD,oFAsBC;AAEY,QAAA,iCAAiC,GAAG,qBAAqB,CAAC"}
|
@@ -90,11 +90,12 @@ message ResponseUserData {
|
|
90
90
|
UserPayload response = 4;
|
91
91
|
|
92
92
|
message UserPayload {
|
93
|
-
|
94
|
-
int32
|
95
|
-
int32
|
96
|
-
int32
|
97
|
-
int32
|
93
|
+
int32 usuarioId= 1;
|
94
|
+
int32 aplicacionId= 2;
|
95
|
+
int32 funcionarioId= 3;
|
96
|
+
int32 personaId= 4;
|
97
|
+
int32 perfilPersonaId= 5;
|
98
|
+
string ci = 6;
|
98
99
|
}
|
99
100
|
}
|
100
101
|
|
@@ -1,10 +1,11 @@
|
|
1
1
|
export declare const BearerAuthPermision: (permissions?: string[]) => <TFunction extends Function, Y>(target: object | TFunction, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
|
2
2
|
export declare class UserPayload {
|
3
3
|
ci: string;
|
4
|
-
|
5
|
-
|
6
|
-
idPersona: number;
|
4
|
+
aplicacionId: number;
|
5
|
+
funcionarioId: number;
|
7
6
|
usuarioId: number;
|
7
|
+
personaId: number;
|
8
|
+
perfilPersonaId: number;
|
8
9
|
}
|
9
10
|
export declare const AuthUser: (...dataOrPipes: unknown[]) => ParameterDecorator;
|
10
11
|
export declare const AuthToken: (...dataOrPipes: unknown[]) => ParameterDecorator;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ms-seguridad.decorator.js","sourceRoot":"","sources":["../../src/ms-seguridad/ms-seguridad.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAAoG;AACpG,6CAAgD;AAChD,yDAAoD;AACpD,uDAA0E;AAEnE,MAAM,mBAAmB,GAAG,CAAC,WAAsB,EAAE,EAAE;IAC5D,MAAM,UAAU,GAAG,CAAC,IAAA,uBAAa,GAAE,EAAE,IAAA,kBAAS,EAAC,iCAAc,EAAE,kCAAgB,CAAC,CAAC,CAAC;IAElF,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QACzC,UAAU,CAAC,IAAI,CAAC,IAAA,qCAAmB,EAAC,GAAG,WAAW,CAAC,CAAC,CAAC;KACtD;IACD,OAAO,IAAA,wBAAe,EAAC,GAAG,UAAU,CAAC,CAAC;AACxC,CAAC,CAAC;AAPW,QAAA,mBAAmB,uBAO9B;AAEF,MAAa,WAAW;
|
1
|
+
{"version":3,"file":"ms-seguridad.decorator.js","sourceRoot":"","sources":["../../src/ms-seguridad/ms-seguridad.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAAoG;AACpG,6CAAgD;AAChD,yDAAoD;AACpD,uDAA0E;AAEnE,MAAM,mBAAmB,GAAG,CAAC,WAAsB,EAAE,EAAE;IAC5D,MAAM,UAAU,GAAG,CAAC,IAAA,uBAAa,GAAE,EAAE,IAAA,kBAAS,EAAC,iCAAc,EAAE,kCAAgB,CAAC,CAAC,CAAC;IAElF,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QACzC,UAAU,CAAC,IAAI,CAAC,IAAA,qCAAmB,EAAC,GAAG,WAAW,CAAC,CAAC,CAAC;KACtD;IACD,OAAO,IAAA,wBAAe,EAAC,GAAG,UAAU,CAAC,CAAC;AACxC,CAAC,CAAC;AAPW,QAAA,mBAAmB,uBAO9B;AAEF,MAAa,WAAW;CAOvB;AAPD,kCAOC;AAEY,QAAA,QAAQ,GAAG,IAAA,6BAAoB,EAC1C,CAAC,IAAa,EAAE,OAAyB,EAAe,EAAE;IACxD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;IACpD,OAAO,OAAO,CAAC,UAAU,CAAC;AAC5B,CAAC,CACF,CAAC;AAEW,QAAA,SAAS,GAAG,IAAA,6BAAoB,EAC3C,CAAC,IAAa,EAAE,OAAyB,EAAU,EAAE;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;IACpD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;IAEjD,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAE7B,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9C,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,MAAM,CAAC;AACzB,CAAC,CACF,CAAC;AAEW,QAAA,eAAe,GAAG,IAAA,6BAAoB,EACjD,CAAC,IAAa,EAAE,OAAyB,EAAY,EAAE;;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;IACpD,OAAO,MAAA,OAAO,CAAC,WAAW,mCAAI,EAAE,CAAC;AACnC,CAAC,CACF,CAAC"}
|