Skip to content

Commit a6e7ed7

Browse files
committed
fix: added Xavier's loader and extra credit attempt
1 parent ef71f54 commit a6e7ed7

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed

lesson_10/libraries/src/loaders/chelsea_ogbonnia_loader.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,23 @@ export class ChelseaOgbonniaLoader implements Loader {
1212
const credits = await this.loadCredits();
1313
const mediaItems = await this.loadMediaItems();
1414

15+
const creditsMap: Record<string, Credit[]> = {};
16+
17+
credits.forEach((credit) => {
18+
const mediaItemId = credit.getMediaItemId();
19+
if (!creditsMap[mediaItemId]) {
20+
creditsMap[mediaItemId] = [];
21+
}
22+
creditsMap[mediaItemId].push(credit);
23+
});
24+
25+
mediaItems.forEach((mediaItem) => {
26+
const mediaItemId = mediaItem.getId();
27+
const associatedCredits = creditsMap[mediaItemId] || [];
28+
29+
associatedCredits.forEach((credit) => mediaItem.addCredit(credit));
30+
});
31+
1532
console.log(
1633
`Loaded ${credits.length} credits and ${mediaItems.length} media items`,
1734
);

lesson_10/libraries/src/loaders/loaders.module.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
11
import { Module } from '@nestjs/common';
22
import { AnthonyMaysLoader } from './anthony_mays_loader.js';
33
import { ChelseaOgbonniaLoader } from './chelsea_ogbonnia_loader.js';
4+
import { XavierCruzLoader } from './xavier_cruz_loader.js';
45

56
export const Loaders = Symbol.for('Loaders');
67

78
// Add your quiz provider here.
8-
const LOADER_PROVIDERS = [AnthonyMaysLoader, ChelseaOgbonniaLoader];
9+
const LOADER_PROVIDERS = [
10+
AnthonyMaysLoader,
11+
ChelseaOgbonniaLoader,
12+
XavierCruzLoader,
13+
];
914

1015
@Module({
1116
providers: [
@@ -18,4 +23,4 @@ const LOADER_PROVIDERS = [AnthonyMaysLoader, ChelseaOgbonniaLoader];
1823
],
1924
exports: [Loaders],
2025
})
21-
export class LoadersModule {}
26+
export class LoadersModule {}

0 commit comments

Comments
 (0)