Browse Source

feat(client): modernize patterns

pull/7077/head
KenTandrian 4 weeks ago
parent
commit
c22905edc6
  1. 37
      apps/client/src/app/services/import-activities.service.ts

37
apps/client/src/app/services/import-activities.service.ts

@ -12,8 +12,7 @@ import { inject, Injectable } from '@angular/core';
import { Account, DataSource, Type as ActivityType } from '@prisma/client'; import { Account, DataSource, Type as ActivityType } from '@prisma/client';
import { isFinite, isNumber, isString } from 'lodash'; import { isFinite, isNumber, isString } from 'lodash';
import { parse as csvToJson } from 'papaparse'; import { parse as csvToJson } from 'papaparse';
import { EMPTY } from 'rxjs'; import { firstValueFrom } from 'rxjs';
import { catchError } from 'rxjs/operators';
@Injectable({ @Injectable({
providedIn: 'root' providedIn: 'root'
@ -126,7 +125,7 @@ export class ImportActivitiesService {
}): Promise<{ }): Promise<{
activities: Activity[]; activities: Activity[];
}> { }> {
return new Promise((resolve, reject) => { return firstValueFrom(
this.postImport( this.postImport(
{ {
accounts, accounts,
@ -136,18 +135,7 @@ export class ImportActivitiesService {
}, },
isDryRun isDryRun
) )
.pipe( );
catchError((error) => {
reject(error);
return EMPTY;
})
)
.subscribe({
next: (data) => {
resolve(data);
}
});
});
} }
public importSelectedActivities({ public importSelectedActivities({
@ -163,11 +151,9 @@ export class ImportActivitiesService {
}): Promise<{ }): Promise<{
activities: Activity[]; activities: Activity[];
}> { }> {
const importData: CreateOrderDto[] = []; const importData = activities.map((activity) =>
this.convertToCreateOrderDto(activity)
for (const activity of activities) { );
importData.push(this.convertToCreateOrderDto(activity));
}
return this.importJson({ return this.importJson({
accounts, accounts,
@ -208,11 +194,12 @@ export class ImportActivitiesService {
}; };
} }
private lowercaseKeys(aObject: Record<string, unknown>) { private lowercaseKeys(
return Object.keys(aObject).reduce<Record<string, unknown>>((acc, key) => { aObject: Record<string, unknown>
acc[key.toLowerCase()] = aObject[key]; ): Record<string, unknown> {
return acc; return Object.fromEntries(
}, {}); Object.entries(aObject).map(([key, val]) => [key.toLowerCase(), val])
);
} }
private parseAccount({ private parseAccount({

Loading…
Cancel
Save