RED-8882 - moved help mode dialog preference into iqser-user-preferences.service
This commit is contained in:
parent
848e46cf6a
commit
174d77d2ea
@ -1,4 +1,6 @@
|
||||
import { ChangeDetectionStrategy, Component, OnDestroy, OnInit } from '@angular/core';
|
||||
import { MatDialogRef } from '@angular/material/dialog';
|
||||
import { BaseDialogComponent } from '../../dialog';
|
||||
|
||||
const HIGHER_CDK_OVERLAY_CONTAINER_ZINDEX = '1200';
|
||||
const DEFAULT_CDK_OVERLAY_CONTAINER_ZINDEX = '800';
|
||||
@ -8,12 +10,12 @@ const DEFAULT_CDK_OVERLAY_CONTAINER_ZINDEX = '800';
|
||||
styleUrls: ['./help-mode-dialog.component.scss'],
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
})
|
||||
export class HelpModeDialogComponent implements OnInit, OnDestroy {
|
||||
export class HelpModeDialogComponent extends BaseDialogComponent implements OnInit, OnDestroy {
|
||||
protected doNotShowAgainOption = false;
|
||||
|
||||
// constructor(protected readonly _dialogRef: MatDialogRef<HelpModeDialogComponent>) {
|
||||
// super(_dialogRef);
|
||||
// }
|
||||
constructor(protected readonly _dialogRef: MatDialogRef<HelpModeDialogComponent>) {
|
||||
super(_dialogRef);
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
this._setCdkOverlayContainerZIndex(HIGHER_CDK_OVERLAY_CONTAINER_ZINDEX);
|
||||
@ -32,7 +34,7 @@ export class HelpModeDialogComponent implements OnInit, OnDestroy {
|
||||
}
|
||||
|
||||
close() {
|
||||
// return this._dialogRef.close(this.doNotShowAgainOption);
|
||||
return this._dialogRef.close(this.doNotShowAgainOption);
|
||||
}
|
||||
|
||||
private _setCdkOverlayContainerZIndex(zIndex: string): void {
|
||||
|
||||
@ -16,7 +16,7 @@ import {
|
||||
ScrollableParentViews,
|
||||
WEB_VIEWER_ELEMENTS,
|
||||
} from './utils/constants';
|
||||
import { getConfig } from '../services';
|
||||
import { getConfig, IqserUserPreferenceService } from '../services';
|
||||
import { MatDialog } from '@angular/material/dialog';
|
||||
|
||||
export interface Helper {
|
||||
@ -53,6 +53,7 @@ export class HelpModeService {
|
||||
private readonly _dialog: MatDialog,
|
||||
private readonly _rendererFactory: RendererFactory2,
|
||||
private readonly _translateService: TranslateService,
|
||||
private readonly _iqserUserPreferenceService: IqserUserPreferenceService,
|
||||
) {
|
||||
this.#renderer = this._rendererFactory.createRenderer(null, null);
|
||||
}
|
||||
@ -66,20 +67,20 @@ export class HelpModeService {
|
||||
}
|
||||
|
||||
async openHelpModeDialog() {
|
||||
// if (!this._userPreferencesService.getHelpModeDialog()) {
|
||||
// this.#helpModeDialogIsOpened$.next(true);
|
||||
//
|
||||
// const ref = this._dialog.open(HelpModeDialogComponent, {
|
||||
// width: '600px',
|
||||
// });
|
||||
//
|
||||
// firstValueFrom(ref.afterClosed()).then(result => {
|
||||
// this.#helpModeDialogIsOpened$.next(false);
|
||||
// if (result) {
|
||||
// this._userPreferencesService.toggleHelpModeDialog();
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
if (!this._iqserUserPreferenceService.getHelpModeDialog()) {
|
||||
this.#helpModeDialogIsOpened$.next(true);
|
||||
|
||||
const ref = this._dialog.open(HelpModeDialogComponent, {
|
||||
width: '600px',
|
||||
});
|
||||
|
||||
firstValueFrom(ref.afterClosed()).then(result => {
|
||||
this.#helpModeDialogIsOpened$.next(false);
|
||||
if (result) {
|
||||
this._iqserUserPreferenceService.toggleHelpModeDialog();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
activateHelpMode(dialogMode: boolean = false): void {
|
||||
|
||||
@ -6,9 +6,10 @@ import { APP_BASE_HREF } from '@angular/common';
|
||||
|
||||
export type UserAttributes = Record<string, List>;
|
||||
|
||||
const KEYS = {
|
||||
export const KEYS = {
|
||||
language: 'Language',
|
||||
theme: 'Theme',
|
||||
helpModeDialog: 'HelpModeDialog',
|
||||
} as const;
|
||||
|
||||
@Injectable()
|
||||
@ -43,6 +44,15 @@ export abstract class IqserUserPreferenceService extends GenericService<UserAttr
|
||||
await this.save(KEYS.language, language);
|
||||
}
|
||||
|
||||
getHelpModeDialog(): boolean {
|
||||
return this._getAttribute(KEYS.helpModeDialog, 'false') === 'true';
|
||||
}
|
||||
|
||||
async toggleHelpModeDialog(): Promise<void> {
|
||||
const nextValue = (!this.getHelpModeDialog()).toString();
|
||||
await this.save(KEYS.helpModeDialog, nextValue);
|
||||
}
|
||||
|
||||
toggleDevFeatures(): void {
|
||||
sessionStorage.setItem(this._devFeaturesEnabledKey, String(!this.isIqserDevMode));
|
||||
window.location.reload();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user