mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-03-12 01:32:12 +00:00
refactor: replace TSLint with ESLint
This commit is contained in:
committed by
Jovan Krunić
parent
67fb4a43c9
commit
d696215d08
@@ -12,31 +12,35 @@
|
||||
* You should have received a copy of the GNU General Public License along with
|
||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
import {ChangeDetectorRef, Component} from '@angular/core';
|
||||
import {ChangeDetectorRef, Component, OnInit} from '@angular/core';
|
||||
import {AlertController, ToastController} from '@ionic/angular';
|
||||
import {TranslateService} from '@ngx-translate/core';
|
||||
import {SCSettingMeta} from '@openstapps/core';
|
||||
import {SettingsCache, SettingsProvider} from '../settings.provider';
|
||||
/**
|
||||
* Settings page component
|
||||
*/
|
||||
|
||||
/**
|
||||
* Settings page component
|
||||
*/
|
||||
@Component({
|
||||
selector: 'stapps-settings-page',
|
||||
templateUrl: 'settings-page.html',
|
||||
})
|
||||
export class SettingsPageComponent {
|
||||
export class SettingsPageComponent implements OnInit {
|
||||
/**
|
||||
* Order of the categories
|
||||
*/
|
||||
categoriesOrder: string[];
|
||||
|
||||
/**
|
||||
* Meta information about settings
|
||||
*/
|
||||
meta = SCSettingMeta;
|
||||
|
||||
/**
|
||||
* Mapping of Object.keys for Html usage
|
||||
*/
|
||||
objectKeys = Object.keys;
|
||||
|
||||
/**
|
||||
* Container to cache settings from provider
|
||||
*/
|
||||
@@ -50,11 +54,13 @@ export class SettingsPageComponent {
|
||||
* @param translateService TranslateService
|
||||
* @param changeDetectorRef ChangeDetectorRef
|
||||
*/
|
||||
constructor(private readonly alertController: AlertController,
|
||||
private readonly settingsProvider: SettingsProvider,
|
||||
private readonly toastController: ToastController,
|
||||
private readonly translateService: TranslateService,
|
||||
private readonly changeDetectorRef: ChangeDetectorRef) {
|
||||
constructor(
|
||||
private readonly alertController: AlertController,
|
||||
private readonly settingsProvider: SettingsProvider,
|
||||
private readonly toastController: ToastController,
|
||||
private readonly translateService: TranslateService,
|
||||
private readonly changeDetectorRef: ChangeDetectorRef,
|
||||
) {
|
||||
this.settingsCache = {};
|
||||
}
|
||||
|
||||
@@ -92,13 +98,17 @@ export class SettingsPageComponent {
|
||||
* Presents an alert to the user to reset settings to default values
|
||||
*/
|
||||
async presentResetAlert() {
|
||||
const cancelText = await this.translateService.get('settings.resetAlert.buttonCancel')
|
||||
const cancelText = await this.translateService
|
||||
.get('settings.resetAlert.buttonCancel')
|
||||
.toPromise();
|
||||
const yesText = await this.translateService.get('settings.resetAlert.buttonYes')
|
||||
const yesText = await this.translateService
|
||||
.get('settings.resetAlert.buttonYes')
|
||||
.toPromise();
|
||||
const title = await this.translateService.get('settings.resetAlert.title')
|
||||
const title = await this.translateService
|
||||
.get('settings.resetAlert.title')
|
||||
.toPromise();
|
||||
const message = await this.translateService.get('settings.resetAlert.message')
|
||||
const message = await this.translateService
|
||||
.get('settings.resetAlert.message')
|
||||
.toPromise();
|
||||
|
||||
const alert = await this.alertController.create({
|
||||
@@ -117,7 +127,7 @@ export class SettingsPageComponent {
|
||||
header: title,
|
||||
message: message,
|
||||
});
|
||||
alert.present();
|
||||
await alert.present();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -129,15 +139,17 @@ export class SettingsPageComponent {
|
||||
await this.presentSettingsResetToast();
|
||||
}
|
||||
|
||||
/**
|
||||
* Shows alert to reset settings
|
||||
*/
|
||||
/**
|
||||
* Shows alert to reset settings
|
||||
*/
|
||||
async showResetAlert() {
|
||||
const alert = await this.alertController.create({
|
||||
buttons: [
|
||||
{
|
||||
role: 'cancel',
|
||||
text: this.translateService.instant('settings.resetAlert.buttonCancel'),
|
||||
text: this.translateService.instant(
|
||||
'settings.resetAlert.buttonCancel',
|
||||
),
|
||||
},
|
||||
{
|
||||
handler: async () => {
|
||||
@@ -150,6 +162,6 @@ export class SettingsPageComponent {
|
||||
message: this.translateService.instant('settings.resetAlert.message'),
|
||||
});
|
||||
|
||||
alert.present();
|
||||
await alert.present();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,21 +4,40 @@
|
||||
<ion-back-button></ion-back-button>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
<ion-title>{{'settings.title' | translate | titlecase}}</ion-title>
|
||||
<ion-title>{{ 'settings.title' | translate | titlecase }}</ion-title>
|
||||
</ion-toolbar>
|
||||
</ion-header>
|
||||
|
||||
<ion-content>
|
||||
<ion-list *ngFor="let categoryKey of categoriesOrder ">
|
||||
<ion-list *ngFor="let categoryKey of categoriesOrder">
|
||||
<div *ngIf="objectKeys(settingsCache).includes(categoryKey)">
|
||||
<ion-item-divider>
|
||||
<h5>{{ 'categories[0]' | thingTranslate: settingsCache[categoryKey]?.settings[objectKeys(settingsCache[categoryKey]?.settings)[0]] | titlecase }} </h5>
|
||||
<h5>
|
||||
{{
|
||||
'categories[0]'
|
||||
| thingTranslate
|
||||
: settingsCache[categoryKey]?.settings[
|
||||
objectKeys(settingsCache[categoryKey]?.settings)[0]
|
||||
]
|
||||
| titlecase
|
||||
}}
|
||||
</h5>
|
||||
</ion-item-divider>
|
||||
<stapps-settings-item *ngFor="let settingKeys of objectKeys(settingsCache[categoryKey].settings)" [setting]="settingsCache[categoryKey].settings[settingKeys]"></stapps-settings-item>
|
||||
<stapps-settings-item
|
||||
*ngFor="
|
||||
let settingKeys of objectKeys(settingsCache[categoryKey].settings)
|
||||
"
|
||||
[setting]="settingsCache[categoryKey].settings[settingKeys]"
|
||||
></stapps-settings-item>
|
||||
</div>
|
||||
</ion-list>
|
||||
<ion-button color="medium" expand="block" fill="outline" (click)="presentResetAlert()">
|
||||
{{'settings.resetSettings' | translate}}
|
||||
<ion-button
|
||||
color="medium"
|
||||
expand="block"
|
||||
fill="outline"
|
||||
(click)="presentResetAlert()"
|
||||
>
|
||||
{{ 'settings.resetSettings' | translate }}
|
||||
<ion-icon slot="start" name="undo"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-content>
|
||||
|
||||
Reference in New Issue
Block a user