From 242f3bab0edda7f27c3dcf8bac7524330f7c522d Mon Sep 17 00:00:00 2001
From: Thomas <4159106+dtslvr@users.noreply.github.com>
Date: Wed, 10 May 2023 17:10:59 +0200
Subject: [PATCH] Refactoring
---
.../admin-platform.component.html | 23 ++++++------
.../admin-platform.component.ts | 36 +++++--------------
...te-or-update-account-platform.component.ts | 2 +-
.../admin-settings.component.html | 2 ++
.../admin-settings.component.ts | 8 ++++-
5 files changed, 29 insertions(+), 42 deletions(-)
diff --git a/apps/client/src/app/components/admin-platform/admin-platform.component.html b/apps/client/src/app/components/admin-platform/admin-platform.component.html
index c8a07805b..305fda673 100644
--- a/apps/client/src/app/components/admin-platform/admin-platform.component.html
+++ b/apps/client/src/app/components/admin-platform/admin-platform.component.html
@@ -1,6 +1,17 @@
+
-
-
diff --git a/apps/client/src/app/components/admin-platform/admin-platform.component.ts b/apps/client/src/app/components/admin-platform/admin-platform.component.ts
index ea99dc2dd..f3fbb348d 100644
--- a/apps/client/src/app/components/admin-platform/admin-platform.component.ts
+++ b/apps/client/src/app/components/admin-platform/admin-platform.component.ts
@@ -1,4 +1,5 @@
import {
+ ChangeDetectionStrategy,
ChangeDetectorRef,
Component,
OnDestroy,
@@ -13,8 +14,7 @@ import { CreatePlatformDto } from '@ghostfolio/api/app/platform/create-platform.
import { UpdatePlatformDto } from '@ghostfolio/api/app/platform/update-platform.dto';
import { AdminService } from '@ghostfolio/client/services/admin.service';
import { UserService } from '@ghostfolio/client/services/user/user.service';
-import { hasPermission, permissions } from '@ghostfolio/common/permissions';
-import { Platform, Platform as PlatformModel } from '@prisma/client';
+import { Platform } from '@prisma/client';
import { get } from 'lodash';
import { DeviceDetectorService } from 'ngx-device-detector';
import { Subject, takeUntil } from 'rxjs';
@@ -22,6 +22,7 @@ import { Subject, takeUntil } from 'rxjs';
import { CreateOrUpdatePlatformDialog } from './create-or-update-platform-dialog/create-or-update-account-platform.component';
@Component({
+ changeDetection: ChangeDetectionStrategy.OnPush,
selector: 'gf-admin-platform',
styleUrls: ['./admin-platform.component.scss'],
templateUrl: './admin-platform.component.html'
@@ -32,9 +33,7 @@ export class AdminPlatformComponent implements OnInit, OnDestroy {
public dataSource: MatTableDataSource = new MatTableDataSource();
public deviceType: string;
public displayedColumns = ['name', 'url', 'accounts', 'actions'];
- public hasPermissionToCreatePlatform: boolean;
- public hasPermissionToDeletePlatform: boolean;
- public platforms: PlatformModel[];
+ public platforms: Platform[];
private unsubscribeSubject = new Subject();
@@ -50,9 +49,9 @@ export class AdminPlatformComponent implements OnInit, OnDestroy {
this.route.queryParams
.pipe(takeUntil(this.unsubscribeSubject))
.subscribe((params) => {
- if (params['createDialog'] && this.hasPermissionToCreatePlatform) {
+ if (params['createPlatformDialog']) {
this.openCreatePlatformDialog();
- } else if (params['editDialog']) {
+ } else if (params['editPlatformDialog']) {
if (this.platforms) {
const platform = this.platforms.find(({ id }) => {
return id === params['platformId'];
@@ -69,25 +68,6 @@ export class AdminPlatformComponent implements OnInit, OnDestroy {
public ngOnInit() {
this.deviceType = this.deviceService.getDeviceInfo().deviceType;
- this.userService.stateChanged
- .pipe(takeUntil(this.unsubscribeSubject))
- .subscribe((state) => {
- if (state?.user) {
- const user = state.user;
-
- this.hasPermissionToCreatePlatform = hasPermission(
- user.permissions,
- permissions.createPlatform
- );
- this.hasPermissionToDeletePlatform = hasPermission(
- user.permissions,
- permissions.deletePlatform
- );
-
- this.changeDetectorRef.markForCheck();
- }
- });
-
this.fetchPlatforms();
}
@@ -101,9 +81,9 @@ export class AdminPlatformComponent implements OnInit, OnDestroy {
}
}
- public onUpdatePlatform(aPlatform: PlatformModel) {
+ public onUpdatePlatform({ id }: Platform) {
this.router.navigate([], {
- queryParams: { platformId: aPlatform.id, editDialog: true }
+ queryParams: { editPlatformDialog: true, platformId: id }
});
}
diff --git a/apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-account-platform.component.ts b/apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-account-platform.component.ts
index 65dd6f755..55d466a9a 100644
--- a/apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-account-platform.component.ts
+++ b/apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-account-platform.component.ts
@@ -5,9 +5,9 @@ import { Subject } from 'rxjs';
import { CreateOrUpdatePlatformDialogParams } from './interfaces/interfaces';
@Component({
+ changeDetection: ChangeDetectionStrategy.OnPush,
host: { class: 'h-100' },
selector: 'gf-create-or-update-platform-dialog',
- changeDetection: ChangeDetectionStrategy.OnPush,
styleUrls: ['./create-or-update-platform-dialog.scss'],
templateUrl: 'create-or-update-platform-dialog.html'
})
diff --git a/apps/client/src/app/components/admin-settings/admin-settings.component.html b/apps/client/src/app/components/admin-settings/admin-settings.component.html
index 2649ffdab..aa4395b27 100644
--- a/apps/client/src/app/components/admin-settings/admin-settings.component.html
+++ b/apps/client/src/app/components/admin-settings/admin-settings.component.html
@@ -5,9 +5,11 @@
+
diff --git a/apps/client/src/app/components/admin-settings/admin-settings.component.ts b/apps/client/src/app/components/admin-settings/admin-settings.component.ts
index ccf1fb0ba..97066d533 100644
--- a/apps/client/src/app/components/admin-settings/admin-settings.component.ts
+++ b/apps/client/src/app/components/admin-settings/admin-settings.component.ts
@@ -1,7 +1,13 @@
-import { Component, OnDestroy, OnInit } from '@angular/core';
+import {
+ ChangeDetectionStrategy,
+ Component,
+ OnDestroy,
+ OnInit
+} from '@angular/core';
import { Subject } from 'rxjs';
@Component({
+ changeDetection: ChangeDetectionStrategy.OnPush,
host: { class: 'page' },
selector: 'gf-admin-settings',
styleUrls: ['./admin-settings.component.scss'],