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 9f24a3f53..5645e7365 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 @@ -180,9 +180,7 @@ export class AdminPlatformComponent implements OnInit, OnDestroy { dialogRef .afterClosed() .pipe(takeUntil(this.unsubscribeSubject)) - .subscribe((data) => { - const platform: UpdatePlatformDto = data?.platform; - + .subscribe((platform: UpdatePlatformDto) => { if (platform) { this.adminService .putPlatform(platform) diff --git a/apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-platform-dialog.component.ts b/apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-platform-dialog.component.ts index 828b4e0dd..18354c942 100644 --- a/apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-platform-dialog.component.ts +++ b/apps/client/src/app/components/admin-platform/create-or-update-platform-dialog/create-or-update-platform-dialog.component.ts @@ -1,4 +1,5 @@ import { CreatePlatformDto } from '@ghostfolio/api/app/platform/create-platform.dto'; +import { UpdatePlatformDto } from '@ghostfolio/api/app/platform/update-platform.dto'; import { validateObjectForForm } from '@ghostfolio/client/util/form.util'; import { @@ -37,16 +38,26 @@ export class CreateOrUpdatePlatformDialog implements OnDestroy { public async onSubmit() { try { - const platform: CreatePlatformDto = { + const platform: CreatePlatformDto | UpdatePlatformDto = { name: this.platformForm.get('name')?.value, url: this.platformForm.get('url')?.value }; - await validateObjectForForm({ - classDto: CreatePlatformDto, - form: this.platformForm, - object: platform - }); + if (this.data.platform.id) { + (platform as UpdatePlatformDto).id = this.data.platform.id; + await validateObjectForForm({ + classDto: UpdatePlatformDto, + form: this.platformForm, + object: platform + }); + } else { + await validateObjectForForm({ + classDto: CreatePlatformDto, + form: this.platformForm, + object: platform + }); + } + this.dialogRef.close(platform); } catch (error) { console.error(error); diff --git a/apps/client/src/app/components/admin-tag/admin-tag.component.ts b/apps/client/src/app/components/admin-tag/admin-tag.component.ts index 787d2274d..edfccfcb0 100644 --- a/apps/client/src/app/components/admin-tag/admin-tag.component.ts +++ b/apps/client/src/app/components/admin-tag/admin-tag.component.ts @@ -178,9 +178,7 @@ export class AdminTagComponent implements OnInit, OnDestroy { dialogRef .afterClosed() .pipe(takeUntil(this.unsubscribeSubject)) - .subscribe((data) => { - const tag: UpdateTagDto = data?.tag; - + .subscribe((tag: UpdateTagDto) => { if (tag) { this.adminService .putTag(tag) diff --git a/apps/client/src/app/components/admin-tag/create-or-update-tag-dialog/create-or-update-tag-dialog.component.ts b/apps/client/src/app/components/admin-tag/create-or-update-tag-dialog/create-or-update-tag-dialog.component.ts index 014934cd5..a78e6e84e 100644 --- a/apps/client/src/app/components/admin-tag/create-or-update-tag-dialog/create-or-update-tag-dialog.component.ts +++ b/apps/client/src/app/components/admin-tag/create-or-update-tag-dialog/create-or-update-tag-dialog.component.ts @@ -1,4 +1,5 @@ import { CreateTagDto } from '@ghostfolio/api/app/tag/create-tag.dto'; +import { UpdateTagDto } from '@ghostfolio/api/app/tag/update-tag.dto'; import { validateObjectForForm } from '@ghostfolio/client/util/form.util'; import { @@ -36,15 +37,25 @@ export class CreateOrUpdateTagDialog implements OnDestroy { public async onSubmit() { try { - const tag: CreateTagDto = { + const tag: CreateTagDto | UpdateTagDto = { name: this.tagForm.get('name')?.value }; - await validateObjectForForm({ - classDto: CreateTagDto, - form: this.tagForm, - object: tag - }); + if (this.data.tag.id) { + (tag as UpdateTagDto).id = this.data.tag.id; + await validateObjectForForm({ + classDto: UpdateTagDto, + form: this.tagForm, + object: tag + }); + } else { + await validateObjectForForm({ + classDto: CreateTagDto, + form: this.tagForm, + object: tag + }); + } + this.dialogRef.close(tag); } catch (error) { console.error(error);