Browse Source

feat(client): implement view child signals

pull/6913/head
KenTandrian 6 days ago
parent
commit
f72b9d1a50
  1. 17
      apps/client/src/app/components/header/header.component.ts

17
apps/client/src/app/components/header/header.component.ts

@ -33,7 +33,7 @@ import {
Input, Input,
OnChanges, OnChanges,
Output, Output,
ViewChild viewChild
} from '@angular/core'; } from '@angular/core';
import { takeUntilDestroyed } from '@angular/core/rxjs-interop'; import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
import { MatBadgeModule } from '@angular/material/badge'; import { MatBadgeModule } from '@angular/material/badge';
@ -87,9 +87,10 @@ export class GfHeaderComponent implements OnChanges {
@Output() public readonly signOut = new EventEmitter<void>(); @Output() public readonly signOut = new EventEmitter<void>();
@ViewChild('assistant') protected assistantElement: GfAssistantComponent; protected assistantElement =
@ViewChild('assistantTrigger') viewChild.required<GfAssistantComponent>('assistant');
protected assistentMenuTriggerElement: MatMenuTrigger; protected assistentMenuTriggerElement =
viewChild.required<MatMenuTrigger>('assistantTrigger');
protected hasFilters: boolean; protected hasFilters: boolean;
protected hasImpersonationId: boolean; protected hasImpersonationId: boolean;
@ -163,8 +164,8 @@ export class GfHeaderComponent implements OnChanges {
event.target?.nodeName?.toLowerCase() !== 'textarea' && event.target?.nodeName?.toLowerCase() !== 'textarea' &&
this.hasPermissionToAccessAssistant this.hasPermissionToAccessAssistant
) { ) {
this.assistantElement.setIsOpen(true); this.assistantElement().setIsOpen(true);
this.assistentMenuTriggerElement.openMenu(); this.assistentMenuTriggerElement().openMenu();
event.preventDefault(); event.preventDefault();
} }
@ -215,7 +216,7 @@ export class GfHeaderComponent implements OnChanges {
} }
protected closeAssistant() { protected closeAssistant() {
this.assistentMenuTriggerElement?.closeMenu(); this.assistentMenuTriggerElement().closeMenu();
} }
protected impersonateAccount(aId: string) { protected impersonateAccount(aId: string) {
@ -283,7 +284,7 @@ export class GfHeaderComponent implements OnChanges {
} }
protected onOpenAssistant() { protected onOpenAssistant() {
this.assistantElement.initialize(); this.assistantElement().initialize();
} }
protected onSignOut() { protected onSignOut() {

Loading…
Cancel
Save