solved comments
This commit is contained in:
parent
94847c7fbd
commit
b1ee9495ad
@ -2,6 +2,15 @@ import { Injectable, Renderer2, RendererFactory2 } from '@angular/core';
|
||||
import { HelpModeDialogComponent } from '@components/help-mode-dialog/help-mode-dialog.component';
|
||||
import { MatDialog } from '@angular/material/dialog';
|
||||
|
||||
interface Helper {
|
||||
readonly element: HTMLElement;
|
||||
readonly helperElement: HTMLElement;
|
||||
}
|
||||
|
||||
interface HelpElement {
|
||||
[key: string]: Helper;
|
||||
}
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
@ -9,7 +18,7 @@ export class HelpModeService {
|
||||
isHelpModeActive = false;
|
||||
helpModeDialogIsOpened = false;
|
||||
|
||||
private _elements = {};
|
||||
private _elements: HelpElement = {};
|
||||
|
||||
private readonly _renderer: Renderer2;
|
||||
|
||||
@ -41,8 +50,7 @@ export class HelpModeService {
|
||||
}
|
||||
|
||||
highlightHelperElements() {
|
||||
for (const key of Object.keys(this._elements)) {
|
||||
const helperElement = this._elements[key].helperElement;
|
||||
for (const { helperElement } of Object.values(this._elements)) {
|
||||
this._renderer.addClass(helperElement, 'highlight');
|
||||
setTimeout(() => {
|
||||
this._renderer.removeClass(helperElement, 'highlight');
|
||||
@ -50,25 +58,19 @@ export class HelpModeService {
|
||||
}
|
||||
}
|
||||
|
||||
addElement(elementName, element, helperElement) {
|
||||
addElement(elementName: string, element: HTMLElement, helperElement: HTMLElement) {
|
||||
this._elements[elementName] = { element, helperElement };
|
||||
}
|
||||
|
||||
private _enableHelperElements() {
|
||||
for (const key of Object.keys(this._elements)) {
|
||||
const element = this._elements[key].element;
|
||||
const helperElement = this._elements[key].helperElement;
|
||||
|
||||
for (const { element, helperElement } of Object.values(this._elements)) {
|
||||
this._renderer.setStyle(element, 'position', 'relative');
|
||||
this._renderer.appendChild(element, helperElement);
|
||||
}
|
||||
}
|
||||
|
||||
private _disableHelperElements() {
|
||||
for (const key of Object.keys(this._elements)) {
|
||||
const element = this._elements[key].element;
|
||||
const helperElement = this._elements[key].helperElement;
|
||||
|
||||
for (const { element, helperElement } of Object.values(this._elements)) {
|
||||
this._renderer.removeStyle(element, 'position');
|
||||
this._renderer.removeChild(element, helperElement);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user