1 import { Component, Input, OnInit } from '@angular/core';
3 import { StateService } from '../../../@core/data/state.service';
6 selector: 'ngx-theme-settings',
7 styleUrls: ['./theme-settings.component.scss'],
10 <div class="settings-row">
11 <a *ngFor="let layout of layouts"
13 [class.selected]="layout.selected"
14 [attr.title]="layout.name"
15 (click)="layoutSelect(layout)">
16 <i [attr.class]="layout.icon"></i>
20 <div class="settings-row">
21 <a *ngFor="let sidebar of sidebars"
23 [class.selected]="sidebar.selected"
24 [attr.title]="sidebar.name"
25 (click)="sidebarSelect(sidebar)">
26 <i [attr.class]="sidebar.icon"></i>
31 export class ThemeSettingsComponent {
36 constructor(protected stateService: StateService) {
37 this.stateService.getLayoutStates()
38 .subscribe((layouts: any[]) => this.layouts = layouts);
40 this.stateService.getSidebarStates()
41 .subscribe((sidebars: any[]) => this.sidebars = sidebars);
44 layoutSelect(layout: any): boolean {
45 this.layouts = this.layouts.map((l: any) => {
50 layout.selected = true;
51 this.stateService.setLayoutState(layout);
55 sidebarSelect(sidebars: any): boolean {
56 this.sidebars = this.sidebars.map((s: any) => {
61 sidebars.selected = true;
62 this.stateService.setSidebarState(sidebars);