diff --git a/apps/api/src/app/account/create-account.dto.ts b/apps/api/src/app/account/create-account.dto.ts index 69377bdd2..43e2584b7 100644 --- a/apps/api/src/app/account/create-account.dto.ts +++ b/apps/api/src/app/account/create-account.dto.ts @@ -21,10 +21,6 @@ export class CreateAccountDto { @IsString() id: string; - @IsOptional() - @IsBoolean() - isDefault: boolean; - @IsBoolean() @IsOptional() isExcluded?: boolean; diff --git a/apps/api/src/app/export/export.service.ts b/apps/api/src/app/export/export.service.ts index ebf0845cc..219b022cb 100644 --- a/apps/api/src/app/export/export.service.ts +++ b/apps/api/src/app/export/export.service.ts @@ -20,7 +20,6 @@ export class ExportService { balance: true, currency: true, id: true, - isDefault: true, isExcluded: true, name: true, platformId: true diff --git a/apps/api/src/app/import/import-data.dto.ts b/apps/api/src/app/import/import-data.dto.ts index cfd866120..fa954a2c9 100644 --- a/apps/api/src/app/import/import-data.dto.ts +++ b/apps/api/src/app/import/import-data.dto.ts @@ -1,7 +1,7 @@ +import { CreateAccountDto } from '@ghostfolio/api/app/account/create-account.dto'; import { CreateOrderDto } from '@ghostfolio/api/app/order/create-order.dto'; import { Type } from 'class-transformer'; import { IsArray, IsOptional, ValidateNested } from 'class-validator'; -import { CreateAccountDto } from '../account/create-account.dto'; export class ImportDataDto { @IsOptional() diff --git a/apps/api/src/app/import/import.service.ts b/apps/api/src/app/import/import.service.ts index c72d00eca..9210d9da8 100644 --- a/apps/api/src/app/import/import.service.ts +++ b/apps/api/src/app/import/import.service.ts @@ -115,7 +115,7 @@ export class ImportService { userCurrency: string; userId: string; }): Promise { - const accountIdMapping = {}; + const accountIdMapping: { [oldAccountId: string]: string } = {}; //Create new accounts during dryRun so that new account IDs don't get invalidated if (isDryRun && accountsDto?.length) { @@ -131,7 +131,6 @@ export class ImportService { const platformId = account.platformId; delete account.platformId; - delete account.isDefault; if (accountWithSameId) { oldAccountId = account.id; diff --git a/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts b/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts index 045cee17f..b4e118a30 100644 --- a/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts +++ b/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts @@ -11,7 +11,6 @@ import { MatLegacyDialogRef as MatDialogRef } from '@angular/material/legacy-dialog'; import { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar'; -import { CreateAccountDto } from '@ghostfolio/api/app/account/create-account.dto'; import { Activity } from '@ghostfolio/api/app/order/interfaces/activities.interface'; import { DataService } from '@ghostfolio/client/services/data.service'; import { ImportActivitiesService } from '@ghostfolio/client/services/import-activities.service'; @@ -29,7 +28,6 @@ import { ImportActivitiesDialogParams } from './interfaces/interfaces'; templateUrl: 'import-activities-dialog.html' }) export class ImportActivitiesDialog implements OnDestroy { - public accounts: CreateAccountDto[] = []; public activities: Activity[] = []; public details: any[] = []; public errorMessages: string[] = []; @@ -94,7 +92,6 @@ export class ImportActivitiesDialog implements OnDestroy { this.snackBar.open('⏳ ' + $localize`Importing data...`); await this.importActivitiesService.importSelectedActivities({ - accounts: this.accounts, activities: this.selectedActivities }); @@ -183,13 +180,13 @@ export class ImportActivitiesDialog implements OnDestroy { } try { - const data = await this.importActivitiesService.importJson({ - activities: content.activities, - isDryRun: true, - accounts: content.accounts - }); - this.accounts = content.accounts; - this.activities = data.activities; + const { activities } = + await this.importActivitiesService.importJson({ + accounts: content.accounts, + activities: content.activities, + isDryRun: true + }); + this.activities = activities; } catch (error) { console.error(error); this.handleImportError({ error, activities: content.activities }); diff --git a/apps/client/src/app/services/import-activities.service.ts b/apps/client/src/app/services/import-activities.service.ts index 357ad196a..d3ac9b2fb 100644 --- a/apps/client/src/app/services/import-activities.service.ts +++ b/apps/client/src/app/services/import-activities.service.ts @@ -58,12 +58,12 @@ export class ImportActivitiesService { }); } - return await this.importJson({ isDryRun, activities }); + return await this.importJson({ activities, isDryRun }); } public importJson({ - activities, accounts, + activities, isDryRun = false }: { activities: CreateOrderDto[]; @@ -96,14 +96,11 @@ export class ImportActivitiesService { } public importSelectedActivities({ - accounts, activities }: { activities: Activity[]; - accounts?: CreateAccountDto[]; }): Promise<{ activities: Activity[]; - accounts?: CreateAccountDto[]; }> { const importData: CreateOrderDto[] = []; @@ -111,7 +108,7 @@ export class ImportActivitiesService { importData.push(this.convertToCreateOrderDto(activity)); } - return this.importJson({ activities: importData, accounts }); + return this.importJson({ activities: importData }); } private convertToCreateOrderDto({ @@ -363,7 +360,7 @@ export class ImportActivitiesService { } private postImport( - aImportData: { activities: CreateOrderDto[]; accounts: CreateAccountDto[] }, + aImportData: { accounts: CreateAccountDto[]; activities: CreateOrderDto[] }, aIsDryRun = false ) { return this.http.post<{ activities: Activity[] }>( diff --git a/libs/common/src/lib/interfaces/export.interface.ts b/libs/common/src/lib/interfaces/export.interface.ts index dcd7aa60d..b142cb2f8 100644 --- a/libs/common/src/lib/interfaces/export.interface.ts +++ b/libs/common/src/lib/interfaces/export.interface.ts @@ -5,7 +5,7 @@ export interface Export { date: string; version: string; }; - accounts: Omit[]; + accounts: Omit[]; activities: (Omit< Order, | 'accountUserId'