feat(dashboard): add options menu and improve layout

This commit is contained in:
Jan K9f 2025-01-21 15:21:55 +01:00
commit ba520eea10
Signed by: jank
GPG key ID: 50620ADD22CD330B
7 changed files with 84 additions and 20 deletions

View file

@ -0,0 +1,9 @@
<button mat-icon-button [matMenuTriggerFor]="menu" aria-label="Example icon-button with a menu">
<mat-icon>more_vert</mat-icon>
</button>
<mat-menu #menu="matMenu">
<button (click)="logout()" mat-menu-item>
<mat-icon>logout</mat-icon>
<span>Logout</span>
</button>
</mat-menu>

View file

@ -0,0 +1,23 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { OptionsMenuComponent } from './options-menu.component';
describe('OptionsMenuComponent', () => {
let component: OptionsMenuComponent;
let fixture: ComponentFixture<OptionsMenuComponent>;
beforeEach(async () => {
await TestBed.configureTestingModule({
imports: [OptionsMenuComponent]
})
.compileComponents();
fixture = TestBed.createComponent(OptionsMenuComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View file

@ -0,0 +1,19 @@
import { Component } from '@angular/core';
import {MatIconModule} from '@angular/material/icon';
import {MatMenuModule} from '@angular/material/menu';
import {MatButtonModule} from '@angular/material/button';
import { LogoutService } from '../service/logout.service';
@Component({
selector: 'app-options-menu',
imports: [MatIconModule, MatMenuModule, MatButtonModule],
templateUrl: './options-menu.component.html',
styleUrl: './options-menu.component.css'
})
export class OptionsMenuComponent {
constructor(private logoutService: LogoutService) {}
logout() {
this.logoutService.logout();
}
}