From 21f6e27c7f6300acfba115845da5a43524360aab Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 20 Mar 2024 12:49:32 +0530 Subject: [PATCH] Map: diosplay of layers in the tree with viewableRole --- src/app/map/controls/map-controls.component.ts | 3 ++- .../tree-layer-item/tree-layer-item.component.html | 2 +- .../tree-layer-item/tree-layer-item.component.ts | 13 ++++++++----- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/app/map/controls/map-controls.component.ts b/src/app/map/controls/map-controls.component.ts index 7208cc3..8534c0b 100644 --- a/src/app/map/controls/map-controls.component.ts +++ b/src/app/map/controls/map-controls.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core' +import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core' import { FormControl } from '@angular/forms' import { MatSnackBar } from '@angular/material/snack-bar' @@ -18,6 +18,7 @@ import { BaseMapWithStores } from '../../openapi' selector: 'gisaf-map-controls', templateUrl: './map-controls.component.html', styleUrls: ['./map-controls.component.css'], + changeDetection: ChangeDetectionStrategy.OnPush, }) export class MapControlsComponent implements OnInit { baseUrl: string = '/gj/' diff --git a/src/app/map/tree-layer-item/tree-layer-item.component.html b/src/app/map/tree-layer-item/tree-layer-item.component.html index 55f5496..89d7794 100644 --- a/src/app/map/tree-layer-item/tree-layer-item.component.html +++ b/src/app/map/tree-layer-item/tree-layer-item.component.html @@ -6,7 +6,7 @@ matTooltip="{{ node.description || node.title || node.name }} ({{ node.gisType }}, {{ node.count }})" matTooltipPosition="right" [class.hasPlugins]="!!node.tagPlugins" - [hidden]='isHidden()' + [hidden]='isHidden() | async' >
this.node - if (!node.viewableRole) { - return false + isHidden(): Observable { + let role: string = (this.node).viewableRole + if (!role) { + return of(false) } else { - return !this.authenticationService.isAuthorized([node.viewableRole]) + return this.authenticationService.isAuthorized([role]).pipe(map( + a => !a + )) } }