From 9edf64130f56162b6941704da9cf4fd706dd1c0e Mon Sep 17 00:00:00 2001 From: Marc Mintel Date: Fri, 16 Jan 2026 22:32:55 +0100 Subject: [PATCH] website refactor --- apps/api/src/domain/admin/AdminModule.ts | 6 +- .../presenters/DashboardStatsPresenter.ts | 2 +- .../admin/presenters/ListUsersPresenter.ts | 2 +- .../use-cases/GetDashboardStatsUseCase.ts | 28 +-- .../domain/analytics/AnalyticsProviders.ts | 12 +- apps/api/src/domain/auth/AuthProviders.ts | 38 ++-- apps/api/src/domain/auth/AuthService.ts | 2 +- .../auth/presenters/AuthSessionPresenter.ts | 2 +- .../auth/presenters/CommandResultPresenter.ts | 2 +- .../presenters/ForgotPasswordPresenter.ts | 2 +- .../auth/presenters/ResetPasswordPresenter.ts | 2 +- .../src/domain/bootstrap/BootstrapModule.ts | 2 +- .../domain/bootstrap/BootstrapProviders.ts | 12 +- .../src/domain/bootstrap/RacingSeed.test.ts | 2 +- .../domain/dashboard/DashboardProviders.ts | 38 ++-- .../src/domain/dashboard/DashboardService.ts | 2 +- apps/api/src/domain/driver/DriverProviders.ts | 62 +++--- apps/api/src/domain/driver/DriverService.ts | 2 +- .../driver/presenters/DriverPresenter.ts | 4 +- apps/api/src/domain/league/LeagueProviders.ts | 140 ++++++------- apps/api/src/domain/league/LeagueService.ts | 2 +- ...lLeaguesWithCapacityAndScoringPresenter.ts | 2 +- .../AllLeaguesWithCapacityPresenter.ts | 2 +- .../ApproveLeagueJoinRequestPresenter.ts | 2 +- .../GetLeagueAdminPermissionsPresenter.ts | 2 +- .../GetLeagueMembershipsPresenter.ts | 2 +- .../GetLeagueOwnerSummaryPresenter.ts | 2 +- .../presenters/GetLeagueWalletPresenter.ts | 2 +- .../GetSeasonSponsorshipsPresenter.ts | 2 +- .../league/presenters/JoinLeaguePresenter.ts | 2 +- .../presenters/LeagueConfigPresenter.ts | 2 +- .../presenters/LeagueJoinRequestsPresenter.ts | 2 +- .../presenters/LeagueOwnerSummaryPresenter.ts | 2 +- .../LeagueRosterAdminReadPresenters.ts | 2 +- .../presenters/LeagueSchedulePresenter.ts | 2 +- .../LeagueScoringConfigPresenter.ts | 2 +- .../LeagueScoringPresetsPresenter.ts | 2 +- .../LeagueSeasonScheduleMutationPresenters.ts | 2 +- .../RejectLeagueJoinRequestPresenter.ts | 2 +- .../presenters/RemoveLeagueMemberPresenter.ts | 2 +- .../TransferLeagueOwnershipPresenter.ts | 2 +- .../UpdateLeagueMemberRolePresenter.ts | 2 +- .../WithdrawFromLeagueWalletPresenter.ts | 2 +- apps/api/src/domain/media/MediaController.ts | 2 +- apps/api/src/domain/media/MediaProviders.ts | 2 +- apps/api/src/domain/media/MediaService.ts | 2 +- .../notifications/NotificationsProviders.ts | 2 +- .../src/domain/payments/PaymentsService.ts | 2 +- .../presenters/CreatePaymentPresenter.ts | 2 +- .../presenters/GetPaymentsPresenter.ts | 2 +- .../UpdatePaymentStatusPresenter.ts | 2 +- .../src/domain/protests/ProtestsProviders.ts | 2 +- .../domain/protests/ProtestsService.test.ts | 2 +- .../src/domain/protests/ProtestsService.ts | 2 +- .../presenters/ReviewProtestPresenter.ts | 2 +- apps/api/src/domain/race/RaceProviders.ts | 2 +- apps/api/src/domain/race/RaceService.ts | 2 +- .../src/domain/sponsor/SponsorProviders.ts | 2 +- .../src/domain/sponsor/SponsorService.test.ts | 2 +- apps/api/src/domain/sponsor/SponsorService.ts | 2 +- apps/api/src/domain/team/TeamProviders.ts | 2 +- apps/api/src/domain/team/TeamService.test.ts | 2 +- apps/api/src/domain/team/TeamService.ts | 2 +- .../team/presenters/AllTeamsPresenter.ts | 2 +- .../team/presenters/CreateTeamPresenter.ts | 2 +- .../team/presenters/DriverTeamPresenter.ts | 2 +- .../team/presenters/TeamDetailsPresenter.ts | 2 +- .../presenters/TeamJoinRequestsPresenter.ts | 2 +- .../team/presenters/TeamMembersPresenter.ts | 2 +- .../presenters/TeamMembershipPresenter.ts | 2 +- .../presenters/TeamsLeaderboardPresenter.ts | 2 +- .../team/presenters/UpdateTeamPresenter.ts | 2 +- .../InMemoryAchievementPersistenceModule.ts | 2 +- .../InMemoryAnalyticsPersistenceModule.ts | 14 +- .../InMemoryIdentityPersistenceModule.ts | 6 +- .../InMemoryMediaPersistenceModule.ts | 2 +- .../InMemoryNotificationsPersistenceModule.ts | 2 +- .../InMemoryPaymentsPersistenceModule.ts | 2 +- .../InMemoryRacingPersistenceModule.ts | 100 ++++----- .../InMemorySocialPersistenceModule.ts | 2 +- .../PostgresIdentityPersistenceModule.ts | 2 +- .../PostgresNotificationsPersistenceModule.ts | 2 +- .../PostgresRacingPersistenceModule.ts | 2 +- tsc_output.txt | 195 ++++++++++++++++++ 84 files changed, 497 insertions(+), 300 deletions(-) create mode 100644 tsc_output.txt diff --git a/apps/api/src/domain/admin/AdminModule.ts b/apps/api/src/domain/admin/AdminModule.ts index 10de29c11..87b7d1530 100644 --- a/apps/api/src/domain/admin/AdminModule.ts +++ b/apps/api/src/domain/admin/AdminModule.ts @@ -1,5 +1,5 @@ import { ListUsersUseCase } from '@core/admin/application/use-cases/ListUsersUseCase'; -import type { IAdminUserRepository } from '@core/admin/domain/repositories/AdminUserRepository'; +import type { AdminUserRepository } from '@core/admin/domain/repositories/AdminUserRepository'; import type { Provider } from '@nestjs/common'; import { Module } from '@nestjs/common'; import { InMemoryAdminPersistenceModule } from '../../persistence/inmemory/InMemoryAdminPersistenceModule'; @@ -18,14 +18,14 @@ const adminProviders: Provider[] = [ { provide: ListUsersUseCase, useFactory: ( - repository: IAdminUserRepository, + repository: AdminUserRepository, ) => new ListUsersUseCase(repository), inject: [ADMIN_USER_REPOSITORY_TOKEN], }, { provide: GetDashboardStatsUseCase, useFactory: ( - repository: IAdminUserRepository, + repository: AdminUserRepository, ) => new GetDashboardStatsUseCase(repository), inject: [ADMIN_USER_REPOSITORY_TOKEN], }, diff --git a/apps/api/src/domain/admin/presenters/DashboardStatsPresenter.ts b/apps/api/src/domain/admin/presenters/DashboardStatsPresenter.ts index b4c857bbc..44bbdf223 100644 --- a/apps/api/src/domain/admin/presenters/DashboardStatsPresenter.ts +++ b/apps/api/src/domain/admin/presenters/DashboardStatsPresenter.ts @@ -1,4 +1,4 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { DashboardStatsResult } from '../use-cases/GetDashboardStatsUseCase'; export interface DashboardStatsResponse { diff --git a/apps/api/src/domain/admin/presenters/ListUsersPresenter.ts b/apps/api/src/domain/admin/presenters/ListUsersPresenter.ts index 3e85c8072..c1effbd93 100644 --- a/apps/api/src/domain/admin/presenters/ListUsersPresenter.ts +++ b/apps/api/src/domain/admin/presenters/ListUsersPresenter.ts @@ -1,6 +1,6 @@ import { ListUsersResult } from '@core/admin/application/use-cases/ListUsersUseCase'; import type { AdminUser } from '@core/admin/domain/entities/AdminUser'; -import { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { UserListResponseDto, UserResponseDto } from '../dtos/UserResponseDto'; export type ListUsersViewModel = UserListResponseDto; diff --git a/apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts b/apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts index 3e52b23dc..90a794a13 100644 --- a/apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts +++ b/apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts @@ -1,8 +1,10 @@ -import type { IAdminUserRepository } from '@core/admin/domain/repositories/AdminUserRepository'; +import type { AdminUserRepository } from '@core/admin/domain/repositories/AdminUserRepository'; import { AuthorizationService } from '@core/admin/domain/services/AuthorizationService'; import { UserId } from '@core/admin/domain/value-objects/UserId'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { AdminUser } from '@core/admin/domain/entities/AdminUser'; +import type { UserRole } from '@core/admin/domain/value-objects/UserRole'; export interface DashboardStatsResult { totalUsers: number; @@ -44,7 +46,7 @@ export type GetDashboardStatsApplicationError = ApplicationErrorCode> { @@ -73,25 +75,25 @@ export class GetDashboardStatsUseCase { // Calculate basic stats const totalUsers = allUsers.length; - const activeUsers = allUsers.filter(u => u.status.value === 'active').length; - const suspendedUsers = allUsers.filter(u => u.status.value === 'suspended').length; - const deletedUsers = allUsers.filter(u => u.status.value === 'deleted').length; - const systemAdmins = allUsers.filter(u => u.isSystemAdmin()).length; + const activeUsers = allUsers.filter((u: AdminUser) => u.status.value === 'active').length; + const suspendedUsers = allUsers.filter((u: AdminUser) => u.status.value === 'suspended').length; + const deletedUsers = allUsers.filter((u: AdminUser) => u.status.value === 'deleted').length; + const systemAdmins = allUsers.filter((u: AdminUser) => u.isSystemAdmin()).length; // Recent logins (last 24 hours) const oneDayAgo = new Date(); oneDayAgo.setDate(oneDayAgo.getDate() - 1); - const recentLogins = allUsers.filter(u => u.lastLoginAt && u.lastLoginAt > oneDayAgo).length; + const recentLogins = allUsers.filter((u: AdminUser) => u.lastLoginAt && u.lastLoginAt > oneDayAgo).length; // New users today const today = new Date(); today.setHours(0, 0, 0, 0); - const newUsersToday = allUsers.filter(u => u.createdAt > today).length; + const newUsersToday = allUsers.filter((u: AdminUser) => u.createdAt > today).length; // Role distribution const roleCounts: Record = {}; - allUsers.forEach(user => { - user.roles.forEach(role => { + allUsers.forEach((user: AdminUser) => { + user.roles.forEach((role: UserRole) => { const roleValue = role.value; roleCounts[roleValue] = (roleCounts[roleValue] || 0) + 1; }); @@ -110,7 +112,7 @@ export class GetDashboardStatsUseCase { date.setDate(date.getDate() - i); const dateStr = date.toLocaleDateString('en-US', { month: 'short', day: 'numeric' }); - const count = allUsers.filter(u => { + const count = allUsers.filter((u: AdminUser) => { const userDate = new Date(u.createdAt); return userDate.toDateString() === date.toDateString(); }).length; @@ -129,12 +131,12 @@ export class GetDashboardStatsUseCase { date.setDate(date.getDate() - i); const dateStr = date.toLocaleDateString('en-US', { month: 'short', day: 'numeric' }); - const newUsers = allUsers.filter(u => { + const newUsers = allUsers.filter((u: AdminUser) => { const userDate = new Date(u.createdAt); return userDate.toDateString() === date.toDateString(); }).length; - const logins = allUsers.filter(u => { + const logins = allUsers.filter((u: AdminUser) => { const loginDate = u.lastLoginAt; return loginDate && loginDate.toDateString() === date.toDateString(); }).length; diff --git a/apps/api/src/domain/analytics/AnalyticsProviders.ts b/apps/api/src/domain/analytics/AnalyticsProviders.ts index f4a45d538..0097b7f1f 100644 --- a/apps/api/src/domain/analytics/AnalyticsProviders.ts +++ b/apps/api/src/domain/analytics/AnalyticsProviders.ts @@ -1,6 +1,6 @@ -import type { IPageViewRepository } from '@core/analytics/application/repositories/PageViewRepository'; -import type { IEngagementRepository } from '@core/analytics/domain/repositories/EngagementRepository'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { PageViewRepository } from '@core/analytics/application/repositories/PageViewRepository'; +import type { EngagementRepository } from '@core/analytics/domain/repositories/EngagementRepository'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { Provider } from '@nestjs/common'; import { @@ -28,13 +28,13 @@ export const AnalyticsProviders: Provider[] = [ GetAnalyticsMetricsPresenter, { provide: RecordPageViewUseCase, - useFactory: (repo: IPageViewRepository, logger: Logger) => + useFactory: (repo: PageViewRepository, logger: Logger) => new RecordPageViewUseCase(repo, logger), inject: [ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN, LOGGER_TOKEN], }, { provide: RecordEngagementUseCase, - useFactory: (repo: IEngagementRepository, logger: Logger) => + useFactory: (repo: EngagementRepository, logger: Logger) => new RecordEngagementUseCase(repo, logger), inject: [ANALYTICS_ENGAGEMENT_REPOSITORY_TOKEN, LOGGER_TOKEN], }, @@ -46,7 +46,7 @@ export const AnalyticsProviders: Provider[] = [ }, { provide: GetAnalyticsMetricsUseCase, - useFactory: (logger: Logger, repo: IPageViewRepository) => + useFactory: (logger: Logger, repo: PageViewRepository) => new GetAnalyticsMetricsUseCase(logger, repo), inject: [LOGGER_TOKEN, ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN], }, diff --git a/apps/api/src/domain/auth/AuthProviders.ts b/apps/api/src/domain/auth/AuthProviders.ts index e36fc73f9..c62e1ecbb 100644 --- a/apps/api/src/domain/auth/AuthProviders.ts +++ b/apps/api/src/domain/auth/AuthProviders.ts @@ -8,12 +8,12 @@ import { LogoutUseCase } from '@core/identity/application/use-cases/LogoutUseCas import { ResetPasswordUseCase } from '@core/identity/application/use-cases/ResetPasswordUseCase'; import { SignupSponsorUseCase } from '@core/identity/application/use-cases/SignupSponsorUseCase'; import { SignupUseCase } from '@core/identity/application/use-cases/SignupUseCase'; -import type { IMagicLinkNotificationPort } from '@core/identity/domain/ports/MagicLinkNotificationPort'; -import type { IAuthRepository } from '@core/identity/domain/repositories/AuthRepository'; -import type { ICompanyRepository } from '@core/identity/domain/repositories/CompanyRepository'; -import type { IMagicLinkRepository } from '@core/identity/domain/repositories/MagicLinkRepository'; -import type { IPasswordHashingService } from '@core/identity/domain/services/PasswordHashingService'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { MagicLinkNotificationPort } from '@core/identity/domain/ports/MagicLinkNotificationPort'; +import type { AuthRepository } from '@core/identity/domain/repositories/AuthRepository'; +import type { CompanyRepository } from '@core/identity/domain/repositories/CompanyRepository'; +import type { MagicLinkRepository } from '@core/identity/domain/repositories/MagicLinkRepository'; +import type { PasswordHashingService } from '@core/identity/domain/services/PasswordHashingService'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { AUTH_REPOSITORY_TOKEN, @@ -66,8 +66,8 @@ export const AuthProviders: Provider[] = [ { provide: LOGIN_USE_CASE_TOKEN, useFactory: ( - authRepo: IAuthRepository, - passwordHashing: IPasswordHashingService, + authRepo: AuthRepository, + passwordHashing: PasswordHashingService, logger: Logger, ) => new LoginUseCase(authRepo, passwordHashing, logger), inject: [AUTH_REPOSITORY_TOKEN, PASSWORD_HASHING_SERVICE_TOKEN, LOGGER_TOKEN], @@ -75,8 +75,8 @@ export const AuthProviders: Provider[] = [ { provide: SIGNUP_USE_CASE_TOKEN, useFactory: ( - authRepo: IAuthRepository, - passwordHashing: IPasswordHashingService, + authRepo: AuthRepository, + passwordHashing: PasswordHashingService, logger: Logger, ) => new SignupUseCase(authRepo, passwordHashing, logger), inject: [AUTH_REPOSITORY_TOKEN, PASSWORD_HASHING_SERVICE_TOKEN, LOGGER_TOKEN], @@ -84,9 +84,9 @@ export const AuthProviders: Provider[] = [ { provide: SIGNUP_SPONSOR_USE_CASE_TOKEN, useFactory: ( - authRepo: IAuthRepository, - companyRepo: ICompanyRepository, - passwordHashing: IPasswordHashingService, + authRepo: AuthRepository, + companyRepo: CompanyRepository, + passwordHashing: PasswordHashingService, logger: Logger, ) => new SignupSponsorUseCase(authRepo, companyRepo, passwordHashing, logger), inject: [AUTH_REPOSITORY_TOKEN, COMPANY_REPOSITORY_TOKEN, PASSWORD_HASHING_SERVICE_TOKEN, LOGGER_TOKEN], @@ -119,9 +119,9 @@ export const AuthProviders: Provider[] = [ { provide: FORGOT_PASSWORD_USE_CASE_TOKEN, useFactory: ( - authRepo: IAuthRepository, - magicLinkRepo: IMagicLinkRepository, - notificationPort: IMagicLinkNotificationPort, + authRepo: AuthRepository, + magicLinkRepo: MagicLinkRepository, + notificationPort: MagicLinkNotificationPort, logger: Logger, ) => new ForgotPasswordUseCase(authRepo, magicLinkRepo, notificationPort, logger), inject: [AUTH_REPOSITORY_TOKEN, MAGIC_LINK_REPOSITORY_TOKEN, MAGIC_LINK_NOTIFICATION_PORT_TOKEN, LOGGER_TOKEN], @@ -129,9 +129,9 @@ export const AuthProviders: Provider[] = [ { provide: RESET_PASSWORD_USE_CASE_TOKEN, useFactory: ( - authRepo: IAuthRepository, - magicLinkRepo: IMagicLinkRepository, - passwordHashing: IPasswordHashingService, + authRepo: AuthRepository, + magicLinkRepo: MagicLinkRepository, + passwordHashing: PasswordHashingService, logger: Logger, ) => new ResetPasswordUseCase(authRepo, magicLinkRepo, passwordHashing, logger), inject: [AUTH_REPOSITORY_TOKEN, MAGIC_LINK_REPOSITORY_TOKEN, PASSWORD_HASHING_SERVICE_TOKEN, LOGGER_TOKEN], diff --git a/apps/api/src/domain/auth/AuthService.ts b/apps/api/src/domain/auth/AuthService.ts index e46dfea4a..058a233d9 100644 --- a/apps/api/src/domain/auth/AuthService.ts +++ b/apps/api/src/domain/auth/AuthService.ts @@ -1,6 +1,6 @@ import { Inject } from '@nestjs/common'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { ForgotPasswordUseCase, diff --git a/apps/api/src/domain/auth/presenters/AuthSessionPresenter.ts b/apps/api/src/domain/auth/presenters/AuthSessionPresenter.ts index 9471100b0..949c0286c 100644 --- a/apps/api/src/domain/auth/presenters/AuthSessionPresenter.ts +++ b/apps/api/src/domain/auth/presenters/AuthSessionPresenter.ts @@ -1,7 +1,7 @@ import type { LoginResult } from '@core/identity/application/use-cases/LoginUseCase'; import type { SignupSponsorResult } from '@core/identity/application/use-cases/SignupSponsorUseCase'; import type { SignupResult } from '@core/identity/application/use-cases/SignupUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { AuthenticatedUserDTO } from '../dtos/AuthDto'; type AuthSessionResult = LoginResult | SignupResult | SignupSponsorResult; diff --git a/apps/api/src/domain/auth/presenters/CommandResultPresenter.ts b/apps/api/src/domain/auth/presenters/CommandResultPresenter.ts index b73dd16c8..b5fe2257f 100644 --- a/apps/api/src/domain/auth/presenters/CommandResultPresenter.ts +++ b/apps/api/src/domain/auth/presenters/CommandResultPresenter.ts @@ -1,5 +1,5 @@ import type { LogoutResult } from '@core/identity/application/use-cases/LogoutUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; export interface CommandResultDTO { success: boolean; diff --git a/apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts b/apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts index 4188d2ceb..a882d5c3b 100644 --- a/apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts +++ b/apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts @@ -1,5 +1,5 @@ import { ForgotPasswordResult } from '@core/identity/application/use-cases/ForgotPasswordUseCase'; -import { UseCaseOutputPort } from '@core/shared/application'; +import { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { Injectable } from '@nestjs/common'; @Injectable() diff --git a/apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts b/apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts index ab389cde5..e59035476 100644 --- a/apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts +++ b/apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts @@ -1,5 +1,5 @@ import { ResetPasswordResult } from '@core/identity/application/use-cases/ResetPasswordUseCase'; -import { UseCaseOutputPort } from '@core/shared/application'; +import { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { Injectable } from '@nestjs/common'; @Injectable() diff --git a/apps/api/src/domain/bootstrap/BootstrapModule.ts b/apps/api/src/domain/bootstrap/BootstrapModule.ts index 690787753..fbb393bae 100644 --- a/apps/api/src/domain/bootstrap/BootstrapModule.ts +++ b/apps/api/src/domain/bootstrap/BootstrapModule.ts @@ -1,4 +1,4 @@ -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { Inject, Module, OnModuleInit } from '@nestjs/common'; import type { EnsureInitialData } from '../../../../../adapters/bootstrap/EnsureInitialData'; import { SeedDemoUsers } from '../../../../../adapters/bootstrap/SeedDemoUsers'; diff --git a/apps/api/src/domain/bootstrap/BootstrapProviders.ts b/apps/api/src/domain/bootstrap/BootstrapProviders.ts index 0f886e627..98789315f 100644 --- a/apps/api/src/domain/bootstrap/BootstrapProviders.ts +++ b/apps/api/src/domain/bootstrap/BootstrapProviders.ts @@ -2,10 +2,10 @@ import type { IdentitySessionPort } from '@core/identity/application/ports/Ident import { SignupWithEmailUseCase } from '@core/identity/application/use-cases/SignupWithEmailUseCase'; import { CreateAchievementUseCase, - type IAchievementRepository, + type AchievementRepository, } from '@core/identity/application/use-cases/achievement/CreateAchievementUseCase'; -import type { IUserRepository } from '@core/identity/domain/repositories/UserRepository'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { UserRepository } from '@core/identity/domain/repositories/UserRepository'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { Provider } from '@nestjs/common'; import { EnsureInitialData } from '../../../../../adapters/bootstrap/EnsureInitialData'; import { SeedDemoUsers } from '../../../../../adapters/bootstrap/SeedDemoUsers'; @@ -116,7 +116,7 @@ export const BootstrapProviders: Provider[] = [ }, { provide: USER_REPOSITORY_TOKEN, - useFactory: (userRepository: IUserRepository) => userRepository, + useFactory: (userRepository: UserRepository) => userRepository, inject: [IDENTITY_USER_REPOSITORY_TOKEN], }, // Achievement repository is now provided by AchievementPersistenceModule @@ -128,7 +128,7 @@ export const BootstrapProviders: Provider[] = [ { provide: SIGNUP_USE_CASE_TOKEN, useFactory: ( - userRepository: IUserRepository, + userRepository: UserRepository, sessionPort: IdentitySessionPort, logger: Logger ) => { @@ -143,7 +143,7 @@ export const BootstrapProviders: Provider[] = [ { provide: CREATE_ACHIEVEMENT_USE_CASE_TOKEN, useFactory: ( - achievementRepository: IAchievementRepository, + achievementRepository: AchievementRepository, logger: Logger ) => { return new CreateAchievementUseCase( diff --git a/apps/api/src/domain/bootstrap/RacingSeed.test.ts b/apps/api/src/domain/bootstrap/RacingSeed.test.ts index 5e9b5b1c7..3df667ba6 100644 --- a/apps/api/src/domain/bootstrap/RacingSeed.test.ts +++ b/apps/api/src/domain/bootstrap/RacingSeed.test.ts @@ -224,7 +224,7 @@ describe('Racing seed (bootstrap)', () => { assertNoDuplicateIds(seed.seasonSponsorships.map((s) => s.id)); assertNoDuplicateIds(seed.sponsorshipRequests.map((r) => r.id)); assertNoDuplicateIds(seed.protests.map((p) => p.id)); - assertNoDuplicateIds(seed.penalties.map((p) => p.id)); + assertNoDuplicateIds(seed.penalties.map((p) => p.id.toString())); assertNoDuplicateIds(seed.leagueWallets.map((w) => w.id.toString())); assertNoDuplicateIds(seed.leagueWalletTransactions.map((t) => t.id.toString())); }); diff --git a/apps/api/src/domain/dashboard/DashboardProviders.ts b/apps/api/src/domain/dashboard/DashboardProviders.ts index 56e95bf52..50f73fde5 100644 --- a/apps/api/src/domain/dashboard/DashboardProviders.ts +++ b/apps/api/src/domain/dashboard/DashboardProviders.ts @@ -1,16 +1,16 @@ import { Provider } from '@nestjs/common'; // Import core interfaces -import { IDriverRepository } from '@core/racing/domain/repositories/DriverRepository'; -import { ILeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; -import { ILeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; -import { IRaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; -import { IRaceRepository } from '@core/racing/domain/repositories/RaceRepository'; -import { IResultRepository } from '@core/racing/domain/repositories/ResultRepository'; -import { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; -import type { Logger } from '@core/shared/application/Logger'; -import { IFeedRepository } from '@core/social/domain/repositories/FeedRepository'; -import { ISocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; +import { DriverRepository } from '@core/racing/domain/repositories/DriverRepository'; +import { LeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; +import { LeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; +import { RaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; +import { RaceRepository } from '@core/racing/domain/repositories/RaceRepository'; +import { ResultRepository } from '@core/racing/domain/repositories/ResultRepository'; +import { StandingRepository } from '@core/racing/domain/repositories/StandingRepository'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; +import { FeedRepository } from '@core/social/domain/repositories/FeedRepository'; +import { SocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; import { ImageServicePort } from '@core/media/application/ports/ImageServicePort'; import { DashboardOverviewUseCase } from '@core/racing/application/use-cases/DashboardOverviewUseCase'; @@ -61,15 +61,15 @@ export const DashboardProviders: Provider[] = [ { provide: DASHBOARD_OVERVIEW_USE_CASE_TOKEN, useFactory: ( - driverRepo: IDriverRepository, - raceRepo: IRaceRepository, - resultRepo: IResultRepository, - leagueRepo: ILeagueRepository, - standingRepo: IStandingRepository, - membershipRepo: ILeagueMembershipRepository, - registrationRepo: IRaceRegistrationRepository, - feedRepo: IFeedRepository, - socialRepo: ISocialGraphRepository, + driverRepo: DriverRepository, + raceRepo: RaceRepository, + resultRepo: ResultRepository, + leagueRepo: LeagueRepository, + standingRepo: StandingRepository, + membershipRepo: LeagueMembershipRepository, + registrationRepo: RaceRegistrationRepository, + feedRepo: FeedRepository, + socialRepo: SocialGraphRepository, imageService: ImageServicePort, ) => new DashboardOverviewUseCase( diff --git a/apps/api/src/domain/dashboard/DashboardService.ts b/apps/api/src/domain/dashboard/DashboardService.ts index f9b480af1..b88d99399 100644 --- a/apps/api/src/domain/dashboard/DashboardService.ts +++ b/apps/api/src/domain/dashboard/DashboardService.ts @@ -4,7 +4,7 @@ import { DashboardOverviewDTO } from './dtos/DashboardOverviewDTO'; import { DashboardOverviewPresenter } from './presenters/DashboardOverviewPresenter'; // Core imports -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; // Tokens (standalone to avoid circular imports) import { diff --git a/apps/api/src/domain/driver/DriverProviders.ts b/apps/api/src/domain/driver/DriverProviders.ts index ea4e1bd23..968a14925 100644 --- a/apps/api/src/domain/driver/DriverProviders.ts +++ b/apps/api/src/domain/driver/DriverProviders.ts @@ -3,15 +3,15 @@ import { Provider } from '@nestjs/common'; // Import core interfaces import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import { DriverExtendedProfileProvider } from '@core/racing/application/ports/DriverExtendedProfileProvider'; -import { IDriverRepository } from '@core/racing/domain/repositories/DriverRepository'; -import { ILiveryRepository } from '@core/racing/domain/repositories/LiveryRepository'; -import { IRaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; -import type { IResultRepository } from '@core/racing/domain/repositories/ResultRepository'; -import type { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; -import type { ITeamMembershipRepository } from '@core/racing/domain/repositories/TeamMembershipRepository'; -import type { ITeamRepository } from '@core/racing/domain/repositories/TeamRepository'; +import { DriverRepository } from '@core/racing/domain/repositories/DriverRepository'; +import { LiveryRepository } from '@core/racing/domain/repositories/LiveryRepository'; +import { RaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; +import type { ResultRepository } from '@core/racing/domain/repositories/ResultRepository'; +import type { StandingRepository } from '@core/racing/domain/repositories/StandingRepository'; +import type { TeamMembershipRepository } from '@core/racing/domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '@core/racing/domain/repositories/TeamRepository'; import type { Logger } from '@core/shared/domain/Logger'; -import type { ISocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; +import type { SocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; // Import use cases import { CompleteDriverOnboardingUseCase } from '@core/racing/application/use-cases/CompleteDriverOnboardingUseCase'; @@ -37,10 +37,10 @@ import { InMemoryMediaRepository } from '@adapters/racing/persistence/media/InMe // Import MediaResolverAdapter import { MediaResolverAdapter } from '@adapters/media/MediaResolverAdapter'; // Import repository tokens -import { IDriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; +import { DriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; // Import use case interfaces -import type { IDriverStatsUseCase } from '@core/racing/application/use-cases/DriverStatsUseCase'; -import type { IRankingUseCase } from '@core/racing/application/use-cases/RankingUseCase'; +import { DriverStatsUseCase } from '@core/racing/application/use-cases/DriverStatsUseCase'; +import { RankingUseCase } from '@core/racing/application/use-cases/RankingUseCase'; // Import presenters import { CompleteOnboardingPresenter } from './presenters/CompleteOnboardingPresenter'; @@ -104,7 +104,7 @@ export const DriverProviders: Provider[] = createLoggedProviders([ DriverRegistrationStatusPresenter, { provide: DriverPresenter, - useFactory: (driverStatsRepository: IDriverStatsRepository, mediaResolver: MediaResolverPort) => { + useFactory: (driverStatsRepository: DriverStatsRepository, mediaResolver: MediaResolverPort) => { const presenter = new DriverPresenter(driverStatsRepository, mediaResolver); return presenter; }, @@ -161,8 +161,8 @@ export const DriverProviders: Provider[] = createLoggedProviders([ { provide: RANKING_SERVICE_TOKEN, useFactory: ( - standingRepo: IStandingRepository, - driverRepo: IDriverRepository, + standingRepo: StandingRepository, + driverRepo: DriverRepository, logger: Logger ) => new RankingUseCase(standingRepo, driverRepo, logger), inject: ['IStandingRepository', DRIVER_REPOSITORY_TOKEN, LOGGER_TOKEN], @@ -170,8 +170,8 @@ export const DriverProviders: Provider[] = createLoggedProviders([ { provide: DRIVER_STATS_SERVICE_TOKEN, useFactory: ( - resultRepo: IResultRepository, - standingRepo: IStandingRepository, + resultRepo: ResultRepository, + standingRepo: StandingRepository, logger: Logger ) => new DriverStatsUseCase(resultRepo, standingRepo, logger), inject: ['IResultRepository', 'IStandingRepository', LOGGER_TOKEN], @@ -206,9 +206,9 @@ export const DriverProviders: Provider[] = createLoggedProviders([ { provide: GET_DRIVERS_LEADERBOARD_USE_CASE_TOKEN, useFactory: ( - driverRepo: IDriverRepository, - rankingUseCase: IRankingUseCase, - driverStatsUseCase: IDriverStatsUseCase, + driverRepo: DriverRepository, + rankingUseCase: RankingUseCase, + driverStatsUseCase: DriverStatsUseCase, logger: Logger, ) => new GetDriversLeaderboardUseCase( driverRepo, @@ -220,36 +220,36 @@ export const DriverProviders: Provider[] = createLoggedProviders([ }, { provide: GET_TOTAL_DRIVERS_USE_CASE_TOKEN, - useFactory: (driverRepo: IDriverRepository) => new GetTotalDriversUseCase(driverRepo), + useFactory: (driverRepo: DriverRepository) => new GetTotalDriversUseCase(driverRepo), inject: [DRIVER_REPOSITORY_TOKEN], }, { provide: COMPLETE_DRIVER_ONBOARDING_USE_CASE_TOKEN, - useFactory: (driverRepo: IDriverRepository, logger: Logger) => new CompleteDriverOnboardingUseCase(driverRepo, logger), + useFactory: (driverRepo: DriverRepository, logger: Logger) => new CompleteDriverOnboardingUseCase(driverRepo, logger), inject: [DRIVER_REPOSITORY_TOKEN, LOGGER_TOKEN], }, { provide: IS_DRIVER_REGISTERED_FOR_RACE_USE_CASE_TOKEN, - useFactory: (registrationRepo: IRaceRegistrationRepository, logger: Logger) => + useFactory: (registrationRepo: RaceRegistrationRepository, logger: Logger) => new IsDriverRegisteredForRaceUseCase(registrationRepo, logger), inject: [RACE_REGISTRATION_REPOSITORY_TOKEN, LOGGER_TOKEN], }, { provide: UPDATE_DRIVER_PROFILE_USE_CASE_TOKEN, - useFactory: (driverRepo: IDriverRepository, logger: Logger) => + useFactory: (driverRepo: DriverRepository, logger: Logger) => new UpdateDriverProfileUseCase(driverRepo, logger), inject: [DRIVER_REPOSITORY_TOKEN, LOGGER_TOKEN], }, { provide: GET_PROFILE_OVERVIEW_USE_CASE_TOKEN, useFactory: ( - driverRepo: IDriverRepository, - teamRepository: ITeamRepository, - teamMembershipRepository: ITeamMembershipRepository, - socialRepository: ISocialGraphRepository, + driverRepo: DriverRepository, + teamRepository: TeamRepository, + teamMembershipRepository: TeamMembershipRepository, + socialRepository: SocialGraphRepository, driverExtendedProfileProvider: DriverExtendedProfileProvider, - driverStatsUseCase: IDriverStatsUseCase, - rankingUseCase: IRankingUseCase, + driverStatsUseCase: DriverStatsUseCase, + rankingUseCase: RankingUseCase, ) => new GetProfileOverviewUseCase( driverRepo, @@ -272,13 +272,13 @@ export const DriverProviders: Provider[] = createLoggedProviders([ }, { provide: GET_DRIVER_LIVERIES_USE_CASE_TOKEN, - useFactory: (liveryRepository: ILiveryRepository, logger: Logger) => + useFactory: (liveryRepository: LiveryRepository, logger: Logger) => new GetDriverLiveriesUseCase(liveryRepository, logger), inject: [LIVERY_REPOSITORY_TOKEN, LOGGER_TOKEN], }, { provide: GET_DRIVER_USE_CASE_TOKEN, - useFactory: (driverRepo: IDriverRepository) => new GetDriverUseCase(driverRepo), + useFactory: (driverRepo: DriverRepository) => new GetDriverUseCase(driverRepo), inject: [DRIVER_REPOSITORY_TOKEN], }, ], initLogger); diff --git a/apps/api/src/domain/driver/DriverService.ts b/apps/api/src/domain/driver/DriverService.ts index 8a3a0e01b..0f2616cc9 100644 --- a/apps/api/src/domain/driver/DriverService.ts +++ b/apps/api/src/domain/driver/DriverService.ts @@ -30,7 +30,7 @@ import { DriverStatsPresenter } from './presenters/DriverStatsPresenter'; import { GetDriverLiveriesPresenter } from './presenters/GetDriverLiveriesPresenter'; // Tokens -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { COMPLETE_DRIVER_ONBOARDING_USE_CASE_TOKEN, GET_DRIVER_LIVERIES_USE_CASE_TOKEN, diff --git a/apps/api/src/domain/driver/presenters/DriverPresenter.ts b/apps/api/src/domain/driver/presenters/DriverPresenter.ts index 12ef6ef97..38b004107 100644 --- a/apps/api/src/domain/driver/presenters/DriverPresenter.ts +++ b/apps/api/src/domain/driver/presenters/DriverPresenter.ts @@ -1,7 +1,7 @@ import { MediaReference } from '@core/domain/media/MediaReference'; import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import type { Driver } from '@core/racing/domain/entities/Driver'; -import type { IDriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; +import type { DriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; import { Result } from '@core/shared/domain/Result'; import type { GetDriverOutputDTO } from '../dtos/GetDriverOutputDTO'; @@ -10,7 +10,7 @@ export class DriverPresenter { private mediaResolver: MediaResolverPort | undefined; constructor( - private readonly driverStatsRepository: IDriverStatsRepository, + private readonly driverStatsRepository: DriverStatsRepository, mediaResolver?: MediaResolverPort ) { this.mediaResolver = mediaResolver; diff --git a/apps/api/src/domain/league/LeagueProviders.ts b/apps/api/src/domain/league/LeagueProviders.ts index 86ebd0b48..201d36a3e 100644 --- a/apps/api/src/domain/league/LeagueProviders.ts +++ b/apps/api/src/domain/league/LeagueProviders.ts @@ -5,23 +5,23 @@ import * as LeagueTokens from './LeagueTokens'; // Import core interfaces import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; -import type { IDriverRepository } from '@core/racing/domain/repositories/DriverRepository'; -import type { ILeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; -import type { ILeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; -import type { IProtestRepository } from '@core/racing/domain/repositories/ProtestRepository'; -import type { IRaceRepository } from '@core/racing/domain/repositories/RaceRepository'; -import type { ISeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; -import type { ISeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; -import type { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; -import type { Logger } from '@core/shared/application/Logger'; +import type { DriverRepository } from '@core/racing/domain/repositories/DriverRepository'; +import type { LeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; +import type { ProtestRepository } from '@core/racing/domain/repositories/ProtestRepository'; +import type { RaceRepository } from '@core/racing/domain/repositories/RaceRepository'; +import type { SeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; +import type { SeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; +import type { StandingRepository } from '@core/racing/domain/repositories/StandingRepository'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; // Import concrete in-memory implementations import { getLeagueScoringPresetById, listLeagueScoringPresets } from '@adapters/bootstrap/LeagueScoringPresets'; import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; import { MediaResolverAdapter } from '@adapters/media/MediaResolverAdapter'; import { InMemoryLeagueStandingsRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueStandingsRepository'; -import type { ILeagueWalletRepository } from "@core/racing/domain/repositories/LeagueWalletRepository"; -import type { ITransactionRepository } from "@core/racing/domain/repositories/TransactionRepository"; +import type { LeagueWalletRepository } from "@core/racing/domain/repositories/LeagueWalletRepository"; +import type { TransactionRepository } from "@core/racing/domain/repositories/TransactionRepository"; // Import use cases import { ApproveLeagueJoinRequestUseCase } from '@core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase'; @@ -205,18 +205,18 @@ export const LeagueProviders: Provider[] = [ // Use cases { provide: GET_ALL_LEAGUES_WITH_CAPACITY_USE_CASE, - useFactory: (leagueRepo: ILeagueRepository, membershipRepo: ILeagueMembershipRepository) => + useFactory: (leagueRepo: LeagueRepository, membershipRepo: LeagueMembershipRepository) => new GetAllLeaguesWithCapacityUseCase(leagueRepo, membershipRepo), inject: [LEAGUE_REPOSITORY_TOKEN, LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN], }, { provide: GET_ALL_LEAGUES_WITH_CAPACITY_AND_SCORING_USE_CASE, useFactory: ( - leagueRepo: ILeagueRepository, - membershipRepo: ILeagueMembershipRepository, - seasonRepo: ISeasonRepository, - scoringRepo: import('@core/racing/domain/repositories/LeagueScoringConfigRepository').ILeagueScoringConfigRepository, - gameRepo: import('@core/racing/domain/repositories/GameRepository').IGameRepository, + leagueRepo: LeagueRepository, + membershipRepo: LeagueMembershipRepository, + seasonRepo: SeasonRepository, + scoringRepo: import('@core/racing/domain/repositories/LeagueScoringConfigRepository').LeagueScoringConfigRepository, + gameRepo: import('@core/racing/domain/repositories/GameRepository').GameRepository, ) => new GetAllLeaguesWithCapacityAndScoringUseCase( leagueRepo, @@ -237,8 +237,8 @@ export const LeagueProviders: Provider[] = [ { provide: GET_LEAGUE_STANDINGS_USE_CASE, useFactory: ( - standingRepo: IStandingRepository, - driverRepo: IDriverRepository, + standingRepo: StandingRepository, + driverRepo: DriverRepository, ) => new GetLeagueStandingsUseCase(standingRepo, driverRepo), inject: [ STANDING_REPOSITORY_TOKEN, @@ -263,54 +263,54 @@ export const LeagueProviders: Provider[] = [ }, { provide: GET_TOTAL_LEAGUES_USE_CASE, - useFactory: (leagueRepo: ILeagueRepository) => + useFactory: (leagueRepo: LeagueRepository) => new GetTotalLeaguesUseCase(leagueRepo), inject: [LEAGUE_REPOSITORY_TOKEN], }, { provide: GET_LEAGUE_JOIN_REQUESTS_USE_CASE, useFactory: ( - membershipRepo: ILeagueMembershipRepository, - driverRepo: IDriverRepository, - leagueRepo: ILeagueRepository, + membershipRepo: LeagueMembershipRepository, + driverRepo: DriverRepository, + leagueRepo: LeagueRepository, ) => new GetLeagueJoinRequestsUseCase(membershipRepo, driverRepo, leagueRepo), inject: [LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, DRIVER_REPOSITORY_TOKEN, LEAGUE_REPOSITORY_TOKEN], }, { provide: APPROVE_LEAGUE_JOIN_REQUEST_USE_CASE, useFactory: ( - membershipRepo: ILeagueMembershipRepository, - leagueRepo: ILeagueRepository, + membershipRepo: LeagueMembershipRepository, + leagueRepo: LeagueRepository, ) => new ApproveLeagueJoinRequestUseCase(membershipRepo, leagueRepo), inject: [LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, LEAGUE_REPOSITORY_TOKEN], }, { provide: REJECT_LEAGUE_JOIN_REQUEST_USE_CASE, - useFactory: (membershipRepo: ILeagueMembershipRepository) => + useFactory: (membershipRepo: LeagueMembershipRepository) => new RejectLeagueJoinRequestUseCase(membershipRepo), inject: [LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN], }, { provide: REMOVE_LEAGUE_MEMBER_USE_CASE, useFactory: ( - membershipRepo: ILeagueMembershipRepository, + membershipRepo: LeagueMembershipRepository, ) => new RemoveLeagueMemberUseCase(membershipRepo), inject: [LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN], }, { provide: UPDATE_LEAGUE_MEMBER_ROLE_USE_CASE, useFactory: ( - membershipRepo: ILeagueMembershipRepository, + membershipRepo: LeagueMembershipRepository, ) => new UpdateLeagueMemberRoleUseCase(membershipRepo), inject: [LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN], }, { provide: GET_LEAGUE_OWNER_SUMMARY_USE_CASE, useFactory: ( - leagueRepo: ILeagueRepository, - driverRepo: IDriverRepository, - leagueMembershipRepo: ILeagueMembershipRepository, - standingRepo: IStandingRepository, + leagueRepo: LeagueRepository, + driverRepo: DriverRepository, + leagueMembershipRepo: LeagueMembershipRepository, + standingRepo: StandingRepository, ) => new GetLeagueOwnerSummaryUseCase(leagueRepo, driverRepo, leagueMembershipRepo, standingRepo), inject: [ LEAGUE_REPOSITORY_TOKEN, @@ -322,10 +322,10 @@ export const LeagueProviders: Provider[] = [ { provide: GET_LEAGUE_PROTESTS_USE_CASE, useFactory: ( - raceRepo: IRaceRepository, - protestRepo: IProtestRepository, - driverRepo: IDriverRepository, - leagueRepo: ILeagueRepository, + raceRepo: RaceRepository, + protestRepo: ProtestRepository, + driverRepo: DriverRepository, + leagueRepo: LeagueRepository, ) => new GetLeagueProtestsUseCase(raceRepo, protestRepo, driverRepo, leagueRepo), inject: [ RACE_REPOSITORY_TOKEN, @@ -341,18 +341,18 @@ export const LeagueProviders: Provider[] = [ { provide: GET_LEAGUE_MEMBERSHIPS_USE_CASE, useFactory: ( - membershipRepo: ILeagueMembershipRepository, - driverRepo: IDriverRepository, - leagueRepo: ILeagueRepository, + membershipRepo: LeagueMembershipRepository, + driverRepo: DriverRepository, + leagueRepo: LeagueRepository, ) => new GetLeagueMembershipsUseCase(membershipRepo, driverRepo, leagueRepo), inject: [LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, DRIVER_REPOSITORY_TOKEN, LEAGUE_REPOSITORY_TOKEN], }, { provide: GET_LEAGUE_ROSTER_MEMBERS_USE_CASE, useFactory: ( - membershipRepo: ILeagueMembershipRepository, - driverRepo: IDriverRepository, - leagueRepo: ILeagueRepository, + membershipRepo: LeagueMembershipRepository, + driverRepo: DriverRepository, + leagueRepo: LeagueRepository, ) => new GetLeagueRosterMembersUseCase(membershipRepo, driverRepo, leagueRepo), inject: [ LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, @@ -363,9 +363,9 @@ export const LeagueProviders: Provider[] = [ { provide: GET_LEAGUE_ROSTER_JOIN_REQUESTS_USE_CASE, useFactory: ( - membershipRepo: ILeagueMembershipRepository, - driverRepo: IDriverRepository, - leagueRepo: ILeagueRepository, + membershipRepo: LeagueMembershipRepository, + driverRepo: DriverRepository, + leagueRepo: LeagueRepository, ) => new GetLeagueRosterJoinRequestsUseCase(membershipRepo, driverRepo, leagueRepo), inject: [ LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, @@ -376,9 +376,9 @@ export const LeagueProviders: Provider[] = [ { provide: GET_LEAGUE_SCHEDULE_USE_CASE, useFactory: ( - leagueRepo: ILeagueRepository, - seasonRepo: ISeasonRepository, - raceRepo: IRaceRepository, + leagueRepo: LeagueRepository, + seasonRepo: SeasonRepository, + raceRepo: RaceRepository, logger: Logger, ) => new GetLeagueScheduleUseCase(leagueRepo, seasonRepo, raceRepo, logger), inject: [ @@ -391,8 +391,8 @@ export const LeagueProviders: Provider[] = [ { provide: GET_LEAGUE_ADMIN_PERMISSIONS_USE_CASE, useFactory: ( - leagueRepo: ILeagueRepository, - leagueMembershipRepo: ILeagueMembershipRepository, + leagueRepo: LeagueRepository, + leagueMembershipRepo: LeagueMembershipRepository, logger: Logger, ) => new GetLeagueAdminPermissionsUseCase(leagueRepo, leagueMembershipRepo, logger), inject: [ @@ -404,9 +404,9 @@ export const LeagueProviders: Provider[] = [ { provide: GET_LEAGUE_WALLET_USE_CASE, useFactory: ( - leagueRepo: ILeagueRepository, - walletRepo: ILeagueWalletRepository, - transactionRepo: ITransactionRepository, + leagueRepo: LeagueRepository, + walletRepo: LeagueWalletRepository, + transactionRepo: TransactionRepository, ) => new GetLeagueWalletUseCase(leagueRepo, walletRepo, transactionRepo), inject: [ LEAGUE_REPOSITORY_TOKEN, @@ -417,9 +417,9 @@ export const LeagueProviders: Provider[] = [ { provide: WITHDRAW_FROM_LEAGUE_WALLET_USE_CASE, useFactory: ( - leagueRepo: ILeagueRepository, - walletRepo: ILeagueWalletRepository, - transactionRepo: ITransactionRepository, + leagueRepo: LeagueRepository, + walletRepo: LeagueWalletRepository, + transactionRepo: TransactionRepository, logger: Logger, ) => new WithdrawFromLeagueWalletUseCase(leagueRepo, walletRepo, transactionRepo, logger), inject: [ @@ -432,11 +432,11 @@ export const LeagueProviders: Provider[] = [ { provide: GET_SEASON_SPONSORSHIPS_USE_CASE, useFactory: ( - seasonSponsorshipRepo: ISeasonSponsorshipRepository, - seasonRepo: ISeasonRepository, - leagueRepo: ILeagueRepository, - leagueMembershipRepo: ILeagueMembershipRepository, - raceRepo: IRaceRepository, + seasonSponsorshipRepo: SeasonSponsorshipRepository, + seasonRepo: SeasonRepository, + leagueRepo: LeagueRepository, + leagueMembershipRepo: LeagueMembershipRepository, + raceRepo: RaceRepository, ) => new GetSeasonSponsorshipsUseCase( seasonSponsorshipRepo, @@ -462,7 +462,7 @@ export const LeagueProviders: Provider[] = [ { provide: JOIN_LEAGUE_USE_CASE, useFactory: ( - membershipRepo: ILeagueMembershipRepository, + membershipRepo: LeagueMembershipRepository, logger: Logger, ) => new JoinLeagueUseCase(membershipRepo, logger), inject: [LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, LOGGER_TOKEN], @@ -480,8 +480,8 @@ export const LeagueProviders: Provider[] = [ { provide: LeagueTokens.CREATE_LEAGUE_SEASON_SCHEDULE_RACE_USE_CASE, useFactory: ( - seasonRepo: ISeasonRepository, - raceRepo: IRaceRepository, + seasonRepo: SeasonRepository, + raceRepo: RaceRepository, logger: Logger, ) => new CreateLeagueSeasonScheduleRaceUseCase(seasonRepo, raceRepo, logger, { @@ -496,8 +496,8 @@ export const LeagueProviders: Provider[] = [ { provide: LeagueTokens.UPDATE_LEAGUE_SEASON_SCHEDULE_RACE_USE_CASE, useFactory: ( - seasonRepo: ISeasonRepository, - raceRepo: IRaceRepository, + seasonRepo: SeasonRepository, + raceRepo: RaceRepository, logger: Logger, ) => new UpdateLeagueSeasonScheduleRaceUseCase(seasonRepo, raceRepo, logger), inject: [ @@ -509,8 +509,8 @@ export const LeagueProviders: Provider[] = [ { provide: LeagueTokens.DELETE_LEAGUE_SEASON_SCHEDULE_RACE_USE_CASE, useFactory: ( - seasonRepo: ISeasonRepository, - raceRepo: IRaceRepository, + seasonRepo: SeasonRepository, + raceRepo: RaceRepository, logger: Logger, ) => new DeleteLeagueSeasonScheduleRaceUseCase(seasonRepo, raceRepo, logger), inject: [ @@ -522,7 +522,7 @@ export const LeagueProviders: Provider[] = [ { provide: LeagueTokens.PUBLISH_LEAGUE_SEASON_SCHEDULE_USE_CASE, useFactory: ( - seasonRepo: ISeasonRepository, + seasonRepo: SeasonRepository, logger: Logger, ) => new PublishLeagueSeasonScheduleUseCase(seasonRepo, logger), inject: [ @@ -533,7 +533,7 @@ export const LeagueProviders: Provider[] = [ { provide: LeagueTokens.UNPUBLISH_LEAGUE_SEASON_SCHEDULE_USE_CASE, useFactory: ( - seasonRepo: ISeasonRepository, + seasonRepo: SeasonRepository, logger: Logger, ) => new UnpublishLeagueSeasonScheduleUseCase(seasonRepo, logger), inject: [ diff --git a/apps/api/src/domain/league/LeagueService.ts b/apps/api/src/domain/league/LeagueService.ts index a39ec2963..90f4547e5 100644 --- a/apps/api/src/domain/league/LeagueService.ts +++ b/apps/api/src/domain/league/LeagueService.ts @@ -58,7 +58,7 @@ import type { LeagueScoringConfigViewModel } from './presenters/LeagueScoringCon import type { LeagueScoringPresetsViewModel } from './presenters/LeagueScoringPresetsPresenter'; // Core imports -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; // Use cases import { ApproveLeagueJoinRequestUseCase } from '@core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase'; diff --git a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.ts b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.ts index 5d347eb77..1f6ed5f99 100644 --- a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.ts +++ b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.ts @@ -1,7 +1,7 @@ import { MediaReference } from '@core/domain/media/MediaReference'; import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import type { GetAllLeaguesWithCapacityAndScoringResult } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { AllLeaguesWithCapacityAndScoringDTO, LeagueWithCapacityAndScoringDTO, diff --git a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.ts b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.ts index 27ff2ea16..10956f4d6 100644 --- a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.ts +++ b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.ts @@ -1,5 +1,5 @@ import type { GetAllLeaguesWithCapacityResult } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { AllLeaguesWithCapacityDTO, LeagueWithCapacityDTO } from '../dtos/AllLeaguesWithCapacityDTO'; export class AllLeaguesWithCapacityPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts b/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts index 1d50b8318..1f471c254 100644 --- a/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts +++ b/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts @@ -1,6 +1,6 @@ import { ApproveLeagueJoinRequestResult } from '@core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { ApproveLeagueJoinRequestDTO } from '../dtos/ApproveLeagueJoinRequestDTO'; export class ApproveLeagueJoinRequestPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts index 59bdc7019..ff23d7264 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts @@ -1,5 +1,5 @@ import type { GetLeagueAdminPermissionsResult } from '@core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { LeagueAdminPermissionsDTO } from '../dtos/LeagueAdminPermissionsDTO'; export class GetLeagueAdminPermissionsPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts index 28026389e..f7428ee80 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts @@ -1,5 +1,5 @@ import { GetLeagueMembershipsResult } from '@core/racing/application/use-cases/GetLeagueMembershipsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { LeagueMemberDTO } from '../dtos/LeagueMemberDTO'; import { LeagueMembershipsDTO } from '../dtos/LeagueMembershipsDTO'; diff --git a/apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts index 3f1418d75..f431effd5 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts @@ -1,5 +1,5 @@ import type { GetLeagueOwnerSummaryResult } from '@core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { LeagueOwnerSummaryDTO } from '../dtos/LeagueOwnerSummaryDTO'; export class GetLeagueOwnerSummaryPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts index 97060380d..cab5abce7 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts @@ -1,5 +1,5 @@ import type { GetLeagueWalletResult } from '@core/racing/application/use-cases/GetLeagueWalletUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { GetLeagueWalletOutputDTO, WalletTransactionDTO } from '../dtos/GetLeagueWalletOutputDTO'; export class GetLeagueWalletPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/GetSeasonSponsorshipsPresenter.ts b/apps/api/src/domain/league/presenters/GetSeasonSponsorshipsPresenter.ts index 9307ac497..2aedc8878 100644 --- a/apps/api/src/domain/league/presenters/GetSeasonSponsorshipsPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetSeasonSponsorshipsPresenter.ts @@ -1,5 +1,5 @@ import type { GetSeasonSponsorshipsResult } from '@core/racing/application/use-cases/GetSeasonSponsorshipsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { SponsorshipDetailDTO } from '../../sponsor/dtos/SponsorshipDetailDTO'; import { GetSeasonSponsorshipsOutputDTO } from '../dtos/GetSeasonSponsorshipsOutputDTO'; diff --git a/apps/api/src/domain/league/presenters/JoinLeaguePresenter.ts b/apps/api/src/domain/league/presenters/JoinLeaguePresenter.ts index 6656d4e3d..d2b512c3d 100644 --- a/apps/api/src/domain/league/presenters/JoinLeaguePresenter.ts +++ b/apps/api/src/domain/league/presenters/JoinLeaguePresenter.ts @@ -1,5 +1,5 @@ import type { JoinLeagueResult } from '@core/racing/application/use-cases/JoinLeagueUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { JoinLeagueOutputDTO } from '../dtos/JoinLeagueOutputDTO'; export class JoinLeaguePresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/LeagueConfigPresenter.ts b/apps/api/src/domain/league/presenters/LeagueConfigPresenter.ts index 847cfa5c5..ceff4d674 100644 --- a/apps/api/src/domain/league/presenters/LeagueConfigPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueConfigPresenter.ts @@ -1,5 +1,5 @@ import type { GetLeagueFullConfigResult } from '@core/racing/application/use-cases/GetLeagueFullConfigUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { LeagueConfigFormModelDTO } from '../dtos/LeagueConfigFormModelDTO'; export class LeagueConfigPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts b/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts index 30d73c871..e732f2961 100644 --- a/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts @@ -1,5 +1,5 @@ import { GetLeagueJoinRequestsResult } from '@core/racing/application/use-cases/GetLeagueJoinRequestsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { LeagueJoinRequestWithDriverDTO } from '../dtos/LeagueJoinRequestWithDriverDTO'; export interface LeagueJoinRequestsViewModel { diff --git a/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts b/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts index 3f789d304..b3a3f8833 100644 --- a/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts @@ -1,5 +1,5 @@ import { GetLeagueOwnerSummaryResult } from '@core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { LeagueOwnerSummaryDTO } from '../dtos/LeagueOwnerSummaryDTO'; export class LeagueOwnerSummaryPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts b/apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts index 3684bba62..63bde9685 100644 --- a/apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts +++ b/apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts @@ -1,6 +1,6 @@ import type { GetLeagueRosterJoinRequestsResult } from '@core/racing/application/use-cases/GetLeagueRosterJoinRequestsUseCase'; import type { GetLeagueRosterMembersResult } from '@core/racing/application/use-cases/GetLeagueRosterMembersUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { Injectable } from '@nestjs/common'; import type { DriverDTO } from '../../driver/dtos/DriverDTO'; import type { LeagueRosterJoinRequestDTO } from '../dtos/LeagueRosterJoinRequestDTO'; diff --git a/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts b/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts index 58de7c0e2..bf8ca41f5 100644 --- a/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts @@ -1,5 +1,5 @@ import { GetLeagueScheduleResult } from '@core/racing/application/use-cases/GetLeagueScheduleUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { RaceDTO } from '../../race/dtos/RaceDTO'; import { LeagueScheduleDTO } from '../dtos/LeagueScheduleDTO'; diff --git a/apps/api/src/domain/league/presenters/LeagueScoringConfigPresenter.ts b/apps/api/src/domain/league/presenters/LeagueScoringConfigPresenter.ts index ae4b7f5ef..c73d9d0d6 100644 --- a/apps/api/src/domain/league/presenters/LeagueScoringConfigPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueScoringConfigPresenter.ts @@ -1,7 +1,7 @@ import type { GetLeagueScoringConfigResult } from '@core/racing/application/use-cases/GetLeagueScoringConfigUseCase'; import type { BonusRule } from '@core/racing/domain/types/BonusRule'; import type { ChampionshipConfig } from '@core/racing/domain/types/ChampionshipConfig'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; export interface LeagueScoringChampionshipViewModel { id: string; diff --git a/apps/api/src/domain/league/presenters/LeagueScoringPresetsPresenter.ts b/apps/api/src/domain/league/presenters/LeagueScoringPresetsPresenter.ts index ce184e18e..eabe7f22a 100644 --- a/apps/api/src/domain/league/presenters/LeagueScoringPresetsPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueScoringPresetsPresenter.ts @@ -1,5 +1,5 @@ import type { ListLeagueScoringPresetsResult } from '@core/racing/application/use-cases/ListLeagueScoringPresetsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { LeagueScoringPresetsDTO } from '../dtos/LeagueScoringPresetsDTO'; export type LeagueScoringPresetsViewModel = LeagueScoringPresetsDTO; diff --git a/apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts b/apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts index ace892855..1a5177f53 100644 --- a/apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts +++ b/apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts @@ -1,4 +1,4 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { CreateLeagueScheduleRaceOutputDTO, diff --git a/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.ts b/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.ts index bb10fe32d..c715d05dd 100644 --- a/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.ts +++ b/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.ts @@ -1,5 +1,5 @@ import type { RejectLeagueJoinRequestResult } from '@core/racing/application/use-cases/RejectLeagueJoinRequestUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { RejectJoinRequestOutputDTO } from '../dtos/RejectJoinRequestOutputDTO'; export class RejectLeagueJoinRequestPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/RemoveLeagueMemberPresenter.ts b/apps/api/src/domain/league/presenters/RemoveLeagueMemberPresenter.ts index 7278902e7..09361b78a 100644 --- a/apps/api/src/domain/league/presenters/RemoveLeagueMemberPresenter.ts +++ b/apps/api/src/domain/league/presenters/RemoveLeagueMemberPresenter.ts @@ -1,5 +1,5 @@ import type { RemoveLeagueMemberResult } from '@core/racing/application/use-cases/RemoveLeagueMemberUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { RemoveLeagueMemberOutputDTO } from '../dtos/RemoveLeagueMemberOutputDTO'; export class RemoveLeagueMemberPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/TransferLeagueOwnershipPresenter.ts b/apps/api/src/domain/league/presenters/TransferLeagueOwnershipPresenter.ts index 746f779c5..6859f72c4 100644 --- a/apps/api/src/domain/league/presenters/TransferLeagueOwnershipPresenter.ts +++ b/apps/api/src/domain/league/presenters/TransferLeagueOwnershipPresenter.ts @@ -1,5 +1,5 @@ import type { TransferLeagueOwnershipResult } from '@core/racing/application/use-cases/TransferLeagueOwnershipUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { TransferLeagueOwnershipOutputDTO } from '../dtos/TransferLeagueOwnershipOutputDTO'; export class TransferLeagueOwnershipPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/UpdateLeagueMemberRolePresenter.ts b/apps/api/src/domain/league/presenters/UpdateLeagueMemberRolePresenter.ts index 09a78afce..f42d6c15e 100644 --- a/apps/api/src/domain/league/presenters/UpdateLeagueMemberRolePresenter.ts +++ b/apps/api/src/domain/league/presenters/UpdateLeagueMemberRolePresenter.ts @@ -1,5 +1,5 @@ import type { UpdateLeagueMemberRoleResult } from '@core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { UpdateLeagueMemberRoleOutputDTO } from '../dtos/UpdateLeagueMemberRoleOutputDTO'; export class UpdateLeagueMemberRolePresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts b/apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts index 02034ee45..d97bd7553 100644 --- a/apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts +++ b/apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts @@ -1,5 +1,5 @@ import type { WithdrawFromLeagueWalletResult } from '@core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { WithdrawFromLeagueWalletOutputDTO } from '../dtos/WithdrawFromLeagueWalletOutputDTO'; export class WithdrawFromLeagueWalletPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/media/MediaController.ts b/apps/api/src/domain/media/MediaController.ts index eeb3e689a..8f2833c29 100644 --- a/apps/api/src/domain/media/MediaController.ts +++ b/apps/api/src/domain/media/MediaController.ts @@ -1,6 +1,6 @@ import { MediaReference } from '@core/domain/media/MediaReference'; import { MediaGenerationService } from '@core/media/domain/services/MediaGenerationService'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import { Body, Controller, Delete, Get, HttpStatus, Inject, Param, Post, Put, Res, UploadedFile, UseInterceptors } from '@nestjs/common'; import { FileInterceptor } from '@nestjs/platform-express'; import { ApiConsumes, ApiOperation, ApiParam, ApiResponse, ApiTags } from '@nestjs/swagger'; diff --git a/apps/api/src/domain/media/MediaProviders.ts b/apps/api/src/domain/media/MediaProviders.ts index ecea0164a..6346cbcf0 100644 --- a/apps/api/src/domain/media/MediaProviders.ts +++ b/apps/api/src/domain/media/MediaProviders.ts @@ -8,7 +8,7 @@ import { IAvatarGenerationRepository } from '@core/media/domain/repositories/Ava import { IAvatarRepository } from '@core/media/domain/repositories/AvatarRepository'; import { IMediaRepository } from '@core/media/domain/repositories/MediaRepository'; import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; // Import use cases import { DeleteMediaUseCase } from '@core/media/application/use-cases/DeleteMediaUseCase'; diff --git a/apps/api/src/domain/media/MediaService.ts b/apps/api/src/domain/media/MediaService.ts index 050123f07..c2848e978 100644 --- a/apps/api/src/domain/media/MediaService.ts +++ b/apps/api/src/domain/media/MediaService.ts @@ -36,7 +36,7 @@ import { RequestAvatarGenerationPresenter } from './presenters/RequestAvatarGene import { UpdateAvatarPresenter } from './presenters/UpdateAvatarPresenter'; import { UploadMediaPresenter } from './presenters/UploadMediaPresenter'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { DELETE_MEDIA_USE_CASE_TOKEN, GET_AVATAR_USE_CASE_TOKEN, diff --git a/apps/api/src/domain/notifications/NotificationsProviders.ts b/apps/api/src/domain/notifications/NotificationsProviders.ts index e1e2cda20..9f681f3ac 100644 --- a/apps/api/src/domain/notifications/NotificationsProviders.ts +++ b/apps/api/src/domain/notifications/NotificationsProviders.ts @@ -3,7 +3,7 @@ import { GetAllNotificationsUseCase } from '@core/notifications/application/use- import { GetUnreadNotificationsUseCase } from '@core/notifications/application/use-cases/GetUnreadNotificationsUseCase'; import { MarkNotificationReadUseCase } from '@core/notifications/application/use-cases/MarkNotificationReadUseCase'; import { INotificationRepository } from '@core/notifications/domain/repositories/NotificationRepository'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import { Provider } from '@nestjs/common'; import { NOTIFICATION_REPOSITORY_TOKEN } from '../../persistence/notifications/NotificationsPersistenceTokens'; import { diff --git a/apps/api/src/domain/payments/PaymentsService.ts b/apps/api/src/domain/payments/PaymentsService.ts index cc97918ee..479e80a9e 100644 --- a/apps/api/src/domain/payments/PaymentsService.ts +++ b/apps/api/src/domain/payments/PaymentsService.ts @@ -1,4 +1,4 @@ -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import { Inject, Injectable } from '@nestjs/common'; // Use cases diff --git a/apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts b/apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts index 7956cf630..80435872e 100644 --- a/apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts +++ b/apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts @@ -1,5 +1,5 @@ import type { CreatePaymentResult } from '@core/payments/application/use-cases/CreatePaymentUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { CreatePaymentOutput } from '../dtos/PaymentsDto'; export class CreatePaymentPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts b/apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts index 6dd5d5445..1f80afcaf 100644 --- a/apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts +++ b/apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts @@ -1,5 +1,5 @@ import type { GetPaymentsResult } from '@core/payments/application/use-cases/GetPaymentsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { GetPaymentsOutput } from '../dtos/PaymentsDto'; export class GetPaymentsPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts b/apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts index 2eaace821..318187dfb 100644 --- a/apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts +++ b/apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts @@ -1,5 +1,5 @@ import type { UpdatePaymentStatusResult } from '@core/payments/application/use-cases/UpdatePaymentStatusUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { UpdatePaymentStatusOutput } from '../dtos/PaymentsDto'; export class UpdatePaymentStatusPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/protests/ProtestsProviders.ts b/apps/api/src/domain/protests/ProtestsProviders.ts index 0bac1801f..5c1ec40ab 100644 --- a/apps/api/src/domain/protests/ProtestsProviders.ts +++ b/apps/api/src/domain/protests/ProtestsProviders.ts @@ -4,7 +4,7 @@ import { Provider } from '@nestjs/common'; import type { ILeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; import type { IProtestRepository } from '@core/racing/domain/repositories/ProtestRepository'; import type { IRaceRepository } from '@core/racing/domain/repositories/RaceRepository'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; // Import concrete in-memory implementations import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; diff --git a/apps/api/src/domain/protests/ProtestsService.test.ts b/apps/api/src/domain/protests/ProtestsService.test.ts index b933c6508..c22f74765 100644 --- a/apps/api/src/domain/protests/ProtestsService.test.ts +++ b/apps/api/src/domain/protests/ProtestsService.test.ts @@ -3,7 +3,7 @@ import type { ReviewProtestResult, ReviewProtestUseCase, } from '@core/racing/application/use-cases/ReviewProtestUseCase'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import { Result } from '@core/shared/domain/Result'; import { beforeEach, describe, expect, it, vi, type MockedFunction } from 'vitest'; import { ProtestsService } from './ProtestsService'; diff --git a/apps/api/src/domain/protests/ProtestsService.ts b/apps/api/src/domain/protests/ProtestsService.ts index e94b410bd..f490b5ae5 100644 --- a/apps/api/src/domain/protests/ProtestsService.ts +++ b/apps/api/src/domain/protests/ProtestsService.ts @@ -1,4 +1,4 @@ -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import { Inject, Injectable } from '@nestjs/common'; // Use cases diff --git a/apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts b/apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts index a4ca55963..96f4ecb5d 100644 --- a/apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts +++ b/apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts @@ -1,5 +1,5 @@ import type { ReviewProtestApplicationError, ReviewProtestResult } from '@core/racing/application/use-cases/ReviewProtestUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; export interface ReviewProtestResponseDTO { success: boolean; diff --git a/apps/api/src/domain/race/RaceProviders.ts b/apps/api/src/domain/race/RaceProviders.ts index 19c04e342..ee3a70c8b 100644 --- a/apps/api/src/domain/race/RaceProviders.ts +++ b/apps/api/src/domain/race/RaceProviders.ts @@ -11,7 +11,7 @@ import type { IRaceRegistrationRepository } from '@core/racing/domain/repositori import type { IRaceRepository } from '@core/racing/domain/repositories/RaceRepository'; import type { IResultRepository } from '@core/racing/domain/repositories/ResultRepository'; import type { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; // Import concrete in-memory implementations import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; diff --git a/apps/api/src/domain/race/RaceService.ts b/apps/api/src/domain/race/RaceService.ts index 5936c504b..859ffd5cf 100644 --- a/apps/api/src/domain/race/RaceService.ts +++ b/apps/api/src/domain/race/RaceService.ts @@ -8,7 +8,7 @@ import { RegisterForRaceParamsDTO } from './dtos/RegisterForRaceParamsDTO'; import { WithdrawFromRaceParamsDTO } from './dtos/WithdrawFromRaceParamsDTO'; // Core imports -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; // Use cases import { CancelRaceUseCase } from '@core/racing/application/use-cases/CancelRaceUseCase'; diff --git a/apps/api/src/domain/sponsor/SponsorProviders.ts b/apps/api/src/domain/sponsor/SponsorProviders.ts index a70396b99..27b04ff8f 100644 --- a/apps/api/src/domain/sponsor/SponsorProviders.ts +++ b/apps/api/src/domain/sponsor/SponsorProviders.ts @@ -14,7 +14,7 @@ import { ISeasonSponsorshipRepository } from '@core/racing/domain/repositories/S import { ISponsorRepository } from '@core/racing/domain/repositories/SponsorRepository'; import { ISponsorshipPricingRepository } from '@core/racing/domain/repositories/SponsorshipPricingRepository'; import { ISponsorshipRequestRepository } from '@core/racing/domain/repositories/SponsorshipRequestRepository'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { GetSponsorBillingUseCase } from '@core/payments/application/use-cases/GetSponsorBillingUseCase'; import { AcceptSponsorshipRequestUseCase } from '@core/racing/application/use-cases/AcceptSponsorshipRequestUseCase'; diff --git a/apps/api/src/domain/sponsor/SponsorService.test.ts b/apps/api/src/domain/sponsor/SponsorService.test.ts index 0cc014956..78fca6a94 100644 --- a/apps/api/src/domain/sponsor/SponsorService.test.ts +++ b/apps/api/src/domain/sponsor/SponsorService.test.ts @@ -10,7 +10,7 @@ import type { GetSponsorUseCase } from '@core/racing/application/use-cases/GetSp import type { RejectSponsorshipRequestUseCase } from '@core/racing/application/use-cases/RejectSponsorshipRequestUseCase'; import { Sponsor } from '@core/racing/domain/entities/sponsor/Sponsor'; import { Money } from '@core/racing/domain/value-objects/Money'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { Result } from '@core/shared/domain/Result'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import type { CreateSponsorInputDTO } from './dtos/CreateSponsorInputDTO'; diff --git a/apps/api/src/domain/sponsor/SponsorService.ts b/apps/api/src/domain/sponsor/SponsorService.ts index d1331c26e..a40a09ee3 100644 --- a/apps/api/src/domain/sponsor/SponsorService.ts +++ b/apps/api/src/domain/sponsor/SponsorService.ts @@ -35,7 +35,7 @@ import { GetSponsorsUseCase } from '@core/racing/application/use-cases/GetSponso import { GetSponsorUseCase } from '@core/racing/application/use-cases/GetSponsorUseCase'; import { RejectSponsorshipRequestUseCase } from '@core/racing/application/use-cases/RejectSponsorshipRequestUseCase'; import type { SponsorableEntityType } from '@core/racing/domain/entities/SponsorshipRequest'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; // Tokens import { diff --git a/apps/api/src/domain/team/TeamProviders.ts b/apps/api/src/domain/team/TeamProviders.ts index 23d87902e..379937875 100644 --- a/apps/api/src/domain/team/TeamProviders.ts +++ b/apps/api/src/domain/team/TeamProviders.ts @@ -34,7 +34,7 @@ import type { IDriverRepository } from '@core/racing/domain/repositories/DriverR import type { ITeamMembershipRepository } from '@core/racing/domain/repositories/TeamMembershipRepository'; import type { ITeamRepository } from '@core/racing/domain/repositories/TeamRepository'; import type { ITeamStatsRepository } from '@core/racing/domain/repositories/TeamStatsRepository'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; // Import concrete implementations import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; diff --git a/apps/api/src/domain/team/TeamService.test.ts b/apps/api/src/domain/team/TeamService.test.ts index 0f2c04444..954a70f51 100644 --- a/apps/api/src/domain/team/TeamService.test.ts +++ b/apps/api/src/domain/team/TeamService.test.ts @@ -6,7 +6,7 @@ import { GetTeamJoinRequestsUseCase } from '@core/racing/application/use-cases/G import { GetTeamMembershipUseCase } from '@core/racing/application/use-cases/GetTeamMembershipUseCase'; import { GetTeamMembersUseCase } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; import { UpdateTeamUseCase } from '@core/racing/application/use-cases/UpdateTeamUseCase'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import { Result } from '@core/shared/domain/Result'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { CreateTeamInputDTO } from './dtos/CreateTeamInputDTO'; diff --git a/apps/api/src/domain/team/TeamService.ts b/apps/api/src/domain/team/TeamService.ts index a16a5dcab..099ec5803 100644 --- a/apps/api/src/domain/team/TeamService.ts +++ b/apps/api/src/domain/team/TeamService.ts @@ -11,7 +11,7 @@ import { UpdateTeamInputDTO } from './dtos/UpdateTeamInputDTO'; import { UpdateTeamOutputDTO } from './dtos/UpdateTeamOutputDTO'; // Core imports -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; // Use cases import { CreateTeamInput, CreateTeamUseCase } from '@core/racing/application/use-cases/CreateTeamUseCase'; diff --git a/apps/api/src/domain/team/presenters/AllTeamsPresenter.ts b/apps/api/src/domain/team/presenters/AllTeamsPresenter.ts index 1cde9f10e..f2291e1c9 100644 --- a/apps/api/src/domain/team/presenters/AllTeamsPresenter.ts +++ b/apps/api/src/domain/team/presenters/AllTeamsPresenter.ts @@ -1,7 +1,7 @@ import { MediaReference } from '@core/domain/media/MediaReference'; import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import type { GetAllTeamsResult } from '@core/racing/application/use-cases/GetAllTeamsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { GetAllTeamsOutputDTO } from '../dtos/GetAllTeamsOutputDTO'; import { TeamListItemDTO } from '../dtos/TeamListItemDTO'; diff --git a/apps/api/src/domain/team/presenters/CreateTeamPresenter.ts b/apps/api/src/domain/team/presenters/CreateTeamPresenter.ts index 942c67be2..dfced5c61 100644 --- a/apps/api/src/domain/team/presenters/CreateTeamPresenter.ts +++ b/apps/api/src/domain/team/presenters/CreateTeamPresenter.ts @@ -1,5 +1,5 @@ import type { CreateTeamResult } from '@core/racing/application/use-cases/CreateTeamUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { CreateTeamOutputDTO } from '../dtos/CreateTeamOutputDTO'; export class CreateTeamPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/DriverTeamPresenter.ts b/apps/api/src/domain/team/presenters/DriverTeamPresenter.ts index 578adc2ce..fdd77eeba 100644 --- a/apps/api/src/domain/team/presenters/DriverTeamPresenter.ts +++ b/apps/api/src/domain/team/presenters/DriverTeamPresenter.ts @@ -1,5 +1,5 @@ import type { GetDriverTeamResult } from '@core/racing/application/use-cases/GetDriverTeamUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { GetDriverTeamOutputDTO } from '../dtos/GetDriverTeamOutputDTO'; export class DriverTeamPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamDetailsPresenter.ts b/apps/api/src/domain/team/presenters/TeamDetailsPresenter.ts index bc2df8c24..65c857e59 100644 --- a/apps/api/src/domain/team/presenters/TeamDetailsPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamDetailsPresenter.ts @@ -1,5 +1,5 @@ import type { GetTeamDetailsResult } from '@core/racing/application/use-cases/GetTeamDetailsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { GetTeamDetailsOutputDTO } from '../dtos/GetTeamDetailsOutputDTO'; export class TeamDetailsPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamJoinRequestsPresenter.ts b/apps/api/src/domain/team/presenters/TeamJoinRequestsPresenter.ts index 360536af1..8d4c9428e 100644 --- a/apps/api/src/domain/team/presenters/TeamJoinRequestsPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamJoinRequestsPresenter.ts @@ -1,5 +1,5 @@ import type { GetTeamJoinRequestsResult } from '@core/racing/application/use-cases/GetTeamJoinRequestsUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { GetTeamJoinRequestsOutputDTO } from '../dtos/GetTeamJoinRequestsOutputDTO'; export class TeamJoinRequestsPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamMembersPresenter.ts b/apps/api/src/domain/team/presenters/TeamMembersPresenter.ts index 68bc103dd..750ff25bd 100644 --- a/apps/api/src/domain/team/presenters/TeamMembersPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamMembersPresenter.ts @@ -1,5 +1,5 @@ import type { GetTeamMembersResult } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { GetTeamMembersOutputDTO } from '../dtos/GetTeamMembersOutputDTO'; export class TeamMembersPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamMembershipPresenter.ts b/apps/api/src/domain/team/presenters/TeamMembershipPresenter.ts index 684a3fdcf..8231c7d08 100644 --- a/apps/api/src/domain/team/presenters/TeamMembershipPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamMembershipPresenter.ts @@ -1,5 +1,5 @@ import type { GetTeamMembershipResult } from '@core/racing/application/use-cases/GetTeamMembershipUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { GetTeamMembershipOutputDTO } from '../dtos/GetTeamMembershipOutputDTO'; export class TeamMembershipPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamsLeaderboardPresenter.ts b/apps/api/src/domain/team/presenters/TeamsLeaderboardPresenter.ts index 400fe66fd..d175f63c1 100644 --- a/apps/api/src/domain/team/presenters/TeamsLeaderboardPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamsLeaderboardPresenter.ts @@ -1,5 +1,5 @@ import type { GetTeamsLeaderboardResult } from '@core/racing/application/use-cases/GetTeamsLeaderboardUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { GetTeamsLeaderboardOutputDTO } from '../dtos/GetTeamsLeaderboardOutputDTO'; export class TeamsLeaderboardPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/UpdateTeamPresenter.ts b/apps/api/src/domain/team/presenters/UpdateTeamPresenter.ts index 75b3b9be8..aef6797c4 100644 --- a/apps/api/src/domain/team/presenters/UpdateTeamPresenter.ts +++ b/apps/api/src/domain/team/presenters/UpdateTeamPresenter.ts @@ -1,5 +1,5 @@ import type { UpdateTeamResult } from '@core/racing/application/use-cases/UpdateTeamUseCase'; -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import type { UpdateTeamOutputDTO } from '../dtos/UpdateTeamOutputDTO'; export class UpdateTeamPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts index f8de747bf..fd9393986 100644 --- a/apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { InMemoryAchievementRepository } from '@adapters/identity/persistence/inmemory/InMemoryAchievementRepository'; diff --git a/apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts index 73c9cbb5c..3d02f42b6 100644 --- a/apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts @@ -2,11 +2,11 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; -import type { IPageViewRepository } from '@core/analytics/application/repositories/PageViewRepository'; -import type { IAnalyticsSnapshotRepository } from '@core/analytics/domain/repositories/AnalyticsSnapshotRepository'; -import type { IEngagementRepository } from '@core/analytics/domain/repositories/EngagementRepository'; +import type { PageViewRepository } from '@core/analytics/application/repositories/PageViewRepository'; +import type { AnalyticsSnapshotRepository } from '@core/analytics/domain/repositories/AnalyticsSnapshotRepository'; +import type { EngagementRepository } from '@core/analytics/domain/repositories/EngagementRepository'; import { InMemoryAnalyticsSnapshotRepository } from '@adapters/analytics/persistence/inmemory/InMemoryAnalyticsSnapshotRepository'; import { InMemoryEngagementRepository } from '@adapters/analytics/persistence/inmemory/InMemoryEngagementRepository'; @@ -23,17 +23,17 @@ import { providers: [ { provide: ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IPageViewRepository => new InMemoryPageViewRepository(logger), + useFactory: (logger: Logger): PageViewRepository => new InMemoryPageViewRepository(logger), inject: ['Logger'], }, { provide: ANALYTICS_ENGAGEMENT_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IEngagementRepository => new InMemoryEngagementRepository(logger), + useFactory: (logger: Logger): EngagementRepository => new InMemoryEngagementRepository(logger), inject: ['Logger'], }, { provide: ANALYTICS_SNAPSHOT_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IAnalyticsSnapshotRepository => new InMemoryAnalyticsSnapshotRepository(logger), + useFactory: (logger: Logger): AnalyticsSnapshotRepository => new InMemoryAnalyticsSnapshotRepository(logger), inject: ['Logger'], }, ], diff --git a/apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts index 6c545eed5..9cb9ca087 100644 --- a/apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts @@ -3,8 +3,8 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; import type { StoredUser } from '@core/identity/domain/repositories/UserRepository'; -import type { IPasswordHashingService } from '@core/identity/domain/services/PasswordHashingService'; -import type { Logger } from '@core/shared/application/Logger'; +import type { PasswordHashingService } from '@core/identity/domain/services/PasswordHashingService'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { InMemoryAuthRepository } from '@adapters/identity/persistence/inmemory/InMemoryAuthRepository'; import { InMemoryCompanyRepository } from '@adapters/identity/persistence/inmemory/InMemoryCompanyRepository'; @@ -36,7 +36,7 @@ import { AUTH_REPOSITORY_TOKEN, COMPANY_REPOSITORY_TOKEN, MAGIC_LINK_REPOSITORY_ }, { provide: AUTH_REPOSITORY_TOKEN, - useFactory: (userRepository: InMemoryUserRepository, passwordHashingService: IPasswordHashingService, logger: Logger) => + useFactory: (userRepository: InMemoryUserRepository, passwordHashingService: PasswordHashingService, logger: Logger) => new InMemoryAuthRepository(userRepository, passwordHashingService, logger), inject: [USER_REPOSITORY_TOKEN, PASSWORD_HASHING_SERVICE_TOKEN, 'Logger'], }, diff --git a/apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts index c208e5884..704863495 100644 --- a/apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import type { IAvatarGenerationRepository } from '@core/media/domain/repositories/AvatarGenerationRepository'; import type { IAvatarRepository } from '@core/media/domain/repositories/AvatarRepository'; diff --git a/apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts index f81598fcd..be0e20c89 100644 --- a/apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import type { NotificationGatewayRegistry } from '@core/notifications/application/ports/NotificationGateway'; import type { NotificationService } from '@core/notifications/application/ports/NotificationService'; diff --git a/apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts index 08b9488ca..2b98c420c 100644 --- a/apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import type { IMemberPaymentRepository, diff --git a/apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts index 8c80a4056..78e58ec94 100644 --- a/apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts @@ -2,31 +2,31 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; -import type { IDriverRepository } from '@core/racing/domain/repositories/DriverRepository'; -import type { IDriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; -import type { IGameRepository } from '@core/racing/domain/repositories/GameRepository'; -import type { ILeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; -import type { ILeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; -import type { ILeagueScoringConfigRepository } from '@core/racing/domain/repositories/LeagueScoringConfigRepository'; -import type { ILeagueWalletRepository } from '@core/racing/domain/repositories/LeagueWalletRepository'; -import type { IMediaRepository } from '@core/racing/domain/repositories/MediaRepository'; -import type { IPenaltyRepository } from '@core/racing/domain/repositories/PenaltyRepository'; -import type { IProtestRepository } from '@core/racing/domain/repositories/ProtestRepository'; -import type { IRaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; -import type { IRaceRepository } from '@core/racing/domain/repositories/RaceRepository'; -import type { IResultRepository } from '@core/racing/domain/repositories/ResultRepository'; -import type { ISeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; -import type { ISeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; -import type { ISponsorRepository } from '@core/racing/domain/repositories/SponsorRepository'; -import type { ISponsorshipPricingRepository } from '@core/racing/domain/repositories/SponsorshipPricingRepository'; -import type { ISponsorshipRequestRepository } from '@core/racing/domain/repositories/SponsorshipRequestRepository'; -import type { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; -import type { ITeamMembershipRepository } from '@core/racing/domain/repositories/TeamMembershipRepository'; -import type { ITeamRepository } from '@core/racing/domain/repositories/TeamRepository'; -import type { ITeamStatsRepository } from '@core/racing/domain/repositories/TeamStatsRepository'; -import type { ITransactionRepository } from '@core/racing/domain/repositories/TransactionRepository'; +import type { DriverRepository } from '@core/racing/domain/repositories/DriverRepository'; +import type { DriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; +import type { GameRepository } from '@core/racing/domain/repositories/GameRepository'; +import type { LeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; +import type { LeagueScoringConfigRepository } from '@core/racing/domain/repositories/LeagueScoringConfigRepository'; +import type { LeagueWalletRepository } from '@core/racing/domain/repositories/LeagueWalletRepository'; +import type { MediaRepository } from '@core/racing/domain/repositories/MediaRepository'; +import type { PenaltyRepository } from '@core/racing/domain/repositories/PenaltyRepository'; +import type { ProtestRepository } from '@core/racing/domain/repositories/ProtestRepository'; +import type { RaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '@core/racing/domain/repositories/RaceRepository'; +import type { ResultRepository } from '@core/racing/domain/repositories/ResultRepository'; +import type { SeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; +import type { SeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; +import type { SponsorRepository } from '@core/racing/domain/repositories/SponsorRepository'; +import type { SponsorshipPricingRepository } from '@core/racing/domain/repositories/SponsorshipPricingRepository'; +import type { SponsorshipRequestRepository } from '@core/racing/domain/repositories/SponsorshipRequestRepository'; +import type { StandingRepository } from '@core/racing/domain/repositories/StandingRepository'; +import type { TeamMembershipRepository } from '@core/racing/domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '@core/racing/domain/repositories/TeamRepository'; +import type { TeamStatsRepository } from '@core/racing/domain/repositories/TeamStatsRepository'; +import type { TransactionRepository } from '@core/racing/domain/repositories/TransactionRepository'; import { getPointsSystems } from '@adapters/bootstrap/PointsSystems'; @@ -83,22 +83,22 @@ export const MEDIA_REPOSITORY_TOKEN = 'IMediaRepository'; providers: [ { provide: DRIVER_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IDriverRepository => new InMemoryDriverRepository(logger), + useFactory: (logger: Logger): DriverRepository => new InMemoryDriverRepository(logger), inject: ['Logger'], }, { provide: LEAGUE_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ILeagueRepository => new InMemoryLeagueRepository(logger), + useFactory: (logger: Logger): LeagueRepository => new InMemoryLeagueRepository(logger), inject: ['Logger'], }, { provide: RACE_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IRaceRepository => new InMemoryRaceRepository(logger), + useFactory: (logger: Logger): RaceRepository => new InMemoryRaceRepository(logger), inject: ['Logger'], }, { provide: RESULT_REPOSITORY_TOKEN, - useFactory: (logger: Logger, raceRepo: IRaceRepository): IResultRepository => + useFactory: (logger: Logger, raceRepo: RaceRepository): ResultRepository => new InMemoryResultRepository(logger, raceRepo), inject: ['Logger', RACE_REPOSITORY_TOKEN], }, @@ -106,100 +106,100 @@ export const MEDIA_REPOSITORY_TOKEN = 'IMediaRepository'; provide: STANDING_REPOSITORY_TOKEN, useFactory: ( logger: Logger, - resultRepo: IResultRepository, - raceRepo: IRaceRepository, - leagueRepo: ILeagueRepository, - ): IStandingRepository => new InMemoryStandingRepository(logger, getPointsSystems(), resultRepo, raceRepo, leagueRepo), + resultRepo: ResultRepository, + raceRepo: RaceRepository, + leagueRepo: LeagueRepository, + ): StandingRepository => new InMemoryStandingRepository(logger, getPointsSystems(), resultRepo, raceRepo, leagueRepo), inject: ['Logger', RESULT_REPOSITORY_TOKEN, RACE_REPOSITORY_TOKEN, LEAGUE_REPOSITORY_TOKEN], }, { provide: LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ILeagueMembershipRepository => new InMemoryLeagueMembershipRepository(logger), + useFactory: (logger: Logger): LeagueMembershipRepository => new InMemoryLeagueMembershipRepository(logger), inject: ['Logger'], }, { provide: RACE_REGISTRATION_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IRaceRegistrationRepository => new InMemoryRaceRegistrationRepository(logger), + useFactory: (logger: Logger): RaceRegistrationRepository => new InMemoryRaceRegistrationRepository(logger), inject: ['Logger'], }, { provide: TEAM_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ITeamRepository => new InMemoryTeamRepository(logger), + useFactory: (logger: Logger): TeamRepository => new InMemoryTeamRepository(logger), inject: ['Logger'], }, { provide: TEAM_MEMBERSHIP_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ITeamMembershipRepository => new InMemoryTeamMembershipRepository(logger), + useFactory: (logger: Logger): TeamMembershipRepository => new InMemoryTeamMembershipRepository(logger), inject: ['Logger'], }, { provide: PENALTY_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IPenaltyRepository => new InMemoryPenaltyRepository(logger), + useFactory: (logger: Logger): PenaltyRepository => new InMemoryPenaltyRepository(logger), inject: ['Logger'], }, { provide: PROTEST_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IProtestRepository => new InMemoryProtestRepository(logger), + useFactory: (logger: Logger): ProtestRepository => new InMemoryProtestRepository(logger), inject: ['Logger'], }, { provide: SEASON_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ISeasonRepository => new InMemorySeasonRepository(logger), + useFactory: (logger: Logger): SeasonRepository => new InMemorySeasonRepository(logger), inject: ['Logger'], }, { provide: SEASON_SPONSORSHIP_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ISeasonSponsorshipRepository => new InMemorySeasonSponsorshipRepository(logger), + useFactory: (logger: Logger): SeasonSponsorshipRepository => new InMemorySeasonSponsorshipRepository(logger), inject: ['Logger'], }, { provide: LEAGUE_SCORING_CONFIG_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ILeagueScoringConfigRepository => new InMemoryLeagueScoringConfigRepository(logger), + useFactory: (logger: Logger): LeagueScoringConfigRepository => new InMemoryLeagueScoringConfigRepository(logger), inject: ['Logger'], }, { provide: GAME_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IGameRepository => new InMemoryGameRepository(logger), + useFactory: (logger: Logger): GameRepository => new InMemoryGameRepository(logger), inject: ['Logger'], }, { provide: LEAGUE_WALLET_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ILeagueWalletRepository => new InMemoryLeagueWalletRepository(logger), + useFactory: (logger: Logger): LeagueWalletRepository => new InMemoryLeagueWalletRepository(logger), inject: ['Logger'], }, { provide: TRANSACTION_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ITransactionRepository => new InMemoryTransactionRepository(logger), + useFactory: (logger: Logger): TransactionRepository => new InMemoryTransactionRepository(logger), inject: ['Logger'], }, { provide: SPONSOR_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ISponsorRepository => new InMemorySponsorRepository(logger), + useFactory: (logger: Logger): SponsorRepository => new InMemorySponsorRepository(logger), inject: ['Logger'], }, { provide: SPONSORSHIP_PRICING_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ISponsorshipPricingRepository => new InMemorySponsorshipPricingRepository(logger), + useFactory: (logger: Logger): SponsorshipPricingRepository => new InMemorySponsorshipPricingRepository(logger), inject: ['Logger'], }, { provide: SPONSORSHIP_REQUEST_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ISponsorshipRequestRepository => new InMemorySponsorshipRequestRepository(logger), + useFactory: (logger: Logger): SponsorshipRequestRepository => new InMemorySponsorshipRequestRepository(logger), inject: ['Logger'], }, { provide: DRIVER_STATS_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IDriverStatsRepository => new InMemoryDriverStatsRepository(logger), + useFactory: (logger: Logger): DriverStatsRepository => new InMemoryDriverStatsRepository(logger), inject: ['Logger'], }, { provide: TEAM_STATS_REPOSITORY_TOKEN, - useFactory: (logger: Logger): ITeamStatsRepository => new InMemoryTeamStatsRepository(logger), + useFactory: (logger: Logger): TeamStatsRepository => new InMemoryTeamStatsRepository(logger), inject: ['Logger'], }, { provide: MEDIA_REPOSITORY_TOKEN, - useFactory: (logger: Logger): IMediaRepository => new InMemoryMediaRepository(logger), + useFactory: (logger: Logger): MediaRepository => new InMemoryMediaRepository(logger), inject: ['Logger'], }, ], diff --git a/apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts index 98c3b6eb4..927f95511 100644 --- a/apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import type { IFeedRepository } from '@core/social/domain/repositories/FeedRepository'; import type { ISocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; diff --git a/apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts index ba0cd2a2b..784b7043a 100644 --- a/apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts @@ -1,4 +1,4 @@ -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP'; import { Module } from '@nestjs/common'; import { TypeOrmModule, getDataSourceToken } from '@nestjs/typeorm'; import type { DataSource } from 'typeorm'; diff --git a/apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts index fd89b49ca..6ba4f533e 100644 --- a/apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts @@ -6,7 +6,7 @@ import type { NotificationGatewayRegistry } from '@core/notifications/applicatio import type { NotificationService } from '@core/notifications/application/ports/NotificationService'; import type { INotificationPreferenceRepository } from '@core/notifications/domain/repositories/NotificationPreferenceRepository'; import type { INotificationRepository } from '@core/notifications/domain/repositories/NotificationRepository'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; import { NotificationOrmEntity } from '@adapters/notifications/persistence/typeorm/entities/NotificationOrmEntity'; import { NotificationPreferenceOrmEntity } from '@adapters/notifications/persistence/typeorm/entities/NotificationPreferenceOrmEntity'; diff --git a/apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts index 42224fe73..8a1379c62 100644 --- a/apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts @@ -113,7 +113,7 @@ import { TeamMembershipOrmMapper, TeamOrmMapper } from '@adapters/racing/persist import { TeamStatsOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/TeamStatsOrmMapper'; import { getPointsSystems } from '@adapters/bootstrap/PointsSystems'; -import type { Logger } from '@core/shared/application/Logger'; +import type { Logger } from '@core/shared/application/UseCaseOutputPort/UseCaseOutputPort/UseCaseOutputPort_TEMP_TEMP/Logger'; const RACING_POINTS_SYSTEMS_TOKEN = 'RACING_POINTS_SYSTEMS_TOKEN'; diff --git a/tsc_output.txt b/tsc_output.txt new file mode 100644 index 000000000..61b87a869 --- /dev/null +++ b/tsc_output.txt @@ -0,0 +1,195 @@ +adapters/bootstrap/SeedDemoUsers.ts(6,1): error TS6133: 'UserRepository' is declared but its value is never read. +apps/api/src/domain/admin/AdminModule.ts(2,15): error TS2724: '"@core/admin/domain/repositories/AdminUserRepository"' has no exported member named 'IAdminUserRepository'. Did you mean 'AdminUserRepository'? +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(1,15): error TS2724: '"@core/admin/domain/repositories/AdminUserRepository"' has no exported member named 'IAdminUserRepository'. Did you mean 'AdminUserRepository'? +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(76,43): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(77,46): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(78,44): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(79,44): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(84,44): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(89,45): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(93,24): error TS7006: Parameter 'user' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(94,28): error TS7006: Parameter 'role' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(113,39): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(132,42): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts(137,40): error TS7006: Parameter 'u' implicitly has an 'any' type. +apps/api/src/domain/analytics/AnalyticsProviders.ts(1,15): error TS2724: '"@core/analytics/application/repositories/PageViewRepository"' has no exported member named 'IPageViewRepository'. Did you mean 'PageViewRepository'? +apps/api/src/domain/analytics/AnalyticsProviders.ts(2,15): error TS2724: '"@core/analytics/domain/repositories/EngagementRepository"' has no exported member named 'IEngagementRepository'. Did you mean 'EngagementRepository'? +apps/api/src/domain/auth/AuthProviders.ts(11,15): error TS2724: '"@core/identity/domain/ports/MagicLinkNotificationPort"' has no exported member named 'IMagicLinkNotificationPort'. Did you mean 'MagicLinkNotificationPort'? +apps/api/src/domain/auth/AuthProviders.ts(12,15): error TS2724: '"@core/identity/domain/repositories/AuthRepository"' has no exported member named 'IAuthRepository'. Did you mean 'AuthRepository'? +apps/api/src/domain/auth/AuthProviders.ts(13,15): error TS2724: '"@core/identity/domain/repositories/CompanyRepository"' has no exported member named 'ICompanyRepository'. Did you mean 'CompanyRepository'? +apps/api/src/domain/auth/AuthProviders.ts(14,15): error TS2724: '"@core/identity/domain/repositories/MagicLinkRepository"' has no exported member named 'IMagicLinkRepository'. Did you mean 'MagicLinkRepository'? +apps/api/src/domain/auth/AuthProviders.ts(15,15): error TS2724: '"@core/identity/domain/services/PasswordHashingService"' has no exported member named 'IPasswordHashingService'. Did you mean 'PasswordHashingService'? +apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts(2,35): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts(2,35): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/bootstrap/BootstrapProviders.ts(5,10): error TS2724: '"@core/identity/application/use-cases/achievement/CreateAchievementUseCase"' has no exported member named 'IAchievementRepository'. Did you mean 'AchievementRepository'? +apps/api/src/domain/bootstrap/BootstrapProviders.ts(7,15): error TS2724: '"@core/identity/domain/repositories/UserRepository"' has no exported member named 'IUserRepository'. Did you mean 'UserRepository'? +apps/api/src/domain/bootstrap/RacingSeed.test.ts(227,26): error TS2345: Argument of type 'PenaltyId[]' is not assignable to parameter of type 'string[]'. + Type 'PenaltyId' is not assignable to type 'string'. +apps/api/src/domain/dashboard/DashboardProviders.ts(4,10): error TS2724: '"@core/racing/domain/repositories/DriverRepository"' has no exported member named 'IDriverRepository'. Did you mean 'DriverRepository'? +apps/api/src/domain/dashboard/DashboardProviders.ts(5,10): error TS2724: '"@core/racing/domain/repositories/LeagueMembershipRepository"' has no exported member named 'ILeagueMembershipRepository'. Did you mean 'LeagueMembershipRepository'? +apps/api/src/domain/dashboard/DashboardProviders.ts(6,10): error TS2724: '"@core/racing/domain/repositories/LeagueRepository"' has no exported member named 'ILeagueRepository'. Did you mean 'LeagueRepository'? +apps/api/src/domain/dashboard/DashboardProviders.ts(7,10): error TS2724: '"@core/racing/domain/repositories/RaceRegistrationRepository"' has no exported member named 'IRaceRegistrationRepository'. Did you mean 'RaceRegistrationRepository'? +apps/api/src/domain/dashboard/DashboardProviders.ts(8,10): error TS2724: '"@core/racing/domain/repositories/RaceRepository"' has no exported member named 'IRaceRepository'. Did you mean 'RaceRepository'? +apps/api/src/domain/dashboard/DashboardProviders.ts(9,10): error TS2724: '"@core/racing/domain/repositories/ResultRepository"' has no exported member named 'IResultRepository'. Did you mean 'ResultRepository'? +apps/api/src/domain/dashboard/DashboardProviders.ts(10,10): error TS2724: '"@core/racing/domain/repositories/StandingRepository"' has no exported member named 'IStandingRepository'. Did you mean 'StandingRepository'? +apps/api/src/domain/dashboard/DashboardProviders.ts(11,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/dashboard/DashboardProviders.ts(12,10): error TS2724: '"@core/social/domain/repositories/FeedRepository"' has no exported member named 'IFeedRepository'. Did you mean 'FeedRepository'? +apps/api/src/domain/dashboard/DashboardProviders.ts(13,10): error TS2724: '"@core/social/domain/repositories/SocialGraphRepository"' has no exported member named 'ISocialGraphRepository'. Did you mean 'SocialGraphRepository'? +apps/api/src/domain/dashboard/DashboardService.ts(7,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/driver/DriverProviders.ts(6,10): error TS2724: '"@core/racing/domain/repositories/DriverRepository"' has no exported member named 'IDriverRepository'. Did you mean 'DriverRepository'? +apps/api/src/domain/driver/DriverProviders.ts(7,10): error TS2724: '"@core/racing/domain/repositories/LiveryRepository"' has no exported member named 'ILiveryRepository'. Did you mean 'LiveryRepository'? +apps/api/src/domain/driver/DriverProviders.ts(8,10): error TS2724: '"@core/racing/domain/repositories/RaceRegistrationRepository"' has no exported member named 'IRaceRegistrationRepository'. Did you mean 'RaceRegistrationRepository'? +apps/api/src/domain/driver/DriverProviders.ts(9,15): error TS2724: '"@core/racing/domain/repositories/ResultRepository"' has no exported member named 'IResultRepository'. Did you mean 'ResultRepository'? +apps/api/src/domain/driver/DriverProviders.ts(10,15): error TS2724: '"@core/racing/domain/repositories/StandingRepository"' has no exported member named 'IStandingRepository'. Did you mean 'StandingRepository'? +apps/api/src/domain/driver/DriverProviders.ts(11,15): error TS2724: '"@core/racing/domain/repositories/TeamMembershipRepository"' has no exported member named 'ITeamMembershipRepository'. Did you mean 'TeamMembershipRepository'? +apps/api/src/domain/driver/DriverProviders.ts(12,15): error TS2724: '"@core/racing/domain/repositories/TeamRepository"' has no exported member named 'ITeamRepository'. Did you mean 'TeamRepository'? +apps/api/src/domain/driver/DriverProviders.ts(14,15): error TS2724: '"@core/social/domain/repositories/SocialGraphRepository"' has no exported member named 'ISocialGraphRepository'. Did you mean 'SocialGraphRepository'? +apps/api/src/domain/driver/DriverProviders.ts(40,10): error TS2724: '"@core/racing/domain/repositories/DriverStatsRepository"' has no exported member named 'IDriverStatsRepository'. Did you mean 'DriverStatsRepository'? +apps/api/src/domain/driver/DriverProviders.ts(42,15): error TS2724: '"@core/racing/application/use-cases/DriverStatsUseCase"' has no exported member named 'IDriverStatsUseCase'. Did you mean 'DriverStatsUseCase'? +apps/api/src/domain/driver/DriverProviders.ts(43,15): error TS2724: '"@core/racing/application/use-cases/RankingUseCase"' has no exported member named 'IRankingUseCase'. Did you mean 'RankingUseCase'? +apps/api/src/domain/driver/DriverProviders.ts(167,14): error TS2552: Cannot find name 'RankingUseCase'. Did you mean 'IRankingUseCase'? +apps/api/src/domain/driver/DriverProviders.ts(176,14): error TS2552: Cannot find name 'DriverStatsUseCase'. Did you mean 'IDriverStatsUseCase'? +apps/api/src/domain/driver/presenters/DriverPresenter.ts(4,15): error TS2724: '"@core/racing/domain/repositories/DriverStatsRepository"' has no exported member named 'IDriverStatsRepository'. Did you mean 'DriverStatsRepository'? +apps/api/src/domain/league/LeagueProviders.ts(8,15): error TS2724: '"@core/racing/domain/repositories/DriverRepository"' has no exported member named 'IDriverRepository'. Did you mean 'DriverRepository'? +apps/api/src/domain/league/LeagueProviders.ts(9,15): error TS2724: '"@core/racing/domain/repositories/LeagueMembershipRepository"' has no exported member named 'ILeagueMembershipRepository'. Did you mean 'LeagueMembershipRepository'? +apps/api/src/domain/league/LeagueProviders.ts(10,15): error TS2724: '"@core/racing/domain/repositories/LeagueRepository"' has no exported member named 'ILeagueRepository'. Did you mean 'LeagueRepository'? +apps/api/src/domain/league/LeagueProviders.ts(11,15): error TS2724: '"@core/racing/domain/repositories/ProtestRepository"' has no exported member named 'IProtestRepository'. Did you mean 'ProtestRepository'? +apps/api/src/domain/league/LeagueProviders.ts(12,15): error TS2724: '"@core/racing/domain/repositories/RaceRepository"' has no exported member named 'IRaceRepository'. Did you mean 'RaceRepository'? +apps/api/src/domain/league/LeagueProviders.ts(13,15): error TS2724: '"@core/racing/domain/repositories/SeasonRepository"' has no exported member named 'ISeasonRepository'. Did you mean 'SeasonRepository'? +apps/api/src/domain/league/LeagueProviders.ts(14,15): error TS2724: '"@core/racing/domain/repositories/SeasonSponsorshipRepository"' has no exported member named 'ISeasonSponsorshipRepository'. Did you mean 'SeasonSponsorshipRepository'? +apps/api/src/domain/league/LeagueProviders.ts(15,15): error TS2724: '"@core/racing/domain/repositories/StandingRepository"' has no exported member named 'IStandingRepository'. Did you mean 'StandingRepository'? +apps/api/src/domain/league/LeagueProviders.ts(16,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/league/LeagueProviders.ts(23,15): error TS2724: '"@core/racing/domain/repositories/LeagueWalletRepository"' has no exported member named 'ILeagueWalletRepository'. Did you mean 'LeagueWalletRepository'? +apps/api/src/domain/league/LeagueProviders.ts(24,15): error TS2724: '"@core/racing/domain/repositories/TransactionRepository"' has no exported member named 'ITransactionRepository'. Did you mean 'TransactionRepository'? +apps/api/src/domain/league/LeagueProviders.ts(218,93): error TS2694: Namespace '"/Users/marcmintel/Projects/gridpilot/core/racing/domain/repositories/LeagueScoringConfigRepository"' has no exported member 'ILeagueScoringConfigRepository'. +apps/api/src/domain/league/LeagueProviders.ts(219,75): error TS2694: Namespace '"/Users/marcmintel/Projects/gridpilot/core/racing/domain/repositories/GameRepository"' has no exported member 'IGameRepository'. +apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts(3,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts(3,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts(1,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/media/MediaController.ts(3,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/media/MediaProviders.ts(7,10): error TS2724: '"@core/media/domain/repositories/AvatarGenerationRepository"' has no exported member named 'IAvatarGenerationRepository'. Did you mean 'AvatarGenerationRepository'? +apps/api/src/domain/media/MediaProviders.ts(8,10): error TS2724: '"@core/media/domain/repositories/AvatarRepository"' has no exported member named 'IAvatarRepository'. Did you mean 'AvatarRepository'? +apps/api/src/domain/media/MediaProviders.ts(9,10): error TS2724: '"@core/media/domain/repositories/MediaRepository"' has no exported member named 'IMediaRepository'. Did you mean 'MediaRepository'? +apps/api/src/domain/notifications/NotificationsProviders.ts(5,10): error TS2724: '"@core/notifications/domain/repositories/NotificationRepository"' has no exported member named 'INotificationRepository'. Did you mean 'NotificationRepository'? +apps/api/src/domain/notifications/NotificationsProviders.ts(6,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/payments/PaymentsProviders.ts(4,15): error TS2724: '"@core/payments/domain/repositories/MembershipFeeRepository"' has no exported member named 'IMemberPaymentRepository'. Did you mean 'MemberPaymentRepository'? +apps/api/src/domain/payments/PaymentsProviders.ts(4,41): error TS2724: '"@core/payments/domain/repositories/MembershipFeeRepository"' has no exported member named 'IMembershipFeeRepository'. Did you mean 'MembershipFeeRepository'? +apps/api/src/domain/payments/PaymentsProviders.ts(5,15): error TS2724: '"@core/payments/domain/repositories/PaymentRepository"' has no exported member named 'IPaymentRepository'. Did you mean 'PaymentRepository'? +apps/api/src/domain/payments/PaymentsProviders.ts(6,15): error TS2724: '"@core/payments/domain/repositories/PrizeRepository"' has no exported member named 'IPrizeRepository'. Did you mean 'PrizeRepository'? +apps/api/src/domain/payments/PaymentsProviders.ts(7,15): error TS2724: '"@core/payments/domain/repositories/WalletRepository"' has no exported member named 'ITransactionRepository'. Did you mean 'TransactionRepository'? +apps/api/src/domain/payments/PaymentsProviders.ts(7,39): error TS2724: '"@core/payments/domain/repositories/WalletRepository"' has no exported member named 'IWalletRepository'. Did you mean 'WalletRepository'? +apps/api/src/domain/payments/PaymentsService.ts(1,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts(2,40): error TS2307: Cannot find module '@core/shared/application' or its corresponding type declarations. +apps/api/src/domain/protests/ProtestsProviders.ts(4,15): error TS2724: '"@core/racing/domain/repositories/LeagueMembershipRepository"' has no exported member named 'ILeagueMembershipRepository'. Did you mean 'LeagueMembershipRepository'? +apps/api/src/domain/protests/ProtestsProviders.ts(5,15): error TS2724: '"@core/racing/domain/repositories/ProtestRepository"' has no exported member named 'IProtestRepository'. Did you mean 'ProtestRepository'? +apps/api/src/domain/protests/ProtestsProviders.ts(6,15): error TS2724: '"@core/racing/domain/repositories/RaceRepository"' has no exported member named 'IRaceRepository'. Did you mean 'RaceRepository'? +apps/api/src/domain/protests/ProtestsProviders.ts(7,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/protests/ProtestsService.test.ts(6,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/protests/ProtestsService.ts(1,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/race/presenters/RaceDetailPresenter.ts(2,15): error TS2724: '"@core/racing/application/ports/ImageServicePort"' has no exported member named 'IImageServicePort'. Did you mean 'ImageServicePort'? +apps/api/src/domain/race/presenters/RacePenaltiesPresenter.ts(15,74): error TS2352: Conversion of type '{ id: PenaltyId; driverId: string; type: string; value: number; reason: string; issuedBy: string; issuedAt: string; notes: string | undefined; }' to type 'RacePenaltyDTO' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. + Types of property 'id' are incompatible. + Type 'PenaltyId' is not comparable to type 'string'. +apps/api/src/domain/race/presenters/RaceResultsDetailPresenter.ts(1,15): error TS2724: '"@core/racing/application/ports/ImageServicePort"' has no exported member named 'IImageServicePort'. Did you mean 'ImageServicePort'? +apps/api/src/domain/race/RaceProviders.ts(5,15): error TS2724: '"@core/racing/domain/repositories/DriverRepository"' has no exported member named 'IDriverRepository'. Did you mean 'DriverRepository'? +apps/api/src/domain/race/RaceProviders.ts(6,15): error TS2724: '"@core/racing/domain/repositories/LeagueMembershipRepository"' has no exported member named 'ILeagueMembershipRepository'. Did you mean 'LeagueMembershipRepository'? +apps/api/src/domain/race/RaceProviders.ts(7,15): error TS2724: '"@core/racing/domain/repositories/LeagueRepository"' has no exported member named 'ILeagueRepository'. Did you mean 'LeagueRepository'? +apps/api/src/domain/race/RaceProviders.ts(8,15): error TS2724: '"@core/racing/domain/repositories/PenaltyRepository"' has no exported member named 'IPenaltyRepository'. Did you mean 'PenaltyRepository'? +apps/api/src/domain/race/RaceProviders.ts(9,15): error TS2724: '"@core/racing/domain/repositories/ProtestRepository"' has no exported member named 'IProtestRepository'. Did you mean 'ProtestRepository'? +apps/api/src/domain/race/RaceProviders.ts(10,15): error TS2724: '"@core/racing/domain/repositories/RaceRegistrationRepository"' has no exported member named 'IRaceRegistrationRepository'. Did you mean 'RaceRegistrationRepository'? +apps/api/src/domain/race/RaceProviders.ts(11,15): error TS2724: '"@core/racing/domain/repositories/RaceRepository"' has no exported member named 'IRaceRepository'. Did you mean 'RaceRepository'? +apps/api/src/domain/race/RaceProviders.ts(12,15): error TS2724: '"@core/racing/domain/repositories/ResultRepository"' has no exported member named 'IResultRepository'. Did you mean 'ResultRepository'? +apps/api/src/domain/race/RaceProviders.ts(13,15): error TS2724: '"@core/racing/domain/repositories/StandingRepository"' has no exported member named 'IStandingRepository'. Did you mean 'StandingRepository'? +apps/api/src/domain/race/RaceProviders.ts(14,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/race/RaceService.ts(11,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/sponsor/SponsorProviders.ts(6,15): error TS2724: '"@core/payments/domain/repositories/PaymentRepository"' has no exported member named 'IPaymentRepository'. Did you mean 'PaymentRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(7,15): error TS2724: '"@core/payments/domain/repositories/WalletRepository"' has no exported member named 'IWalletRepository'. Did you mean 'WalletRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(8,10): error TS2724: '"@core/racing/domain/repositories/LeagueMembershipRepository"' has no exported member named 'ILeagueMembershipRepository'. Did you mean 'LeagueMembershipRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(9,10): error TS2724: '"@core/racing/domain/repositories/LeagueRepository"' has no exported member named 'ILeagueRepository'. Did you mean 'LeagueRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(10,10): error TS2724: '"@core/racing/domain/repositories/LeagueWalletRepository"' has no exported member named 'ILeagueWalletRepository'. Did you mean 'LeagueWalletRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(11,10): error TS2724: '"@core/racing/domain/repositories/RaceRepository"' has no exported member named 'IRaceRepository'. Did you mean 'RaceRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(12,10): error TS2724: '"@core/racing/domain/repositories/SeasonRepository"' has no exported member named 'ISeasonRepository'. Did you mean 'SeasonRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(13,10): error TS2724: '"@core/racing/domain/repositories/SeasonSponsorshipRepository"' has no exported member named 'ISeasonSponsorshipRepository'. Did you mean 'SeasonSponsorshipRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(14,10): error TS2724: '"@core/racing/domain/repositories/SponsorRepository"' has no exported member named 'ISponsorRepository'. Did you mean 'SponsorRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(15,10): error TS2724: '"@core/racing/domain/repositories/SponsorshipPricingRepository"' has no exported member named 'ISponsorshipPricingRepository'. Did you mean 'SponsorshipPricingRepository'? +apps/api/src/domain/sponsor/SponsorProviders.ts(16,10): error TS2724: '"@core/racing/domain/repositories/SponsorshipRequestRepository"' has no exported member named 'ISponsorshipRequestRepository'. Did you mean 'SponsorshipRequestRepository'? +apps/api/src/domain/team/TeamProviders.ts(33,15): error TS2724: '"@core/racing/domain/repositories/DriverRepository"' has no exported member named 'IDriverRepository'. Did you mean 'DriverRepository'? +apps/api/src/domain/team/TeamProviders.ts(34,15): error TS2724: '"@core/racing/domain/repositories/TeamMembershipRepository"' has no exported member named 'ITeamMembershipRepository'. Did you mean 'TeamMembershipRepository'? +apps/api/src/domain/team/TeamProviders.ts(35,15): error TS2724: '"@core/racing/domain/repositories/TeamRepository"' has no exported member named 'ITeamRepository'. Did you mean 'TeamRepository'? +apps/api/src/domain/team/TeamProviders.ts(36,15): error TS2724: '"@core/racing/domain/repositories/TeamStatsRepository"' has no exported member named 'ITeamStatsRepository'. Did you mean 'TeamStatsRepository'? +apps/api/src/domain/team/TeamProviders.ts(37,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/team/TeamService.test.ts(9,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/domain/team/TeamService.ts(14,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/achievement/AchievementPersistenceModule.test.ts(1,15): error TS2724: '"@core/identity/domain/repositories/AchievementRepository"' has no exported member named 'IAchievementRepository'. Did you mean 'AchievementRepository'? +apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts(5,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts(5,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts(7,15): error TS2724: '"@core/analytics/application/repositories/PageViewRepository"' has no exported member named 'IPageViewRepository'. Did you mean 'PageViewRepository'? +apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts(8,15): error TS2724: '"@core/analytics/domain/repositories/AnalyticsSnapshotRepository"' has no exported member named 'IAnalyticsSnapshotRepository'. Did you mean 'AnalyticsSnapshotRepository'? +apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts(9,15): error TS2724: '"@core/analytics/domain/repositories/EngagementRepository"' has no exported member named 'IEngagementRepository'. Did you mean 'EngagementRepository'? +apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts(6,15): error TS2724: '"@core/identity/domain/services/PasswordHashingService"' has no exported member named 'IPasswordHashingService'. Did you mean 'PasswordHashingService'? +apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts(7,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts(5,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts(7,15): error TS2724: '"@core/media/domain/repositories/AvatarGenerationRepository"' has no exported member named 'IAvatarGenerationRepository'. Did you mean 'AvatarGenerationRepository'? +apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts(8,15): error TS2724: '"@core/media/domain/repositories/AvatarRepository"' has no exported member named 'IAvatarRepository'. Did you mean 'AvatarRepository'? +apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts(9,15): error TS2724: '"@core/media/domain/repositories/MediaRepository"' has no exported member named 'IMediaRepository'. Did you mean 'MediaRepository'? +apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts(5,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts(9,15): error TS2724: '"@core/notifications/domain/repositories/NotificationPreferenceRepository"' has no exported member named 'INotificationPreferenceRepository'. Did you mean 'NotificationPreferenceRepository'? +apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts(10,15): error TS2724: '"@core/notifications/domain/repositories/NotificationRepository"' has no exported member named 'INotificationRepository'. Did you mean 'NotificationRepository'? +apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts(5,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts(8,5): error TS2724: '"@core/payments/domain/repositories/MembershipFeeRepository"' has no exported member named 'IMemberPaymentRepository'. Did you mean 'MemberPaymentRepository'? +apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts(9,5): error TS2724: '"@core/payments/domain/repositories/MembershipFeeRepository"' has no exported member named 'IMembershipFeeRepository'. Did you mean 'MembershipFeeRepository'? +apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts(11,15): error TS2724: '"@core/payments/domain/repositories/PaymentRepository"' has no exported member named 'IPaymentRepository'. Did you mean 'PaymentRepository'? +apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts(12,15): error TS2724: '"@core/payments/domain/repositories/PrizeRepository"' has no exported member named 'IPrizeRepository'. Did you mean 'PrizeRepository'? +apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts(13,15): error TS2724: '"@core/payments/domain/repositories/WalletRepository"' has no exported member named 'ITransactionRepository'. Did you mean 'TransactionRepository'? +apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts(13,39): error TS2724: '"@core/payments/domain/repositories/WalletRepository"' has no exported member named 'IWalletRepository'. Did you mean 'WalletRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(5,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(7,15): error TS2724: '"@core/racing/domain/repositories/DriverRepository"' has no exported member named 'IDriverRepository'. Did you mean 'DriverRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(8,15): error TS2724: '"@core/racing/domain/repositories/DriverStatsRepository"' has no exported member named 'IDriverStatsRepository'. Did you mean 'DriverStatsRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(9,15): error TS2724: '"@core/racing/domain/repositories/GameRepository"' has no exported member named 'IGameRepository'. Did you mean 'GameRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(10,15): error TS2724: '"@core/racing/domain/repositories/LeagueMembershipRepository"' has no exported member named 'ILeagueMembershipRepository'. Did you mean 'LeagueMembershipRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(11,15): error TS2724: '"@core/racing/domain/repositories/LeagueRepository"' has no exported member named 'ILeagueRepository'. Did you mean 'LeagueRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(12,15): error TS2724: '"@core/racing/domain/repositories/LeagueScoringConfigRepository"' has no exported member named 'ILeagueScoringConfigRepository'. Did you mean 'LeagueScoringConfigRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(13,15): error TS2724: '"@core/racing/domain/repositories/LeagueWalletRepository"' has no exported member named 'ILeagueWalletRepository'. Did you mean 'LeagueWalletRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(14,15): error TS2724: '"@core/racing/domain/repositories/MediaRepository"' has no exported member named 'IMediaRepository'. Did you mean 'MediaRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(15,15): error TS2724: '"@core/racing/domain/repositories/PenaltyRepository"' has no exported member named 'IPenaltyRepository'. Did you mean 'PenaltyRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(16,15): error TS2724: '"@core/racing/domain/repositories/ProtestRepository"' has no exported member named 'IProtestRepository'. Did you mean 'ProtestRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(17,15): error TS2724: '"@core/racing/domain/repositories/RaceRegistrationRepository"' has no exported member named 'IRaceRegistrationRepository'. Did you mean 'RaceRegistrationRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(18,15): error TS2724: '"@core/racing/domain/repositories/RaceRepository"' has no exported member named 'IRaceRepository'. Did you mean 'RaceRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(19,15): error TS2724: '"@core/racing/domain/repositories/ResultRepository"' has no exported member named 'IResultRepository'. Did you mean 'ResultRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(20,15): error TS2724: '"@core/racing/domain/repositories/SeasonRepository"' has no exported member named 'ISeasonRepository'. Did you mean 'SeasonRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(21,15): error TS2724: '"@core/racing/domain/repositories/SeasonSponsorshipRepository"' has no exported member named 'ISeasonSponsorshipRepository'. Did you mean 'SeasonSponsorshipRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(22,15): error TS2724: '"@core/racing/domain/repositories/SponsorRepository"' has no exported member named 'ISponsorRepository'. Did you mean 'SponsorRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(23,15): error TS2724: '"@core/racing/domain/repositories/SponsorshipPricingRepository"' has no exported member named 'ISponsorshipPricingRepository'. Did you mean 'SponsorshipPricingRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(24,15): error TS2724: '"@core/racing/domain/repositories/SponsorshipRequestRepository"' has no exported member named 'ISponsorshipRequestRepository'. Did you mean 'SponsorshipRequestRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(25,15): error TS2724: '"@core/racing/domain/repositories/StandingRepository"' has no exported member named 'IStandingRepository'. Did you mean 'StandingRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(26,15): error TS2724: '"@core/racing/domain/repositories/TeamMembershipRepository"' has no exported member named 'ITeamMembershipRepository'. Did you mean 'TeamMembershipRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(27,15): error TS2724: '"@core/racing/domain/repositories/TeamRepository"' has no exported member named 'ITeamRepository'. Did you mean 'TeamRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(28,15): error TS2724: '"@core/racing/domain/repositories/TeamStatsRepository"' has no exported member named 'ITeamStatsRepository'. Did you mean 'TeamStatsRepository'? +apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts(29,15): error TS2724: '"@core/racing/domain/repositories/TransactionRepository"' has no exported member named 'ITransactionRepository'. Did you mean 'TransactionRepository'? +apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts(5,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts(7,15): error TS2724: '"@core/social/domain/repositories/FeedRepository"' has no exported member named 'IFeedRepository'. Did you mean 'FeedRepository'? +apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts(8,15): error TS2724: '"@core/social/domain/repositories/SocialGraphRepository"' has no exported member named 'ISocialGraphRepository'. Did you mean 'SocialGraphRepository'? +apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts(1,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts(7,15): error TS2724: '"@core/notifications/domain/repositories/NotificationPreferenceRepository"' has no exported member named 'INotificationPreferenceRepository'. Did you mean 'NotificationPreferenceRepository'? +apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts(8,15): error TS2724: '"@core/notifications/domain/repositories/NotificationRepository"' has no exported member named 'INotificationRepository'. Did you mean 'NotificationRepository'? +apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts(9,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts(7,15): error TS2724: '"@core/payments/domain/repositories/MembershipFeeRepository"' has no exported member named 'IMemberPaymentRepository'. Did you mean 'MemberPaymentRepository'? +apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts(7,41): error TS2724: '"@core/payments/domain/repositories/MembershipFeeRepository"' has no exported member named 'IMembershipFeeRepository'. Did you mean 'MembershipFeeRepository'? +apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts(8,15): error TS2724: '"@core/payments/domain/repositories/PaymentRepository"' has no exported member named 'IPaymentRepository'. Did you mean 'PaymentRepository'? +apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts(9,15): error TS2724: '"@core/payments/domain/repositories/PrizeRepository"' has no exported member named 'IPrizeRepository'. Did you mean 'PrizeRepository'? +apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts(10,15): error TS2724: '"@core/payments/domain/repositories/WalletRepository"' has no exported member named 'ITransactionRepository'. Did you mean 'TransactionRepository'? +apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts(10,39): error TS2724: '"@core/payments/domain/repositories/WalletRepository"' has no exported member named 'IWalletRepository'. Did you mean 'WalletRepository'? +apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts(116,29): error TS2307: Cannot find module '@core/shared/application/Logger' or its corresponding type declarations. +apps/api/src/persistence/social/PostgresSocialPersistence.integration.test.ts(13,15): error TS2724: '"@core/social/domain/repositories/FeedRepository"' has no exported member named 'IFeedRepository'. Did you mean 'FeedRepository'? +apps/api/src/persistence/social/PostgresSocialPersistence.integration.test.ts(14,15): error TS2724: '"@core/social/domain/repositories/SocialGraphRepository"' has no exported member named 'ISocialGraphRepository'. Did you mean 'SocialGraphRepository'?