monkey-front-core 0.0.351 → 0.0.353
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/esm2020/lib/core/services/auth/monkeyecx-auth-guard-role.service.mjs +19 -70
- package/fesm2015/monkey-front-core.mjs +16 -70
- package/fesm2015/monkey-front-core.mjs.map +1 -1
- package/fesm2020/monkey-front-core.mjs +16 -69
- package/fesm2020/monkey-front-core.mjs.map +1 -1
- package/monkey-front-core-0.0.353.tgz +0 -0
- package/package.json +1 -1
- package/monkey-front-core-0.0.351.tgz +0 -0
|
@@ -1,85 +1,34 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
1
2
|
import { Injectable } from '@angular/core';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
|
-
|
|
4
|
+
let MonkeyEcxAuthGuardByRole = class MonkeyEcxAuthGuardByRole {
|
|
4
5
|
constructor() {
|
|
5
6
|
// not to do
|
|
6
7
|
}
|
|
7
8
|
static forRoles(roles, companyType, byExclusion) {
|
|
8
9
|
class RoleCheck {
|
|
9
|
-
constructor(
|
|
10
|
-
this.monkeyecxAuthenticationService = monkeyecxAuthenticationService;
|
|
11
|
-
this.router = router;
|
|
12
|
-
this.tokenCredentials = null;
|
|
10
|
+
constructor() {
|
|
13
11
|
// not to do
|
|
14
12
|
}
|
|
15
|
-
navigateToErrorPage() {
|
|
16
|
-
let path = '/app/pages/forbidden';
|
|
17
|
-
if (companyType) {
|
|
18
|
-
path = `/app/${companyType}/pages/forbidden`;
|
|
19
|
-
}
|
|
20
|
-
this.router?.navigate([path.toLowerCase()]);
|
|
21
|
-
}
|
|
22
|
-
getRole() {
|
|
23
|
-
const { tokenCredentials } = this;
|
|
24
|
-
if (!tokenCredentials)
|
|
25
|
-
return '';
|
|
26
|
-
if (tokenCredentials?.programAdmin === 'true') {
|
|
27
|
-
return 'PROGRAM_ADMIN';
|
|
28
|
-
}
|
|
29
|
-
if (tokenCredentials?.programAdmin === true) {
|
|
30
|
-
return 'PROGRAM_ADMIN';
|
|
31
|
-
}
|
|
32
|
-
return tokenCredentials?.role || '';
|
|
33
|
-
}
|
|
34
|
-
allowedSecurityAccess(roles) {
|
|
35
|
-
if (!roles?.length)
|
|
36
|
-
return true;
|
|
37
|
-
const found = roles?.indexOf(this.getRole());
|
|
38
|
-
let ret = false;
|
|
39
|
-
if (byExclusion) {
|
|
40
|
-
ret = true;
|
|
41
|
-
if (found > -1) {
|
|
42
|
-
ret = false;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
ret = false;
|
|
47
|
-
if (found > -1) {
|
|
48
|
-
ret = true;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
if (!roles || roles.length === 0 || this.getRole() === 'PROGRAM_ADMIN') {
|
|
52
|
-
ret = true;
|
|
53
|
-
}
|
|
54
|
-
return ret;
|
|
55
|
-
}
|
|
56
13
|
async canActivate() {
|
|
57
|
-
console.log('roles');
|
|
58
|
-
console.log(roles);
|
|
59
|
-
if (!this.tokenCredentials) {
|
|
60
|
-
this.tokenCredentials = await this.monkeyecxAuthenticationService.getToken();
|
|
61
|
-
}
|
|
62
|
-
console.log('this.tokenCredentials');
|
|
63
|
-
console.log(this.tokenCredentials);
|
|
64
|
-
console.log('checando');
|
|
65
|
-
if (!this.allowedSecurityAccess(roles)) {
|
|
66
|
-
console.log('checou erro');
|
|
67
|
-
this.navigateToErrorPage();
|
|
68
|
-
return false;
|
|
69
|
-
}
|
|
70
|
-
console.log('checou ok');
|
|
71
14
|
return true;
|
|
72
15
|
}
|
|
73
16
|
}
|
|
17
|
+
RoleCheck.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoleCheck, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
18
|
+
RoleCheck.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoleCheck, providedIn: 'root' });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoleCheck, decorators: [{
|
|
20
|
+
type: Injectable,
|
|
21
|
+
args: [{
|
|
22
|
+
providedIn: 'root'
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: function () { return []; } });
|
|
74
25
|
return RoleCheck;
|
|
75
26
|
}
|
|
76
|
-
}
|
|
77
|
-
MonkeyEcxAuthGuardByRole
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}], ctorParameters: function () { return []; } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWF1dGgtZ3VhcmQtcm9sZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2F1dGgvbW9ua2V5ZWN4LWF1dGgtZ3VhcmQtcm9sZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzNDLE1BQU0sT0FBTyx3QkFBd0I7SUFDbkM7UUFDRSxZQUFZO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBZSxFQUFFLFdBQW9CLEVBQUUsV0FBcUI7UUFDMUUsTUFBTSxTQUFTO1lBR2IsWUFDVSw4QkFBOEQsRUFDOUQsTUFBYztnQkFEZCxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO2dCQUM5RCxXQUFNLEdBQU4sTUFBTSxDQUFRO2dCQUpoQixxQkFBZ0IsR0FBUSxJQUFJLENBQUM7Z0JBTW5DLFlBQVk7WUFDZCxDQUFDO1lBRU8sbUJBQW1CO2dCQUN6QixJQUFJLElBQUksR0FBRyxzQkFBc0IsQ0FBQztnQkFDbEMsSUFBSSxXQUFXLEVBQUU7b0JBQ2YsSUFBSSxHQUFHLFFBQVEsV0FBVyxrQkFBa0IsQ0FBQztpQkFDOUM7Z0JBQ0QsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzlDLENBQUM7WUFFTyxPQUFPO2dCQUNiLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLElBQUksQ0FBQztnQkFFbEMsSUFBSSxDQUFDLGdCQUFnQjtvQkFBRSxPQUFPLEVBQUUsQ0FBQztnQkFDakMsSUFBSSxnQkFBZ0IsRUFBRSxZQUFZLEtBQUssTUFBTSxFQUFFO29CQUM3QyxPQUFPLGVBQWUsQ0FBQztpQkFDeEI7Z0JBQ0QsSUFBSSxnQkFBZ0IsRUFBRSxZQUFZLEtBQUssSUFBSSxFQUFFO29CQUMzQyxPQUFPLGVBQWUsQ0FBQztpQkFDeEI7Z0JBRUQsT0FBTyxnQkFBZ0IsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3RDLENBQUM7WUFFTyxxQkFBcUIsQ0FBQyxLQUFlO2dCQUMzQyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU07b0JBQUUsT0FBTyxJQUFJLENBQUM7Z0JBRWhDLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQzdDLElBQUksR0FBRyxHQUFHLEtBQUssQ0FBQztnQkFDaEIsSUFBSSxXQUFXLEVBQUU7b0JBQ2YsR0FBRyxHQUFHLElBQUksQ0FBQztvQkFDWCxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRTt3QkFDZCxHQUFHLEdBQUcsS0FBSyxDQUFDO3FCQUNiO2lCQUNGO3FCQUFNO29CQUNMLEdBQUcsR0FBRyxLQUFLLENBQUM7b0JBQ1osSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7d0JBQ2QsR0FBRyxHQUFHLElBQUksQ0FBQztxQkFDWjtpQkFDRjtnQkFDRCxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQUU7b0JBQ3RFLEdBQUcsR0FBRyxJQUFJLENBQUM7aUJBQ1o7Z0JBQ0QsT0FBTyxHQUFHLENBQUM7WUFDYixDQUFDO1lBRUQsS0FBSyxDQUFDLFdBQVc7Z0JBQ2YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDckIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtvQkFDMUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sSUFBSSxDQUFDLDhCQUE4QixDQUFDLFFBQVEsRUFBRSxDQUFDO2lCQUM5RTtnQkFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7Z0JBQ3JDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBQ25DLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQ3RDLE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7b0JBQzNCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO29CQUMzQixPQUFPLEtBQUssQ0FBQztpQkFDZDtnQkFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUV6QixPQUFPLElBQUksQ0FBQztZQUNkLENBQUM7U0FDRjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7O3FIQWpGVSx3QkFBd0I7eUhBQXhCLHdCQUF3QixjQUZ2QixNQUFNOzJGQUVQLHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYW5BY3RpdmF0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE1vbmtleUVjeEF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4vbW9ua2V5ZWN4LWF1dGhlbnRpY2F0aW9uLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNb25rZXlFY3hBdXRoR3VhcmRCeVJvbGUge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBub3QgdG8gZG9cbiAgfVxuXG4gIHN0YXRpYyBmb3JSb2xlcyhyb2xlczogc3RyaW5nW10sIGNvbXBhbnlUeXBlPzogc3RyaW5nLCBieUV4Y2x1c2lvbj86IGJvb2xlYW4pIHtcbiAgICBjbGFzcyBSb2xlQ2hlY2sgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSB7XG4gICAgICBwcml2YXRlIHRva2VuQ3JlZGVudGlhbHM6IGFueSA9IG51bGw7XG5cbiAgICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG1vbmtleWVjeEF1dGhlbnRpY2F0aW9uU2VydmljZTogTW9ua2V5RWN4QXV0aGVudGljYXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXG4gICAgICApIHtcbiAgICAgICAgLy8gbm90IHRvIGRvXG4gICAgICB9XG5cbiAgICAgIHByaXZhdGUgbmF2aWdhdGVUb0Vycm9yUGFnZSgpIHtcbiAgICAgICAgbGV0IHBhdGggPSAnL2FwcC9wYWdlcy9mb3JiaWRkZW4nO1xuICAgICAgICBpZiAoY29tcGFueVR5cGUpIHtcbiAgICAgICAgICBwYXRoID0gYC9hcHAvJHtjb21wYW55VHlwZX0vcGFnZXMvZm9yYmlkZGVuYDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJvdXRlcj8ubmF2aWdhdGUoW3BhdGgudG9Mb3dlckNhc2UoKV0pO1xuICAgICAgfVxuXG4gICAgICBwcml2YXRlIGdldFJvbGUoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgeyB0b2tlbkNyZWRlbnRpYWxzIH0gPSB0aGlzO1xuXG4gICAgICAgIGlmICghdG9rZW5DcmVkZW50aWFscykgcmV0dXJuICcnO1xuICAgICAgICBpZiAodG9rZW5DcmVkZW50aWFscz8ucHJvZ3JhbUFkbWluID09PSAndHJ1ZScpIHtcbiAgICAgICAgICByZXR1cm4gJ1BST0dSQU1fQURNSU4nO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0b2tlbkNyZWRlbnRpYWxzPy5wcm9ncmFtQWRtaW4gPT09IHRydWUpIHtcbiAgICAgICAgICByZXR1cm4gJ1BST0dSQU1fQURNSU4nO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRva2VuQ3JlZGVudGlhbHM/LnJvbGUgfHwgJyc7XG4gICAgICB9XG5cbiAgICAgIHByaXZhdGUgYWxsb3dlZFNlY3VyaXR5QWNjZXNzKHJvbGVzOiBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXJvbGVzPy5sZW5ndGgpIHJldHVybiB0cnVlO1xuXG4gICAgICAgIGNvbnN0IGZvdW5kID0gcm9sZXM/LmluZGV4T2YodGhpcy5nZXRSb2xlKCkpO1xuICAgICAgICBsZXQgcmV0ID0gZmFsc2U7XG4gICAgICAgIGlmIChieUV4Y2x1c2lvbikge1xuICAgICAgICAgIHJldCA9IHRydWU7XG4gICAgICAgICAgaWYgKGZvdW5kID4gLTEpIHtcbiAgICAgICAgICAgIHJldCA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXQgPSBmYWxzZTtcbiAgICAgICAgICBpZiAoZm91bmQgPiAtMSkge1xuICAgICAgICAgICAgcmV0ID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFyb2xlcyB8fCByb2xlcy5sZW5ndGggPT09IDAgfHwgdGhpcy5nZXRSb2xlKCkgPT09ICdQUk9HUkFNX0FETUlOJykge1xuICAgICAgICAgIHJldCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJldDtcbiAgICAgIH1cblxuICAgICAgYXN5bmMgY2FuQWN0aXZhdGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdyb2xlcycpO1xuICAgICAgICBjb25zb2xlLmxvZyhyb2xlcyk7XG4gICAgICAgIGlmICghdGhpcy50b2tlbkNyZWRlbnRpYWxzKSB7XG4gICAgICAgICAgdGhpcy50b2tlbkNyZWRlbnRpYWxzID0gYXdhaXQgdGhpcy5tb25rZXllY3hBdXRoZW50aWNhdGlvblNlcnZpY2UuZ2V0VG9rZW4oKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zb2xlLmxvZygndGhpcy50b2tlbkNyZWRlbnRpYWxzJyk7XG4gICAgICAgIGNvbnNvbGUubG9nKHRoaXMudG9rZW5DcmVkZW50aWFscyk7XG4gICAgICAgIGNvbnNvbGUubG9nKCdjaGVjYW5kbycpO1xuICAgICAgICBpZiAoIXRoaXMuYWxsb3dlZFNlY3VyaXR5QWNjZXNzKHJvbGVzKSkge1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdjaGVjb3UgZXJybycpO1xuICAgICAgICAgIHRoaXMubmF2aWdhdGVUb0Vycm9yUGFnZSgpO1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zb2xlLmxvZygnY2hlY291IG9rJyk7XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIFJvbGVDaGVjaztcbiAgfVxufVxuIl19
|
|
27
|
+
};
|
|
28
|
+
MonkeyEcxAuthGuardByRole = __decorate([
|
|
29
|
+
Injectable({
|
|
30
|
+
providedIn: 'root'
|
|
31
|
+
})
|
|
32
|
+
], MonkeyEcxAuthGuardByRole);
|
|
33
|
+
export { MonkeyEcxAuthGuardByRole };
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWF1dGgtZ3VhcmQtcm9sZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2F1dGgvbW9ua2V5ZWN4LWF1dGgtZ3VhcmQtcm9sZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxJQUFhLHdCQUF3QixHQUFyQyxNQUFhLHdCQUF3QjtJQUNuQztRQUNFLFlBQVk7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFlLEVBQUUsV0FBb0IsRUFBRSxXQUFxQjtRQUMxRSxNQUdNLFNBQVM7WUFDYjtnQkFDRSxZQUFZO1lBQ2QsQ0FBQztZQUVELEtBQUssQ0FBQyxXQUFXO2dCQUNmLE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQzs7OEdBUEcsU0FBUztrSEFBVCxTQUFTLGNBRkQsTUFBTTttR0FFZCxTQUFTOzBCQUhkLFVBQVU7MkJBQUM7NEJBQ1YsVUFBVSxFQUFFLE1BQU07eUJBQ25COztRQVdELE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0NBQ0YsQ0FBQTtBQXJCWSx3QkFBd0I7SUFIcEMsVUFBVSxDQUFDO1FBQ1YsVUFBVSxFQUFFLE1BQU07S0FDbkIsQ0FBQztHQUNXLHdCQUF3QixDQXFCcEM7U0FyQlksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuQWN0aXZhdGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNb25rZXlFY3hBdXRoR3VhcmRCeVJvbGUge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBub3QgdG8gZG9cbiAgfVxuXG4gIHN0YXRpYyBmb3JSb2xlcyhyb2xlczogc3RyaW5nW10sIGNvbXBhbnlUeXBlPzogc3RyaW5nLCBieUV4Y2x1c2lvbj86IGJvb2xlYW4pIHtcbiAgICBASW5qZWN0YWJsZSh7XG4gICAgICBwcm92aWRlZEluOiAncm9vdCdcbiAgICB9KVxuICAgIGNsYXNzIFJvbGVDaGVjayBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcbiAgICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICAvLyBub3QgdG8gZG9cbiAgICAgIH1cblxuICAgICAgYXN5bmMgY2FuQWN0aXZhdGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBSb2xlQ2hlY2s7XG4gIH1cbn1cblxuLyogQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTW9ua2V5RWN4QXV0aEd1YXJkQnlSb2xlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgLy8gbm90IHRvIGRvXG4gIH1cblxuICBzdGF0aWMgZm9yUm9sZXMocm9sZXM6IHN0cmluZ1tdLCBjb21wYW55VHlwZT86IHN0cmluZywgYnlFeGNsdXNpb24/OiBib29sZWFuKSB7XG4gICAgQEluamVjdGFibGUoe1xuICAgICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG4gICAgfSlcbiAgICBjbGFzcyBSb2xlQ2hlY2sgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSB7XG4gICAgICBwcml2YXRlIHRva2VuQ3JlZGVudGlhbHM6IGFueSA9IG51bGw7XG5cbiAgICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG1vbmtleWVjeEF1dGhlbnRpY2F0aW9uU2VydmljZTogTW9ua2V5RWN4QXV0aGVudGljYXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXG4gICAgICApIHtcbiAgICAgICAgLy8gbm90IHRvIGRvXG4gICAgICB9XG5cbiAgICAgIHByaXZhdGUgbmF2aWdhdGVUb0Vycm9yUGFnZSgpIHtcbiAgICAgICAgbGV0IHBhdGggPSAnL2FwcC9wYWdlcy9mb3JiaWRkZW4nO1xuICAgICAgICBpZiAoY29tcGFueVR5cGUpIHtcbiAgICAgICAgICBwYXRoID0gYC9hcHAvJHtjb21wYW55VHlwZX0vcGFnZXMvZm9yYmlkZGVuYDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJvdXRlcj8ubmF2aWdhdGUoW3BhdGgudG9Mb3dlckNhc2UoKV0pO1xuICAgICAgfVxuXG4gICAgICBwcml2YXRlIGdldFJvbGUoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgeyB0b2tlbkNyZWRlbnRpYWxzIH0gPSB0aGlzO1xuXG4gICAgICAgIGlmICghdG9rZW5DcmVkZW50aWFscykgcmV0dXJuICcnO1xuICAgICAgICBpZiAodG9rZW5DcmVkZW50aWFscz8ucHJvZ3JhbUFkbWluID09PSAndHJ1ZScpIHtcbiAgICAgICAgICByZXR1cm4gJ1BST0dSQU1fQURNSU4nO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0b2tlbkNyZWRlbnRpYWxzPy5wcm9ncmFtQWRtaW4gPT09IHRydWUpIHtcbiAgICAgICAgICByZXR1cm4gJ1BST0dSQU1fQURNSU4nO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRva2VuQ3JlZGVudGlhbHM/LnJvbGUgfHwgJyc7XG4gICAgICB9XG5cbiAgICAgIHByaXZhdGUgYWxsb3dlZFNlY3VyaXR5QWNjZXNzKHJvbGVzOiBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXJvbGVzPy5sZW5ndGgpIHJldHVybiB0cnVlO1xuXG4gICAgICAgIGNvbnN0IGZvdW5kID0gcm9sZXM/LmluZGV4T2YodGhpcy5nZXRSb2xlKCkpO1xuICAgICAgICBsZXQgcmV0ID0gZmFsc2U7XG4gICAgICAgIGlmIChieUV4Y2x1c2lvbikge1xuICAgICAgICAgIHJldCA9IHRydWU7XG4gICAgICAgICAgaWYgKGZvdW5kID4gLTEpIHtcbiAgICAgICAgICAgIHJldCA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXQgPSBmYWxzZTtcbiAgICAgICAgICBpZiAoZm91bmQgPiAtMSkge1xuICAgICAgICAgICAgcmV0ID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFyb2xlcyB8fCByb2xlcy5sZW5ndGggPT09IDAgfHwgdGhpcy5nZXRSb2xlKCkgPT09ICdQUk9HUkFNX0FETUlOJykge1xuICAgICAgICAgIHJldCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJldDtcbiAgICAgIH1cblxuICAgICAgYXN5bmMgY2FuQWN0aXZhdGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdyb2xlcycpO1xuICAgICAgICBjb25zb2xlLmxvZyhyb2xlcyk7XG4gICAgICAgIGlmICghdGhpcy50b2tlbkNyZWRlbnRpYWxzKSB7XG4gICAgICAgICAgdGhpcy50b2tlbkNyZWRlbnRpYWxzID0gYXdhaXQgdGhpcy5tb25rZXllY3hBdXRoZW50aWNhdGlvblNlcnZpY2UuZ2V0VG9rZW4oKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zb2xlLmxvZygndGhpcy50b2tlbkNyZWRlbnRpYWxzJyk7XG4gICAgICAgIGNvbnNvbGUubG9nKHRoaXMudG9rZW5DcmVkZW50aWFscyk7XG4gICAgICAgIGNvbnNvbGUubG9nKCdjaGVjYW5kbycpO1xuICAgICAgICBpZiAoIXRoaXMuYWxsb3dlZFNlY3VyaXR5QWNjZXNzKHJvbGVzKSkge1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdjaGVjb3UgZXJybycpO1xuICAgICAgICAgIHRoaXMubmF2aWdhdGVUb0Vycm9yUGFnZSgpO1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zb2xlLmxvZygnY2hlY291IG9rJyk7XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIFJvbGVDaGVjaztcbiAgfVxufSAqL1xuIl19
|
|
@@ -4116,91 +4116,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
4116
4116
|
args: [{ providedIn: 'root' }]
|
|
4117
4117
|
}], ctorParameters: function () { return [{ type: MonkeyEcxAuthenticationService }]; } });
|
|
4118
4118
|
|
|
4119
|
-
class MonkeyEcxAuthGuardByRole {
|
|
4119
|
+
let MonkeyEcxAuthGuardByRole = class MonkeyEcxAuthGuardByRole {
|
|
4120
4120
|
constructor() {
|
|
4121
4121
|
// not to do
|
|
4122
4122
|
}
|
|
4123
4123
|
static forRoles(roles, companyType, byExclusion) {
|
|
4124
4124
|
class RoleCheck {
|
|
4125
|
-
constructor(
|
|
4126
|
-
this.monkeyecxAuthenticationService = monkeyecxAuthenticationService;
|
|
4127
|
-
this.router = router;
|
|
4128
|
-
this.tokenCredentials = null;
|
|
4125
|
+
constructor() {
|
|
4129
4126
|
// not to do
|
|
4130
4127
|
}
|
|
4131
|
-
navigateToErrorPage() {
|
|
4132
|
-
var _a;
|
|
4133
|
-
let path = '/app/pages/forbidden';
|
|
4134
|
-
if (companyType) {
|
|
4135
|
-
path = `/app/${companyType}/pages/forbidden`;
|
|
4136
|
-
}
|
|
4137
|
-
(_a = this.router) === null || _a === void 0 ? void 0 : _a.navigate([path.toLowerCase()]);
|
|
4138
|
-
}
|
|
4139
|
-
getRole() {
|
|
4140
|
-
const { tokenCredentials } = this;
|
|
4141
|
-
if (!tokenCredentials)
|
|
4142
|
-
return '';
|
|
4143
|
-
if ((tokenCredentials === null || tokenCredentials === void 0 ? void 0 : tokenCredentials.programAdmin) === 'true') {
|
|
4144
|
-
return 'PROGRAM_ADMIN';
|
|
4145
|
-
}
|
|
4146
|
-
if ((tokenCredentials === null || tokenCredentials === void 0 ? void 0 : tokenCredentials.programAdmin) === true) {
|
|
4147
|
-
return 'PROGRAM_ADMIN';
|
|
4148
|
-
}
|
|
4149
|
-
return (tokenCredentials === null || tokenCredentials === void 0 ? void 0 : tokenCredentials.role) || '';
|
|
4150
|
-
}
|
|
4151
|
-
allowedSecurityAccess(roles) {
|
|
4152
|
-
if (!(roles === null || roles === void 0 ? void 0 : roles.length))
|
|
4153
|
-
return true;
|
|
4154
|
-
const found = roles === null || roles === void 0 ? void 0 : roles.indexOf(this.getRole());
|
|
4155
|
-
let ret = false;
|
|
4156
|
-
if (byExclusion) {
|
|
4157
|
-
ret = true;
|
|
4158
|
-
if (found > -1) {
|
|
4159
|
-
ret = false;
|
|
4160
|
-
}
|
|
4161
|
-
}
|
|
4162
|
-
else {
|
|
4163
|
-
ret = false;
|
|
4164
|
-
if (found > -1) {
|
|
4165
|
-
ret = true;
|
|
4166
|
-
}
|
|
4167
|
-
}
|
|
4168
|
-
if (!roles || roles.length === 0 || this.getRole() === 'PROGRAM_ADMIN') {
|
|
4169
|
-
ret = true;
|
|
4170
|
-
}
|
|
4171
|
-
return ret;
|
|
4172
|
-
}
|
|
4173
4128
|
canActivate() {
|
|
4174
4129
|
return __awaiter(this, void 0, void 0, function* () {
|
|
4175
|
-
console.log('roles');
|
|
4176
|
-
console.log(roles);
|
|
4177
|
-
if (!this.tokenCredentials) {
|
|
4178
|
-
this.tokenCredentials = yield this.monkeyecxAuthenticationService.getToken();
|
|
4179
|
-
}
|
|
4180
|
-
console.log('this.tokenCredentials');
|
|
4181
|
-
console.log(this.tokenCredentials);
|
|
4182
|
-
console.log('checando');
|
|
4183
|
-
if (!this.allowedSecurityAccess(roles)) {
|
|
4184
|
-
console.log('checou erro');
|
|
4185
|
-
this.navigateToErrorPage();
|
|
4186
|
-
return false;
|
|
4187
|
-
}
|
|
4188
|
-
console.log('checou ok');
|
|
4189
4130
|
return true;
|
|
4190
4131
|
});
|
|
4191
4132
|
}
|
|
4192
4133
|
}
|
|
4134
|
+
RoleCheck.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoleCheck, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4135
|
+
RoleCheck.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoleCheck, providedIn: 'root' });
|
|
4136
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoleCheck, decorators: [{
|
|
4137
|
+
type: Injectable,
|
|
4138
|
+
args: [{
|
|
4139
|
+
providedIn: 'root'
|
|
4140
|
+
}]
|
|
4141
|
+
}], ctorParameters: function () { return []; } });
|
|
4193
4142
|
return RoleCheck;
|
|
4194
4143
|
}
|
|
4195
|
-
}
|
|
4196
|
-
MonkeyEcxAuthGuardByRole
|
|
4197
|
-
|
|
4198
|
-
|
|
4199
|
-
|
|
4200
|
-
|
|
4201
|
-
providedIn: 'root'
|
|
4202
|
-
}]
|
|
4203
|
-
}], ctorParameters: function () { return []; } });
|
|
4144
|
+
};
|
|
4145
|
+
MonkeyEcxAuthGuardByRole = __decorate([
|
|
4146
|
+
Injectable({
|
|
4147
|
+
providedIn: 'root'
|
|
4148
|
+
})
|
|
4149
|
+
], MonkeyEcxAuthGuardByRole);
|
|
4204
4150
|
|
|
4205
4151
|
class MonkeyEcxAuthGuard {
|
|
4206
4152
|
constructor(monkeyecxAuthenticationService) {
|