mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-08 18:44:14 +00:00
34 lines
934 B
TypeScript
34 lines
934 B
TypeScript
import { Component, OnInit } from '@angular/core';
|
|
import { createSelector, Store } from '@ngrx/store';
|
|
import { Observable } from 'rxjs/Observable';
|
|
|
|
import { HeaderState } from './header.reducer';
|
|
import { HeaderToggleAction } from './header.actions';
|
|
import { AppState } from '../app.reducer';
|
|
|
|
const headerStateSelector = (state: AppState) => state.header;
|
|
const navCollapsedSelector = createSelector(headerStateSelector, (header: HeaderState) => header.navCollapsed);
|
|
|
|
@Component({
|
|
selector: 'ds-header',
|
|
styleUrls: ['header.component.scss'],
|
|
templateUrl: 'header.component.html'
|
|
})
|
|
export class HeaderComponent implements OnInit {
|
|
public isNavBarCollapsed: Observable<boolean>;
|
|
|
|
constructor(
|
|
private store: Store<AppState>
|
|
) {
|
|
}
|
|
|
|
ngOnInit(): void {
|
|
this.isNavBarCollapsed = this.store.select(navCollapsedSelector);
|
|
}
|
|
|
|
public toggle(): void {
|
|
this.store.dispatch(new HeaderToggleAction());
|
|
}
|
|
|
|
}
|