Bartosz Sekuła b3140b626c
[AAE-6057] Customize text color in the header (#7325)
* [AAE-6057] Customize text color in the header

* [AAE-6057] Updates documents

* [AAE-6057] Use css variables to update header colors

* Revert "[AAE-6057] Updates documents"

This reverts commit 1915535c01b77c58d9a6d87bb242e04715bcbc6f.

* [AAE-6057] Fix for css name change

* [AAE-6057] Removing has-mat-color

* [AAE-6057] Removing redundant tests
2021-10-29 08:49:05 +02:00

89 lines
2.4 KiB
TypeScript

/*!
* @license
* Copyright 2019 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { Component } from '@angular/core';
import { ThemePalette } from '@angular/material/core';
import { HeaderDataService } from './header-data.service';
@Component({
templateUrl: './header-data.component.html',
styleUrls: ['./header-data.component.scss']
})
export class HeaderDataComponent {
checkbox = true;
position: 'start' | 'end' = 'start';
hideSidenavToggle = false;
colorsHashesTests = [
/#[a-z0-9]{3}/i,
/#[a-z0-9]{4}/i,
/#[a-z0-9]{6}/i
];
constructor(private headerService: HeaderDataService) {
}
hideButton() {
this.headerService.hideMenuButton();
}
changeColor(color: ThemePalette) {
this.headerService.changeColor(color);
}
submitTitle(title: string) {
if (title) {
this.headerService.changeTitle(title);
}
}
submitHeaderTextColor(color: string): void {
const isColorHashValid = this.colorsHashesTests.some(colorTest => colorTest.test(color));
if (isColorHashValid || !color) {
this.headerService.changeHeaderTextColor(color);
}
}
submitLogo(logoPath: string) {
if (logoPath) {
this.headerService.changeLogo(logoPath);
}
}
submitRedirectUrl(value: string) {
const redirectUrl = JSON.parse(value);
if (redirectUrl) {
this.headerService.changeRedirectUrl(redirectUrl);
}
}
submitTooltip(tooltip: string) {
if (tooltip) {
this.headerService.changeTooltip(tooltip);
}
}
changePosition() {
this.headerService.changePosition(this.position);
}
changeSidenavVisibility() {
this.hideSidenavToggle = !this.hideSidenavToggle;
this.headerService.changeSidenavVisibility(this.hideSidenavToggle);
}
}