|
|
@ -11,6 +11,7 @@ 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'; |
|
|
@ -28,6 +29,7 @@ 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[] = []; |
|
|
@ -92,6 +94,7 @@ export class ImportActivitiesDialog implements OnDestroy { |
|
|
|
this.snackBar.open('⏳ ' + $localize`Importing data...`); |
|
|
|
|
|
|
|
await this.importActivitiesService.importSelectedActivities({ |
|
|
|
accounts: this.accounts, |
|
|
|
activities: this.selectedActivities |
|
|
|
}); |
|
|
|
|
|
|
@ -163,6 +166,8 @@ export class ImportActivitiesDialog implements OnDestroy { |
|
|
|
if (file.name.endsWith('.json')) { |
|
|
|
const content = JSON.parse(fileContent); |
|
|
|
|
|
|
|
this.accounts = content.accounts; |
|
|
|
|
|
|
|
if (!isArray(content.activities)) { |
|
|
|
if (isArray(content.orders)) { |
|
|
|
this.handleImportError({ |
|
|
|