@senior-gestao-empresarial/angular-components 6.11.5-555820a5-91db-430c-998d-00ae845fd928 → 6.11.5-72631dc5-bf0c-4a0a-9ea5-755d8eb72f1d
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/bundles/senior-gestao-empresarial-angular-components.umd.js +21 -35
- package/bundles/senior-gestao-empresarial-angular-components.umd.js.map +1 -1
- package/bundles/senior-gestao-empresarial-angular-components.umd.min.js +1 -1
- package/bundles/senior-gestao-empresarial-angular-components.umd.min.js.map +1 -1
- package/components/permissions/verify-module-permissions-service.d.ts +11 -2
- package/components/permissions/verify-module-permissions.d.ts +3 -2
- package/esm2015/components/permissions/verify-module-permissions-service.js +2 -2
- package/esm2015/components/permissions/verify-module-permissions.js +23 -36
- package/esm5/components/permissions/verify-module-permissions-service.js +2 -2
- package/esm5/components/permissions/verify-module-permissions.js +23 -37
- package/fesm2015/senior-gestao-empresarial-angular-components.js +23 -36
- package/fesm2015/senior-gestao-empresarial-angular-components.js.map +1 -1
- package/fesm5/senior-gestao-empresarial-angular-components.js +23 -37
- package/fesm5/senior-gestao-empresarial-angular-components.js.map +1 -1
- package/package.json +1 -1
- package/senior-gestao-empresarial-angular-components.metadata.json +1 -1
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { Observable } from "rxjs";
|
|
3
|
-
import {
|
|
3
|
+
import { ModulesEnum } from "./protocols/modules.enum";
|
|
4
|
+
import { RecModulo } from "./protocols/rec-modulo";
|
|
4
5
|
export declare class VerifyModulePermissionsService {
|
|
5
6
|
private http;
|
|
6
7
|
private static QUERY_MODULES_URL;
|
|
7
8
|
constructor(http: HttpClient);
|
|
8
|
-
|
|
9
|
+
consultaModulos(request: ConsultaModulosInput): Observable<ConsultaModulosOutput>;
|
|
9
10
|
}
|
|
11
|
+
export declare type ConsultaModulosInput = {
|
|
12
|
+
modulo: ModulesEnum[];
|
|
13
|
+
somenteAtivo?: boolean;
|
|
14
|
+
empresa?: string;
|
|
15
|
+
};
|
|
16
|
+
export declare type ConsultaModulosOutput = {
|
|
17
|
+
modulos: RecModulo[];
|
|
18
|
+
};
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { Observable } from "rxjs";
|
|
2
2
|
import { ModulesEnum } from "./protocols/modules.enum";
|
|
3
3
|
import { VerifyModulePermissionsService } from "./verify-module-permissions-service";
|
|
4
|
+
import { RecModulo } from "./protocols/rec-modulo";
|
|
4
5
|
export declare class VerifyModulePermissions {
|
|
5
6
|
private readonly verifyModulePermissionsService;
|
|
6
7
|
constructor(verifyModulePermissionsService: VerifyModulePermissionsService);
|
|
7
8
|
private static readonly subjectsPerModuleMap;
|
|
8
9
|
/**
|
|
9
10
|
* Method to verify if user has permission on a specific module
|
|
10
|
-
* @param
|
|
11
|
+
* @param modules Modules to verify the permission
|
|
11
12
|
* @param requestPermission Indicative if must be call the primitive
|
|
12
13
|
* @returns An boolean Observable
|
|
13
14
|
*/
|
|
14
|
-
|
|
15
|
+
hasPermissions(modules: ModulesEnum[], requestPermission?: boolean): Observable<RecModulo[]>;
|
|
15
16
|
}
|
|
@@ -8,7 +8,7 @@ let VerifyModulePermissionsService = VerifyModulePermissionsService_1 = class Ve
|
|
|
8
8
|
constructor(http) {
|
|
9
9
|
this.http = http;
|
|
10
10
|
}
|
|
11
|
-
|
|
11
|
+
consultaModulos(request) {
|
|
12
12
|
return this.http.post(VerifyModulePermissionsService_1.QUERY_MODULES_URL, request);
|
|
13
13
|
}
|
|
14
14
|
};
|
|
@@ -23,4 +23,4 @@ VerifyModulePermissionsService = VerifyModulePermissionsService_1 = __decorate([
|
|
|
23
23
|
})
|
|
24
24
|
], VerifyModulePermissionsService);
|
|
25
25
|
export { VerifyModulePermissionsService };
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LW1vZHVsZS1wZXJtaXNzaW9ucy1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1nZXN0YW8tZW1wcmVzYXJpYWwvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9wZXJtaXNzaW9ucy92ZXJpZnktbW9kdWxlLXBlcm1pc3Npb25zLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUTNDLElBQWEsOEJBQThCLHNDQUEzQyxNQUFhLDhCQUE4QjtJQUl2QyxZQUNZLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7SUFDekIsQ0FBQztJQUVHLGVBQWUsQ0FBQyxPQUE2QjtRQUNoRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUNqQixnQ0FBOEIsQ0FBQyxpQkFBaUIsRUFDaEQsT0FBTyxDQUNWLENBQUM7SUFDTixDQUFDO0NBQ0osQ0FBQTtBQVprQixnREFBaUIsR0FBRywwQ0FBMEMsQ0FBQzs7WUFHNUQsVUFBVTs7O0FBTG5CLDhCQUE4QjtJQUgxQyxVQUFVLENBQUM7UUFDUixVQUFVLEVBQUUsS0FBSztLQUNwQixDQUFDO0dBQ1csOEJBQThCLENBYzFDO1NBZFksOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IE1vZHVsZXNFbnVtIH0gZnJvbSBcIi4vcHJvdG9jb2xzL21vZHVsZXMuZW51bVwiO1xuaW1wb3J0IHsgUmVjTW9kdWxvIH0gZnJvbSBcIi4vcHJvdG9jb2xzL3JlYy1tb2R1bG9cIjtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46IFwiYW55XCJcbn0pXG5leHBvcnQgY2xhc3MgVmVyaWZ5TW9kdWxlUGVybWlzc2lvbnNTZXJ2aWNlIHtcblxuICAgIHByaXZhdGUgc3RhdGljIFFVRVJZX01PRFVMRVNfVVJMID0gXCJlcnB4X2ZuZC9lbXByZXNhL3F1ZXJpZXMvY29uc3VsdGFNb2R1bG9zXCI7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50XG4gICAgKSB7fVxuXG4gICAgcHVibGljIGNvbnN1bHRhTW9kdWxvcyhyZXF1ZXN0OiBDb25zdWx0YU1vZHVsb3NJbnB1dCk6IE9ic2VydmFibGU8Q29uc3VsdGFNb2R1bG9zT3V0cHV0PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxDb25zdWx0YU1vZHVsb3NPdXRwdXQ+KFxuICAgICAgICAgICAgVmVyaWZ5TW9kdWxlUGVybWlzc2lvbnNTZXJ2aWNlLlFVRVJZX01PRFVMRVNfVVJMLFxuICAgICAgICAgICAgcmVxdWVzdFxuICAgICAgICApO1xuICAgIH1cbn1cblxuZXhwb3J0IHR5cGUgQ29uc3VsdGFNb2R1bG9zSW5wdXQgPSB7XG4gICAgbW9kdWxvOiBNb2R1bGVzRW51bVtdO1xuICAgIHNvbWVudGVBdGl2bz86IGJvb2xlYW47XG4gICAgZW1wcmVzYT86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIENvbnN1bHRhTW9kdWxvc091dHB1dCA9IHtcbiAgICBtb2R1bG9zOiBSZWNNb2R1bG9bXTtcbn07XG4iXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
var VerifyModulePermissions_1;
|
|
2
2
|
import { __decorate } from "tslib";
|
|
3
3
|
import { Injectable } from "@angular/core";
|
|
4
|
-
import { ReplaySubject
|
|
5
|
-
import {
|
|
4
|
+
import { ReplaySubject } from "rxjs";
|
|
5
|
+
import { take } from "rxjs/operators";
|
|
6
6
|
import { VerifyModulePermissionsService } from "./verify-module-permissions-service";
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "./verify-module-permissions-service";
|
|
@@ -12,42 +12,29 @@ let VerifyModulePermissions = VerifyModulePermissions_1 = class VerifyModulePerm
|
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
14
|
* Method to verify if user has permission on a specific module
|
|
15
|
-
* @param
|
|
15
|
+
* @param modules Modules to verify the permission
|
|
16
16
|
* @param requestPermission Indicative if must be call the primitive
|
|
17
17
|
* @returns An boolean Observable
|
|
18
18
|
*/
|
|
19
|
-
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
allowedModules.push(module);
|
|
42
|
-
return [];
|
|
43
|
-
}
|
|
44
|
-
}), toArray()).subscribe(() => {
|
|
45
|
-
allowedModulesSubject.next(allowedModules);
|
|
46
|
-
allowedModulesSubject.complete();
|
|
47
|
-
}, (err) => {
|
|
48
|
-
allowedModulesSubject.error(err);
|
|
49
|
-
});
|
|
50
|
-
return allowedModulesSubject.asObservable();
|
|
19
|
+
hasPermissions(modules, requestPermission) {
|
|
20
|
+
const moduleSubject = VerifyModulePermissions_1.subjectsPerModuleMap.get(modules);
|
|
21
|
+
if (!moduleSubject || requestPermission) {
|
|
22
|
+
const newModuleSubject = new ReplaySubject(1);
|
|
23
|
+
VerifyModulePermissions_1.subjectsPerModuleMap.set(modules, newModuleSubject);
|
|
24
|
+
this.verifyModulePermissionsService
|
|
25
|
+
.consultaModulos({ modulo: modules, somenteAtivo: true })
|
|
26
|
+
.pipe(take(1))
|
|
27
|
+
.subscribe(response => {
|
|
28
|
+
const hasPermissions = (response === null || response === void 0 ? void 0 : response.modulos) || [];
|
|
29
|
+
newModuleSubject.next(hasPermissions);
|
|
30
|
+
}, (err) => {
|
|
31
|
+
VerifyModulePermissions_1.subjectsPerModuleMap.delete(modules);
|
|
32
|
+
newModuleSubject.error(err);
|
|
33
|
+
newModuleSubject.unsubscribe();
|
|
34
|
+
});
|
|
35
|
+
return newModuleSubject.asObservable();
|
|
36
|
+
}
|
|
37
|
+
return moduleSubject.asObservable();
|
|
51
38
|
}
|
|
52
39
|
};
|
|
53
40
|
VerifyModulePermissions.ctorParameters = () => [
|
|
@@ -61,4 +48,4 @@ VerifyModulePermissions = VerifyModulePermissions_1 = __decorate([
|
|
|
61
48
|
})
|
|
62
49
|
], VerifyModulePermissions);
|
|
63
50
|
export { VerifyModulePermissions };
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LW1vZHVsZS1wZXJtaXNzaW9ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3ItZ2VzdGFvLWVtcHJlc2FyaWFsL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvcGVybWlzc2lvbnMvdmVyaWZ5LW1vZHVsZS1wZXJtaXNzaW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0scUNBQXFDLENBQUM7OztBQU1yRixJQUFhLHVCQUF1QiwrQkFBcEMsTUFBYSx1QkFBdUI7SUFDaEMsWUFDcUIsOEJBQThEO1FBQTlELG1DQUE4QixHQUE5Qiw4QkFBOEIsQ0FBZ0M7SUFDaEYsQ0FBQztJQUlKOzs7OztPQUtHO0lBQ0ksY0FBYyxDQUFDLE9BQXNCLEVBQUUsaUJBQTJCO1FBQ3JFLE1BQU0sYUFBYSxHQUFHLHlCQUF1QixDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVoRixJQUFJLENBQUMsYUFBYSxJQUFHLGlCQUFpQixFQUFFO1lBQ3BDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxhQUFhLENBQWMsQ0FBQyxDQUFDLENBQUM7WUFFM0QseUJBQXVCLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBRTVFLElBQUksQ0FBQyw4QkFBOEI7aUJBQzlCLGVBQWUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDO2lCQUN4RCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUNiLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDbEIsTUFBTSxjQUFjLEdBQUcsQ0FBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsT0FBTyxLQUFJLEVBQUUsQ0FBQztnQkFDL0MsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzFDLENBQUMsRUFDRyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNKLHlCQUF1QixDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDN0QsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM1QixnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQyxDQUFDLENBQ0osQ0FBQztZQUVOLE9BQU8sZ0JBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDMUM7UUFFRCxPQUFPLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0NBQ0osQ0FBQTs7WUF0Q3dELDhCQUE4Qjs7QUFHM0QsNENBQW9CLEdBQW1ELElBQUksR0FBRyxFQUFFLENBQUM7O0FBTGhHLHVCQUF1QjtJQUhuQyxVQUFVLENBQUM7UUFDUixVQUFVLEVBQUUsTUFBTTtLQUNyQixDQUFDO0dBQ1csdUJBQXVCLENBd0NuQztTQXhDWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5pbXBvcnQgeyBNb2R1bGVzRW51bSB9IGZyb20gXCIuL3Byb3RvY29scy9tb2R1bGVzLmVudW1cIjtcbmltcG9ydCB7IFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zU2VydmljZSB9IGZyb20gXCIuL3ZlcmlmeS1tb2R1bGUtcGVybWlzc2lvbnMtc2VydmljZVwiO1xuaW1wb3J0IHsgUmVjTW9kdWxvIH0gZnJvbSBcIi4vcHJvdG9jb2xzL3JlYy1tb2R1bG9cIjtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46IFwicm9vdFwiXG59KVxuZXhwb3J0IGNsYXNzIFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB2ZXJpZnlNb2R1bGVQZXJtaXNzaW9uc1NlcnZpY2U6IFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zU2VydmljZVxuICAgICkge31cblxuICAgIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IHN1YmplY3RzUGVyTW9kdWxlTWFwOiBNYXA8TW9kdWxlc0VudW1bXSwgUmVwbGF5U3ViamVjdDxSZWNNb2R1bG9bXT4+ID0gbmV3IE1hcCgpO1xuXG4gICAgLyoqXG4gICAgICogTWV0aG9kIHRvIHZlcmlmeSBpZiB1c2VyIGhhcyBwZXJtaXNzaW9uIG9uIGEgc3BlY2lmaWMgbW9kdWxlXG4gICAgICogQHBhcmFtIG1vZHVsZXMgTW9kdWxlcyB0byB2ZXJpZnkgdGhlIHBlcm1pc3Npb25cbiAgICAgKiBAcGFyYW0gcmVxdWVzdFBlcm1pc3Npb24gSW5kaWNhdGl2ZSBpZiBtdXN0IGJlIGNhbGwgdGhlIHByaW1pdGl2ZVxuICAgICAqIEByZXR1cm5zIEFuIGJvb2xlYW4gT2JzZXJ2YWJsZVxuICAgICAqL1xuICAgIHB1YmxpYyBoYXNQZXJtaXNzaW9ucyhtb2R1bGVzOiBNb2R1bGVzRW51bVtdLCByZXF1ZXN0UGVybWlzc2lvbj86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPFJlY01vZHVsb1tdPiB7XG4gICAgICAgIGNvbnN0IG1vZHVsZVN1YmplY3QgPSBWZXJpZnlNb2R1bGVQZXJtaXNzaW9ucy5zdWJqZWN0c1Blck1vZHVsZU1hcC5nZXQobW9kdWxlcyk7XG5cbiAgICAgICAgaWYgKCFtb2R1bGVTdWJqZWN0IHx8cmVxdWVzdFBlcm1pc3Npb24pIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld01vZHVsZVN1YmplY3QgPSBuZXcgUmVwbGF5U3ViamVjdDxSZWNNb2R1bG9bXT4oMSk7XG5cbiAgICAgICAgICAgIFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zLnN1YmplY3RzUGVyTW9kdWxlTWFwLnNldChtb2R1bGVzLCBuZXdNb2R1bGVTdWJqZWN0KTtcblxuICAgICAgICAgICAgdGhpcy52ZXJpZnlNb2R1bGVQZXJtaXNzaW9uc1NlcnZpY2VcbiAgICAgICAgICAgICAgICAuY29uc3VsdGFNb2R1bG9zKHsgbW9kdWxvOiBtb2R1bGVzLCBzb21lbnRlQXRpdm86IHRydWUgfSlcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBoYXNQZXJtaXNzaW9ucyA9IHJlc3BvbnNlPy5tb2R1bG9zIHx8IFtdO1xuICAgICAgICAgICAgICAgICAgICBuZXdNb2R1bGVTdWJqZWN0Lm5leHQoaGFzUGVybWlzc2lvbnMpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zLnN1YmplY3RzUGVyTW9kdWxlTWFwLmRlbGV0ZShtb2R1bGVzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ld01vZHVsZVN1YmplY3QuZXJyb3IoZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ld01vZHVsZVN1YmplY3QudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHJldHVybiBuZXdNb2R1bGVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG1vZHVsZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxufVxuIl19
|
|
@@ -8,7 +8,7 @@ var VerifyModulePermissionsService = /** @class */ (function () {
|
|
|
8
8
|
this.http = http;
|
|
9
9
|
}
|
|
10
10
|
VerifyModulePermissionsService_1 = VerifyModulePermissionsService;
|
|
11
|
-
VerifyModulePermissionsService.prototype.
|
|
11
|
+
VerifyModulePermissionsService.prototype.consultaModulos = function (request) {
|
|
12
12
|
return this.http.post(VerifyModulePermissionsService_1.QUERY_MODULES_URL, request);
|
|
13
13
|
};
|
|
14
14
|
var VerifyModulePermissionsService_1;
|
|
@@ -25,4 +25,4 @@ var VerifyModulePermissionsService = /** @class */ (function () {
|
|
|
25
25
|
return VerifyModulePermissionsService;
|
|
26
26
|
}());
|
|
27
27
|
export { VerifyModulePermissionsService };
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LW1vZHVsZS1wZXJtaXNzaW9ucy1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1nZXN0YW8tZW1wcmVzYXJpYWwvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9wZXJtaXNzaW9ucy92ZXJpZnktbW9kdWxlLXBlcm1pc3Npb25zLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRM0M7SUFJSSx3Q0FDWSxJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3pCLENBQUM7dUNBTkssOEJBQThCO0lBUWhDLHdEQUFlLEdBQXRCLFVBQXVCLE9BQTZCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ2pCLGdDQUE4QixDQUFDLGlCQUFpQixFQUNoRCxPQUFPLENBQ1YsQ0FBQztJQUNOLENBQUM7O0lBWGMsZ0RBQWlCLEdBQUcsMENBQTBDLENBQUM7O2dCQUc1RCxVQUFVOzs7SUFMbkIsOEJBQThCO1FBSDFDLFVBQVUsQ0FBQztZQUNSLFVBQVUsRUFBRSxLQUFLO1NBQ3BCLENBQUM7T0FDVyw4QkFBOEIsQ0FjMUM7eUNBdkJEO0NBdUJDLEFBZEQsSUFjQztTQWRZLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBNb2R1bGVzRW51bSB9IGZyb20gXCIuL3Byb3RvY29scy9tb2R1bGVzLmVudW1cIjtcbmltcG9ydCB7IFJlY01vZHVsbyB9IGZyb20gXCIuL3Byb3RvY29scy9yZWMtbW9kdWxvXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiBcImFueVwiXG59KVxuZXhwb3J0IGNsYXNzIFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zU2VydmljZSB7XG5cbiAgICBwcml2YXRlIHN0YXRpYyBRVUVSWV9NT0RVTEVTX1VSTCA9IFwiZXJweF9mbmQvZW1wcmVzYS9xdWVyaWVzL2NvbnN1bHRhTW9kdWxvc1wiO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudFxuICAgICkge31cblxuICAgIHB1YmxpYyBjb25zdWx0YU1vZHVsb3MocmVxdWVzdDogQ29uc3VsdGFNb2R1bG9zSW5wdXQpOiBPYnNlcnZhYmxlPENvbnN1bHRhTW9kdWxvc091dHB1dD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8Q29uc3VsdGFNb2R1bG9zT3V0cHV0PihcbiAgICAgICAgICAgIFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zU2VydmljZS5RVUVSWV9NT0RVTEVTX1VSTCxcbiAgICAgICAgICAgIHJlcXVlc3RcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbmV4cG9ydCB0eXBlIENvbnN1bHRhTW9kdWxvc0lucHV0ID0ge1xuICAgIG1vZHVsbzogTW9kdWxlc0VudW1bXTtcbiAgICBzb21lbnRlQXRpdm8/OiBib29sZWFuO1xuICAgIGVtcHJlc2E/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBDb25zdWx0YU1vZHVsb3NPdXRwdXQgPSB7XG4gICAgbW9kdWxvczogUmVjTW9kdWxvW107XG59O1xuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { Injectable } from "@angular/core";
|
|
3
|
-
import { ReplaySubject
|
|
4
|
-
import {
|
|
3
|
+
import { ReplaySubject } from "rxjs";
|
|
4
|
+
import { take } from "rxjs/operators";
|
|
5
5
|
import { VerifyModulePermissionsService } from "./verify-module-permissions-service";
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "./verify-module-permissions-service";
|
|
@@ -12,43 +12,29 @@ var VerifyModulePermissions = /** @class */ (function () {
|
|
|
12
12
|
VerifyModulePermissions_1 = VerifyModulePermissions;
|
|
13
13
|
/**
|
|
14
14
|
* Method to verify if user has permission on a specific module
|
|
15
|
-
* @param
|
|
15
|
+
* @param modules Modules to verify the permission
|
|
16
16
|
* @param requestPermission Indicative if must be call the primitive
|
|
17
17
|
* @returns An boolean Observable
|
|
18
18
|
*/
|
|
19
|
-
VerifyModulePermissions.prototype.
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
return allowedModules;
|
|
39
|
-
}));
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
allowedModules.push(module);
|
|
43
|
-
return [];
|
|
44
|
-
}
|
|
45
|
-
}), toArray()).subscribe(function () {
|
|
46
|
-
allowedModulesSubject.next(allowedModules);
|
|
47
|
-
allowedModulesSubject.complete();
|
|
48
|
-
}, function (err) {
|
|
49
|
-
allowedModulesSubject.error(err);
|
|
50
|
-
});
|
|
51
|
-
return allowedModulesSubject.asObservable();
|
|
19
|
+
VerifyModulePermissions.prototype.hasPermissions = function (modules, requestPermission) {
|
|
20
|
+
var moduleSubject = VerifyModulePermissions_1.subjectsPerModuleMap.get(modules);
|
|
21
|
+
if (!moduleSubject || requestPermission) {
|
|
22
|
+
var newModuleSubject_1 = new ReplaySubject(1);
|
|
23
|
+
VerifyModulePermissions_1.subjectsPerModuleMap.set(modules, newModuleSubject_1);
|
|
24
|
+
this.verifyModulePermissionsService
|
|
25
|
+
.consultaModulos({ modulo: modules, somenteAtivo: true })
|
|
26
|
+
.pipe(take(1))
|
|
27
|
+
.subscribe(function (response) {
|
|
28
|
+
var hasPermissions = (response === null || response === void 0 ? void 0 : response.modulos) || [];
|
|
29
|
+
newModuleSubject_1.next(hasPermissions);
|
|
30
|
+
}, function (err) {
|
|
31
|
+
VerifyModulePermissions_1.subjectsPerModuleMap.delete(modules);
|
|
32
|
+
newModuleSubject_1.error(err);
|
|
33
|
+
newModuleSubject_1.unsubscribe();
|
|
34
|
+
});
|
|
35
|
+
return newModuleSubject_1.asObservable();
|
|
36
|
+
}
|
|
37
|
+
return moduleSubject.asObservable();
|
|
52
38
|
};
|
|
53
39
|
var VerifyModulePermissions_1;
|
|
54
40
|
VerifyModulePermissions.ctorParameters = function () { return [
|
|
@@ -64,4 +50,4 @@ var VerifyModulePermissions = /** @class */ (function () {
|
|
|
64
50
|
return VerifyModulePermissions;
|
|
65
51
|
}());
|
|
66
52
|
export { VerifyModulePermissions };
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LW1vZHVsZS1wZXJtaXNzaW9ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3ItZ2VzdGFvLWVtcHJlc2FyaWFsL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvcGVybWlzc2lvbnMvdmVyaWZ5LW1vZHVsZS1wZXJtaXNzaW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd0QyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7O0FBTXJGO0lBQ0ksaUNBQ3FCLDhCQUE4RDtRQUE5RCxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO0lBQ2hGLENBQUM7Z0NBSEssdUJBQXVCO0lBT2hDOzs7OztPQUtHO0lBQ0ksZ0RBQWMsR0FBckIsVUFBc0IsT0FBc0IsRUFBRSxpQkFBMkI7UUFDckUsSUFBTSxhQUFhLEdBQUcseUJBQXVCLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWhGLElBQUksQ0FBQyxhQUFhLElBQUcsaUJBQWlCLEVBQUU7WUFDcEMsSUFBTSxrQkFBZ0IsR0FBRyxJQUFJLGFBQWEsQ0FBYyxDQUFDLENBQUMsQ0FBQztZQUUzRCx5QkFBdUIsQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLGtCQUFnQixDQUFDLENBQUM7WUFFNUUsSUFBSSxDQUFDLDhCQUE4QjtpQkFDOUIsZUFBZSxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUM7aUJBQ3hELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ2IsU0FBUyxDQUFDLFVBQUEsUUFBUTtnQkFDZixJQUFNLGNBQWMsR0FBRyxDQUFBLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxPQUFPLEtBQUksRUFBRSxDQUFDO2dCQUMvQyxrQkFBZ0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDMUMsQ0FBQyxFQUNHLFVBQUMsR0FBRztnQkFDQSx5QkFBdUIsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzdELGtCQUFnQixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDNUIsa0JBQWdCLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkMsQ0FBQyxDQUNKLENBQUM7WUFFTixPQUFPLGtCQUFnQixDQUFDLFlBQVksRUFBRSxDQUFDO1NBQzFDO1FBRUQsT0FBTyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsQ0FBQzs7O2dCQXJDb0QsOEJBQThCOztJQUczRCw0Q0FBb0IsR0FBbUQsSUFBSSxHQUFHLEVBQUUsQ0FBQzs7SUFMaEcsdUJBQXVCO1FBSG5DLFVBQVUsQ0FBQztZQUNSLFVBQVUsRUFBRSxNQUFNO1NBQ3JCLENBQUM7T0FDVyx1QkFBdUIsQ0F3Q25DO2tDQW5ERDtDQW1EQyxBQXhDRCxJQXdDQztTQXhDWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5pbXBvcnQgeyBNb2R1bGVzRW51bSB9IGZyb20gXCIuL3Byb3RvY29scy9tb2R1bGVzLmVudW1cIjtcbmltcG9ydCB7IFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zU2VydmljZSB9IGZyb20gXCIuL3ZlcmlmeS1tb2R1bGUtcGVybWlzc2lvbnMtc2VydmljZVwiO1xuaW1wb3J0IHsgUmVjTW9kdWxvIH0gZnJvbSBcIi4vcHJvdG9jb2xzL3JlYy1tb2R1bG9cIjtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46IFwicm9vdFwiXG59KVxuZXhwb3J0IGNsYXNzIFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB2ZXJpZnlNb2R1bGVQZXJtaXNzaW9uc1NlcnZpY2U6IFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zU2VydmljZVxuICAgICkge31cblxuICAgIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IHN1YmplY3RzUGVyTW9kdWxlTWFwOiBNYXA8TW9kdWxlc0VudW1bXSwgUmVwbGF5U3ViamVjdDxSZWNNb2R1bG9bXT4+ID0gbmV3IE1hcCgpO1xuXG4gICAgLyoqXG4gICAgICogTWV0aG9kIHRvIHZlcmlmeSBpZiB1c2VyIGhhcyBwZXJtaXNzaW9uIG9uIGEgc3BlY2lmaWMgbW9kdWxlXG4gICAgICogQHBhcmFtIG1vZHVsZXMgTW9kdWxlcyB0byB2ZXJpZnkgdGhlIHBlcm1pc3Npb25cbiAgICAgKiBAcGFyYW0gcmVxdWVzdFBlcm1pc3Npb24gSW5kaWNhdGl2ZSBpZiBtdXN0IGJlIGNhbGwgdGhlIHByaW1pdGl2ZVxuICAgICAqIEByZXR1cm5zIEFuIGJvb2xlYW4gT2JzZXJ2YWJsZVxuICAgICAqL1xuICAgIHB1YmxpYyBoYXNQZXJtaXNzaW9ucyhtb2R1bGVzOiBNb2R1bGVzRW51bVtdLCByZXF1ZXN0UGVybWlzc2lvbj86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPFJlY01vZHVsb1tdPiB7XG4gICAgICAgIGNvbnN0IG1vZHVsZVN1YmplY3QgPSBWZXJpZnlNb2R1bGVQZXJtaXNzaW9ucy5zdWJqZWN0c1Blck1vZHVsZU1hcC5nZXQobW9kdWxlcyk7XG5cbiAgICAgICAgaWYgKCFtb2R1bGVTdWJqZWN0IHx8cmVxdWVzdFBlcm1pc3Npb24pIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld01vZHVsZVN1YmplY3QgPSBuZXcgUmVwbGF5U3ViamVjdDxSZWNNb2R1bG9bXT4oMSk7XG5cbiAgICAgICAgICAgIFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zLnN1YmplY3RzUGVyTW9kdWxlTWFwLnNldChtb2R1bGVzLCBuZXdNb2R1bGVTdWJqZWN0KTtcblxuICAgICAgICAgICAgdGhpcy52ZXJpZnlNb2R1bGVQZXJtaXNzaW9uc1NlcnZpY2VcbiAgICAgICAgICAgICAgICAuY29uc3VsdGFNb2R1bG9zKHsgbW9kdWxvOiBtb2R1bGVzLCBzb21lbnRlQXRpdm86IHRydWUgfSlcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBoYXNQZXJtaXNzaW9ucyA9IHJlc3BvbnNlPy5tb2R1bG9zIHx8IFtdO1xuICAgICAgICAgICAgICAgICAgICBuZXdNb2R1bGVTdWJqZWN0Lm5leHQoaGFzUGVybWlzc2lvbnMpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFZlcmlmeU1vZHVsZVBlcm1pc3Npb25zLnN1YmplY3RzUGVyTW9kdWxlTWFwLmRlbGV0ZShtb2R1bGVzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ld01vZHVsZVN1YmplY3QuZXJyb3IoZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ld01vZHVsZVN1YmplY3QudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHJldHVybiBuZXdNb2R1bGVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG1vZHVsZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxufVxuIl19
|
|
@@ -3,8 +3,8 @@ import { Input, Component, NgModule, Injectable, Inject, ɵɵdefineInjectable,
|
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
4
|
import { BreadcrumbModule as BreadcrumbModule$1 } from 'primeng/breadcrumb';
|
|
5
5
|
import { NavigationEnd, PRIMARY_OUTLET, ActivatedRoute, Router, RouterModule } from '@angular/router';
|
|
6
|
-
import { Subject, throwError, interval, of, BehaviorSubject, race, timer, iif, fromEvent, ReplaySubject
|
|
7
|
-
import { takeUntil, filter, catchError, map, takeWhile, switchMap, take, finalize, first
|
|
6
|
+
import { Subject, throwError, interval, of, BehaviorSubject, race, timer, iif, fromEvent, ReplaySubject } from 'rxjs';
|
|
7
|
+
import { takeUntil, filter, catchError, map, takeWhile, switchMap, take, finalize, first } from 'rxjs/operators';
|
|
8
8
|
import * as moment_ from 'moment';
|
|
9
9
|
import { FormField, FieldType } from '@seniorsistemas/angular-components';
|
|
10
10
|
import { HttpParams, HttpClient } from '@angular/common/http';
|
|
@@ -7083,7 +7083,7 @@ let VerifyModulePermissionsService = VerifyModulePermissionsService_1 = class Ve
|
|
|
7083
7083
|
constructor(http) {
|
|
7084
7084
|
this.http = http;
|
|
7085
7085
|
}
|
|
7086
|
-
|
|
7086
|
+
consultaModulos(request) {
|
|
7087
7087
|
return this.http.post(VerifyModulePermissionsService_1.QUERY_MODULES_URL, request);
|
|
7088
7088
|
}
|
|
7089
7089
|
};
|
|
@@ -7105,42 +7105,29 @@ let VerifyModulePermissions = VerifyModulePermissions_1 = class VerifyModulePerm
|
|
|
7105
7105
|
}
|
|
7106
7106
|
/**
|
|
7107
7107
|
* Method to verify if user has permission on a specific module
|
|
7108
|
-
* @param
|
|
7108
|
+
* @param modules Modules to verify the permission
|
|
7109
7109
|
* @param requestPermission Indicative if must be call the primitive
|
|
7110
7110
|
* @returns An boolean Observable
|
|
7111
7111
|
*/
|
|
7112
|
-
|
|
7113
|
-
const
|
|
7114
|
-
|
|
7115
|
-
|
|
7116
|
-
|
|
7117
|
-
|
|
7118
|
-
|
|
7119
|
-
|
|
7120
|
-
|
|
7121
|
-
|
|
7122
|
-
|
|
7123
|
-
|
|
7124
|
-
|
|
7125
|
-
|
|
7126
|
-
|
|
7127
|
-
|
|
7128
|
-
|
|
7129
|
-
|
|
7130
|
-
|
|
7131
|
-
}));
|
|
7132
|
-
}
|
|
7133
|
-
else {
|
|
7134
|
-
allowedModules.push(module);
|
|
7135
|
-
return [];
|
|
7136
|
-
}
|
|
7137
|
-
}), toArray()).subscribe(() => {
|
|
7138
|
-
allowedModulesSubject.next(allowedModules);
|
|
7139
|
-
allowedModulesSubject.complete();
|
|
7140
|
-
}, (err) => {
|
|
7141
|
-
allowedModulesSubject.error(err);
|
|
7142
|
-
});
|
|
7143
|
-
return allowedModulesSubject.asObservable();
|
|
7112
|
+
hasPermissions(modules, requestPermission) {
|
|
7113
|
+
const moduleSubject = VerifyModulePermissions_1.subjectsPerModuleMap.get(modules);
|
|
7114
|
+
if (!moduleSubject || requestPermission) {
|
|
7115
|
+
const newModuleSubject = new ReplaySubject(1);
|
|
7116
|
+
VerifyModulePermissions_1.subjectsPerModuleMap.set(modules, newModuleSubject);
|
|
7117
|
+
this.verifyModulePermissionsService
|
|
7118
|
+
.consultaModulos({ modulo: modules, somenteAtivo: true })
|
|
7119
|
+
.pipe(take(1))
|
|
7120
|
+
.subscribe(response => {
|
|
7121
|
+
const hasPermissions = (response === null || response === void 0 ? void 0 : response.modulos) || [];
|
|
7122
|
+
newModuleSubject.next(hasPermissions);
|
|
7123
|
+
}, (err) => {
|
|
7124
|
+
VerifyModulePermissions_1.subjectsPerModuleMap.delete(modules);
|
|
7125
|
+
newModuleSubject.error(err);
|
|
7126
|
+
newModuleSubject.unsubscribe();
|
|
7127
|
+
});
|
|
7128
|
+
return newModuleSubject.asObservable();
|
|
7129
|
+
}
|
|
7130
|
+
return moduleSubject.asObservable();
|
|
7144
7131
|
}
|
|
7145
7132
|
};
|
|
7146
7133
|
VerifyModulePermissions.ctorParameters = () => [
|