| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -66,18 +66,57 @@ export class GfCreateOrUpdateAccessDialog implements OnInit, OnDestroy { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    this.isEditMode = !!data.accessId; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  public ngOnInit() { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    console.log('Dialog init - Edit mode:', this.isEditMode); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    console.log('Dialog data:', this.data); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  private async createAccess() { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    console.log('Creating access...'); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const access: CreateAccessDto = { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      alias: this.accessForm.get('alias').value, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      granteeUserId: this.accessForm.get('granteeUserId').value, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      permissions: [this.accessForm.get('permissions').value] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    try { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      await validateObjectForForm({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        classDto: CreateAccessDto, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        form: this.accessForm, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        object: access | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      this.dataService | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        .postAccess(access) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        .pipe( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          catchError((error) => { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            if (error.status === StatusCodes.BAD_REQUEST) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              this.notificationService.alert({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                title: $localize`Oops! Could not grant access.` | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            return EMPTY; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          }), | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          takeUntil(this.unsubscribeSubject) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        ) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        .subscribe(() => { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          this.dialogRef.close(access); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } catch (error) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      console.error(error); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  public ngOnDestroy() { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    this.unsubscribeSubject.next(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    this.unsubscribeSubject.complete(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  public ngOnInit() { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    this.accessForm = this.formBuilder.group({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      alias: [this.data.access.alias], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      granteeUserId: [this.data.access.grantee, Validators.required], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      permissions: [this.data.access.permissions[0], Validators.required], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      type: [ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        { value: this.data.access.type, disabled: this.isEditMode }, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        Validators.required | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      granteeUserId: [this.data.access.grantee, Validators.required] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      ] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    this.accessForm.get('type').valueChanges.subscribe((accessType) => { | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -123,45 +162,6 @@ export class GfCreateOrUpdateAccessDialog implements OnInit, OnDestroy { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  private async createAccess() { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    console.log('Creating access...'); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const access: CreateAccessDto = { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      alias: this.accessForm.get('alias').value, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      granteeUserId: this.accessForm.get('granteeUserId').value, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      permissions: [this.accessForm.get('permissions').value] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    console.log('Access data:', access); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    try { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      await validateObjectForForm({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        classDto: CreateAccessDto, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        form: this.accessForm, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        object: access | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      this.dataService | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        .postAccess(access) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        .pipe( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          catchError((error) => { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            if (error.status === StatusCodes.BAD_REQUEST) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              this.notificationService.alert({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                title: $localize`Oops! Could not grant access.` | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            return EMPTY; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          }), | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          takeUntil(this.unsubscribeSubject) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        ) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        .subscribe(() => { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          this.dialogRef.close(access); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } catch (error) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      console.error(error); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  private async updateAccess() { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    console.log('Updating access...'); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    const access: UpdateAccessDto = { | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -201,9 +201,4 @@ export class GfCreateOrUpdateAccessDialog implements OnInit, OnDestroy { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      console.error(error); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  public ngOnDestroy() { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    this.unsubscribeSubject.next(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    this.unsubscribeSubject.complete(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
					 | 
				
				 | 
				
					
  |